[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 4 Apr 2007 15:10:07 -0700
From: Stephen Hemminger <shemminger@...ux-foundation.org>
To: Gagan Arneja <gaagaan@...il.com>
Cc: Michael Chan <mchan@...adcom.com>, netdev@...r.kernel.org
Subject: Re: tg3 reset_task question
On Wed, 04 Apr 2007 13:53:47 -0700
Gagan Arneja <gaagaan@...il.com> wrote:
> I like the counting semaphore idea.
>
> --
> Gagan
>
> Michael Chan wrote:
> > On Wed, 2007-04-04 at 13:34 -0700, Gagan Arneja wrote:
> >> Can't this BUG_ON be hit very easily:
> >>
> >> static void tg3_irq_quiesce(struct tg3 *tp)
> >> {
> >> BUG_ON(tp->irq_sync);
> >> ...
> >> }
> >>
> >> tg3_reset_task could easily be racing with another thread, that calls
> >> tg3_full_lock(tp, 1); e.g tg3_change_mtu. Maybe I'm missing something
> >> obvious.
> >>
> >
> > Yes, you're right. Perhaps we should get the rtnl first before
> > tg3_full_lock(), or turn irq_sync into an atomic counter that allows
> > nesting.
When you start reinventing windows locks or the BKL, you know
you are going down the wrong path
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists