[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201101160259.14404.helmut.schaa@googlemail.com>
Date: Sun, 16 Jan 2011 02:59:14 +0100
From: Helmut Schaa <helmut.schaa@...glemail.com>
To: Ivo Van Doorn <ivdoorn@...il.com>
Cc: Ingo Brunberg <ingo_brunberg@....de>, linux-kernel@...r.kernel.org,
linux-wireless@...r.kernel.org
Subject: Re: BUG in rt2x00lib_txdone() with 2.6.37-rc8
Am Samstag, 15. Januar 2011 schrieb Ivo Van Doorn:
> Hi,
>
> > Just a shot in the dark but since the stack trace shows the newly added
> > watchdog this might be the result of a race between a regular txdone work
> > (mac80211 workqueue) vs the watchdog work (global workqueue).
> >
> > I guess the following situation could happen:
> > A regular tx done work calls rt2x00lib_txdone which first sets entry->skb to
> > NULL, calls the driver specific clear_entry and afterwards increases
> > Q_INDEX_DONE. If the watchdog work calls rt2x00lib_txdone on a different CPU
> > inbetween the skb might be NULL and cause the above oops.
>
> This could be, would be interesting to know if compat-wireless also shows
> this problem. Because the queue refactoring code which should have solved
> these race conditions was added after 2.6.37.
I also guess that this issue would be fixed in compat-wireless due to the queue
refactoring. But I guess that is way too big for a stable kernel :(
Helmut
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists