Reprobing of devices after module load?
Paul B. Mahol
onemda at gmail.com
Mon Nov 21 18:42:12 UTC 2011
On 11/21/11, John Baldwin <jhb at freebsd.org> wrote:
> On Friday, November 18, 2011 11:48:20 am Paul B. Mahol wrote:
>> Is there nice way in FreeBSD to force reprobe of devices for specific
>> driver like it is done when kernel module is loaded (via
>> DRIVER_MODULE(...) stuff)?
> Note that those probes happen for specific buses rather than for specific
> drivers. The routine that does this currently is static
> (devclass_driver_added() in sys/kern/subr_bus.c). What specific problem are
> you trying to solve? You might be able to use BUS_DRIVER_ADDED() or
> device_probe_and_attach() to achieve what you are trying to do.
I have changed NDISulator to load 3rd party *.SYS from userspace
via ioctl on /dev/ndis.
For now i can do reprobe by reloading if_ndis.ko module.
Loading if_ndis.ko ideally should not cause reprobe but reprobe
should be done after ioctl on /dev/ndis.
Perhaps devclass_add_driver from sys/kern/subr_bus can do this?
More information about the freebsd-current