From: Michael Buesch <mb@bu3sch.de>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: bcm43xx-dev@lists.berlios.de, netdev@vger.kernel.org,
Stefano Brivio <st3@riseup.net>
Subject: Re: netdev tx timeouts
Date: Wed, 13 Sep 2006 15:49:23 +0200 [thread overview]
Message-ID: <200609131549.23764.mb@bu3sch.de> (raw)
In-Reply-To: <450806D1.4080809@lwfinger.net>
On Wednesday 13 September 2006 15:25, Larry Finger wrote:
> Michael Buesch wrote:
> > On Wednesday 13 September 2006 04:25, Larry Finger wrote:
> >> Michael,
> >>
> >> I still have not gotten a network guru to answer any questions about
> >> synchronize_net, but I have been testing the patch below:
> >
> > I'd say this is racy.
> > Did you test this on SMP?
>
> No - I don't have the hardware.
> >
> >> Index: wireless-2.6/drivers/net/wireless/bcm43xx/bcm43xx_main.c
> >> ===================================================================
> >> --- wireless-2.6.orig/drivers/net/wireless/bcm43xx/bcm43xx_main.c
> >> +++ wireless-2.6/drivers/net/wireless/bcm43xx/bcm43xx_main.c
> >> @@ -3169,8 +3169,8 @@ static void bcm43xx_periodic_work_handle
> >> * be preemtible.
> >> */
> >> mutex_lock(&bcm->mutex);
> >> - netif_stop_queue(bcm->net_dev);
> >> synchronize_net();
> >
> > A TX handler starts on another CPU.
> >
> >> + netif_stop_queue(bcm->net_dev);
> >
> > It's still running... boom.
> >
>
> I see your point, but the current way breaks a UP system! What to do?
Simple. Reading the code of synchronize_net() and
netif_stop_queue() and thinking about why it breaks, instead
of committing bugfixes that only substitute one bug by another. ;)
I'll take a look, too.
--
Greetings Michael.
next prev parent reply other threads:[~2006-09-13 13:50 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-13 2:25 netdev tx timeouts Larry Finger
[not found] ` <45076C00.2000100-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
2006-09-13 12:30 ` Michael Buesch
[not found] ` <200609131430.53820.mb-fseUSCV1ubazQB+pC5nmwQ@public.gmane.org>
2006-09-13 13:25 ` Larry Finger
2006-09-13 13:49 ` Michael Buesch [this message]
2006-09-13 14:12 ` Michael Buesch
2006-09-14 1:23 ` Stephen Hemminger
[not found] ` <20060914102337.137d4591-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2006-09-14 2:04 ` Larry Finger
2006-09-14 2:21 ` Stephen Hemminger
2006-09-14 2:35 ` Larry Finger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200609131549.23764.mb@bu3sch.de \
--to=mb@bu3sch.de \
--cc=Larry.Finger@lwfinger.net \
--cc=bcm43xx-dev@lists.berlios.de \
--cc=netdev@vger.kernel.org \
--cc=st3@riseup.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).