Re: kqueue for usb_dev

看板FB_current作者時間12年前 (2014/02/27 20:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串14/14 (看更多)
Hi HPS, Your patch did not resolve the kernel panic. I think, we should check knlist_clear() before knlist_destroy(). When a device is lost suddenly, usb_dev notify to a process in usb_fifo_close() and then calls knlist_destroy(). knlist_destroy() clears knlist->kn_lock and knlist->kn_unlock. But, the process that is notified will start over kqueue_scan() after knlist_destroy(). And, in KN_LIST_LOCK(kn), the context will call NULL function (kn->knlist->kn_lock). Regards, Kohji Okuno > On 02/27/14 11:39, Kohji Okuno wrote: >> Hi HPS and John-Mark, >> >> After I changed as the following, the kernel panic does not happen. >> What do you think about this change? >> >> + knlist_clear(&f->selinfo.si_note, 0); >> knlist_destroy(&f->selinfo.si_note); >> >> Regards, >> Kohji Okuno >> > > Can you try the attached patch instead? > > --HPS > _______________________________________________ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
文章代碼(AID): #1J3oZ_FD (FB_current)
討論串 (同標題文章)
文章代碼(AID): #1J3oZ_FD (FB_current)