Re: [bisected] Re: Module removal-related regression?

Dmitry Torokhov
2017-09-09T20:59:31Z

On September 9, 2017 1:17:26 PM PDT, Jakub Kicinski <kubakici@wp.pl> wrote:
>On Sat, 9 Sep 2017 12:55:51 -0700, Dmitry Torokhov wrote:
>> On Sat, Sep 9, 2017 at 12:27 PM, Jakub Kicinski <kubakici@wp.pl>
>wrote:
>> > On Sat, 9 Sep 2017 19:41:21 +0200, Jakub Kicinski wrote:
>> >> Hi!
>> >>
>> >> I'm having trouble with modules on linux/master. rmmod succeeds
>but the
>> >> module is still loaded and the refcount goes to 1:
>> >>
>> >> #rmmod nfp; insmod ./src/nfp.ko nfp_pf_netdev=0 ; \
>> >> /opt/netronome/bin/nfp-hwinfo -n 2 assembly.partno \
>> >> lsmod | grep nfp; \
>> >> rmmod nfp; \
>> >> lsmod | grep nfp
>> >> nfp 249856 0
>> >> nfp 200704 1
>> >>
>> >> If I rmmod again the module will be actually unloaded. The user
>space
>> >> is mostly Ubuntu 14.04. Has anyone seen this? I'm trying to
>bisect
>> >> now...
>> >
>> > Got 'em!
>> >
>> > commit 1455cf8dbfd06aa7651dcfccbadb7a093944ca65 (HEAD,
>refs/bisect/bad)
>> > Author: Dmitry Torokhov <dmitry.torokhov@gmail.com>
>> > Date: Wed Jul 19 17:24:30 2017 -0700
>> >
>> > driver core: emit uevents when device is bound to a driver
>>
>> Does it happen with all modules or only nfp one?
>>
>> It seems to work here:
>>
>> dtor@dtor-glaptop3:~ $ lsmod | grep psmouse
>> psmouse 135168 0
>> dtor@dtor-glaptop3:~ $ sudo rmmod psmouse
>> dtor@dtor-glaptop3:~ $ lsmod | grep psmouse
>> dtor@dtor-glaptop3:~ $ sudo modprobe psmouse
>
>It looks like the driver is actually reloaded. The driver used to
>return EPROBE_DEFER, but I think it doesn't any more (rebuilding the
>kernel to test that right now).
>
>Could the uevent on unbind tickle Ubuntu 14.04's udev or somehow
>else cause the driver to be loaded again?

It depends on how silly the udev rules are, but yes, this can definitely happen.

Thanks.

--
Dmitry