Roman Kurakin wrote: > Maksim Yevmenkin: > >> Dear Hackers, >> >> would anyone object if i change SI_ORDER_MIDDLE in the >> /sys/netgraph/ng_base.c:2994 to say SI_ORDER_THIRD, i.e. >> >> change >> >> DECLARE_MODULE(netgraph, netgraph_mod, SI_SUB_DRIVERS, SI_ORDER_MIDDLE); >> >> to >> >> DECLARE_MODULE(netgraph, netgraph_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); >> >> the reason for this change is that bluetooth device drivers depend on >> netgraph(4) and when both netgraph(4) and bluetooth device driver >> (such as ng_ubt(4)) compiled in the kernel you get a crash. basically >> ng_ubt(4) mod_load callback is called before netgraph(4) mod_load >> callback and ng_findtype() crashes on uninitialized mutex >> (DEVICE_MODULE macro passes SI_SUB_DRIVERS, SI_ORDER_THIRD to the ^^^^^^^^^^^^^^ this should be SI_ORDER_MIDDLE :) >> DECLARE_MODULE). > > I thought this is the task of MODULE_DEPEND. i thought so too :) but it appears to work only when module is _loaded_ (by hand or from /boot/loader.conf), i.e. it does not work if module was compiled in the kernel. > >> option #2 would be to have DEVICE_MODULE_ORDERED macro which accepts >> two extra parameters. >> >> >> and finally option #3 would be to duplicate entire content of the >> DEVICE_MODULE macro in all bluetooth device drivers and specify order >> in DECLARE_MODULE macro. >> >> >> any thoughts? >> >> thanks, >> max >> _______________________________________________ >> freebsd-current_at_freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-current >> To unsubscribe, send any mail to >> "freebsd-current-unsubscribe_at_freebsd.org" > > > >Received on Tue Jan 04 2005 - 21:22:32 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:25 UTC