Bug 11648 - rtl8150 module does not unload when interface is up
Summary: rtl8150 module does not unload when interface is up
Status: CLOSED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Network (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_network@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-25 13:52 UTC by Mike Frysinger
Modified: 2012-05-22 14:36 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.26.5
Subsystem:
Regression: No
Bisected commit-id:


Attachments
my kernel config (58.09 KB, text/plain)
2008-09-25 13:53 UTC, Mike Frysinger
Details
verbose lsusb output for rtl8150 (2.38 KB, text/plain)
2008-09-25 13:53 UTC, Mike Frysinger
Details

Description Mike Frysinger 2008-09-25 13:52:43 UTC
using stock kernel.org 2.6.26.5 on a Dell Latitude D820 laptop (running Gentoo, but shouldnt matter).

i'm using a RTL8150 USB NIC with the driver built as a module:
ID 0bda:8150 Realtek Semiconductor Corp. RTL8150 Fast Ethernet Adapter

if you load the module, then bring up the interface by doing something simple like `ifconfig eth1 192.168.0.1`, then do `rmmod rtl8150`, the driver goes to lunch and forgets to come back.  top shows ksoftirqd processing a lot and rmmod using 100% cpu.  trying to strace rmmod shows nothing, so something in the kernel is processing a lot on its behalf ...
Comment 1 Mike Frysinger 2008-09-25 13:53:09 UTC
Created attachment 18049 [details]
my kernel config
Comment 2 Mike Frysinger 2008-09-25 13:53:29 UTC
Created attachment 18050 [details]
verbose lsusb output for rtl8150
Comment 3 Anonymous Emailer 2008-10-02 17:38:34 UTC
Reply-To: akpm@linux-foundation.org


(switched to email.  Please respond via emailed reply-to-all, not via the
bugzilla web interface).

On Thu, 25 Sep 2008 13:52:44 -0700 (PDT)
bugme-daemon@bugzilla.kernel.org wrote:

> http://bugzilla.kernel.org/show_bug.cgi?id=11648
> 
>            Summary: rtl8150 module does not unload when interface is up
>            Product: Drivers
>            Version: 2.5
>      KernelVersion: 2.6.26.5
>           Platform: All
>         OS/Version: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: Network
>         AssignedTo: jgarzik@pobox.com
>         ReportedBy: vapier@gentoo.org
> 
> 
> using stock kernel.org 2.6.26.5 on a Dell Latitude D820 laptop (running
> Gentoo,
> but shouldnt matter).
> 
> i'm using a RTL8150 USB NIC with the driver built as a module:
> ID 0bda:8150 Realtek Semiconductor Corp. RTL8150 Fast Ethernet Adapter
> 
> if you load the module, then bring up the interface by doing something simple
> like `ifconfig eth1 192.168.0.1`, then do `rmmod rtl8150`, the driver goes to
> lunch and forgets to come back.  top shows ksoftirqd processing a lot and
> rmmod
> using 100% cpu.  trying to strace rmmod shows nothing, so something in the
> kernel is processing a lot on its behalf ...
> 

I never know who to blame^Wconsult when it comes to USB net drivers.
Comment 4 Alexey Dobriyan 2008-10-03 01:46:34 UTC
Hmm, everybody is doing tasklet_kill() in ->close hook.

Mike, try tasklet_kill(&dev->tl); before unlink_all_urbs() like
pegasus driver is doing.
Comment 5 Mike Frysinger 2008-11-12 23:11:44 UTC
it does not make a difference.  i still get 100% cpu utilization and
an unkillable process.

Note You need to log in before you can comment on or make changes to this bug.