Subject: Re: [PATCH] softmac: Fix WX and association related races

From: Larry Finger <[email-masked]>
Date: Wed, 27 Sep 2006 23:09:26 -0500

Michael Buesch wrote:
> On Wednesday 27 September 2006 18:18, Larry Finger wrote:
>> Michael Buesch wrote:
>>> This fixes some race conditions in the WirelessExtension
>>> handling and association handling code.
>>>
>>> Signed-off-by: Michael Buesch <[email-masked]>
>>>
>>> ---
>> This patch doesn't apply.
> 
> Oh, linville merged stuff on the 25th. That's the day I updated
> my tree to do this patch. But seems like I did it just before
> the merge.
> Who could suspect that linville merges something. :D
> *me runs away*
> 
> Anyway. Here's an updated patch.

NACK this version. It applied correctly, but introduced a new problem. My device occasionally gets 
deauthentication messages from my AP.Preciously, it would do a scan or two, and then reauthenticate. 
After your patch was applied, it never stops scanning.

The "normal" sequence is

kernel: SoftMAC: Received deauthentication packet from 00:14:bf:85:49:fa, but that network is unknown.
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: bcm43xx: set security called, .enabled = 0, .encrypt = 0
kernel: bcm43xx: set security called, .enabled = 0, .encrypt = 0
kernel: bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0
kernel: bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0
kernel: bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Queueing Authentication Request to 00:14:bf:85:49:fa
kernel: SoftMAC: Cannot associate without being authenticated, requested authentication
kernel: SoftMAC: Sent Authentication Request to 00:14:bf:85:49:fa.
kernel: SoftMAC: Open Authentication completed with 00:14:bf:85:49:fa
kernel: SoftMAC: sent association request!
kernel: SoftMAC: generic IE set to dd160050f20101000050f20201000050f20201000050f202
kernel: SoftMAC: Already associating or associated to 00:14:bf:85:49:fa
kernel: SoftMAC: associated!
kernel: bcm43xx: set security called, .active_key = 0, .level = 2, .enabled = 1,

With your patch:

kernel: SoftMAC: Received deauthentication packet from 00:14:bf:85:49:fa, but that network is unknown.
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Unable to find matching network after scan!
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Unable to find matching network after scan!
kernel: SoftMAC: generic IE set to dd160050f20101000050f20201000050f20201000050f202
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Associate: Scanning for networks first.
kernel: SoftMAC: Start scanning with channel: 1
kernel: SoftMAC: Scanning 14 channels
kernel: SoftMAC: Scanning finished
kernel: SoftMAC: Unable to find matching network after scan!
kernel: SoftMAC: generic IE set to dd160050f20101000050f20201000050f20201000050f202

This pattern repeats until the network is brought down and back up.

Larry