diff options
| author | Herbert Xu <herbert@gondor.apana.org.au> | 2004-06-28 19:49:30 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <greg@kroah.com> | 2004-06-28 19:49:30 -0700 |
| commit | 52c190d8dd0d184a239379458045a7a01002ec7d (patch) | |
| tree | 4ff643aec6195095001ce9f32872e02e5e5e68fa /include | |
| parent | 60cfbb5503bf8979a8769d58d5bd976f9f1e12f9 (diff) | |
[PATCH] USB: Fix pegasus_set_multicast lockup in drivers/usb/net/pegasus.c
I strongly recommend that this patch be applied.
Without this patch, running tcpdump on an SMP machine with the
pegasus adapter locks up 9 times out of 10. This is what happens:
CPU0 CPU1
pegasus_start_xmit
netif_stop_queue
pegasus_set_multicast
netif_stop_queue
netif_wake_queue
Which crashes if another packet is sent to pegasus_start_xmit before
the first one is finished.
If there are other drivers doing this, please fix them too.
PS I submitted this to Petkan years ago but he probably lost it.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
