[rt2x00-users] [PATCH 2/4] rt2x00: Move direct access to queue->entries to rt2x00queue.c
Ivo Van Doorn
ivdoorn at gmail.com
Thu Aug 19 10:39:32 UTC 2010
On Thu, Aug 19, 2010 at 12:05 PM, Gertjan van Wingerde
<gwingerde at gmail.com> wrote:
> On 08/19/10 11:12, Ivo van Doorn wrote:
>> All access to queue->entries through the Q_INDEX/Q_INDEX_DONE
>> variables must be done using spinlock protection. It is best
>> to manage this completely from rt2x00queue.c.
>> For safely looping through all entries in the queue, the function
>> rt2x00queue_for_each_entry is added which will walk from from a index
>> range in a safe manner.
>> This also fixes rt2x00usb which walked the entries list from
>> 0 to length to kill each entry (killing entries must be done
>> from Q_INDEX_DONE to Q_INDEX to enforce TX status reporting to
>> occur in the correct order.
>> Signed-off-by: IvDoorn at gmail.com>
> Still puzzled by the locking scheme, but since it is exactly as we had
> it before:
I have tested that this patch was not responsible for the hard-lock I
after applying the previous patch-series. So it might be suspicious,
but it doesn't
cause problems. :)
The other patches from the series will be investigated further by me
later, first I need
to fix some other issues (reassociating and disable/enable radio problems).
> Acked-by: Gertjan van Wingerde <gwingerde at gmail.com>
More information about the users