Most recent kernel where this bug did not occur: 2.6.24-rc6 Distribution: fedora rawhide Hardware Environment: T61 Software Environment: Problem Description: Warning appears in the log when NetworkManager tries to initialize wifi - driver works normally NetworkManager: <info> (eth0) supplicant interface is now in state 1 (from 0). NetworkManager: <info> (wlan0) supplicant manager is now in state 1 (from 0). NetworkManager: <info> (eth0) supplicant interface is now in state 2 (from 1). NetworkManager: <info> (wlan0) supplicant interface is now in state 2 (from 1). WARNING: at net/mac80211/rx.c:1486 __ieee80211_rx() Pid: 0, comm: swapper Not tainted 2.6.24-rc6 #8 Call Trace: <IRQ> [<ffffffff88123d89>] :mac80211:__ieee80211_rx+0xc69/0xd30 [<ffffffff812abd86>] _spin_lock_irqsave+0x26/0xa0 [<ffffffff812ac3a5>] _spin_unlock_irqrestore+0x15/0x30 [<ffffffff8815af91>] :iwl3945:iwl_rx_queue_restock+0xd1/0x160 [<ffffffff812abd86>] _spin_lock_irqsave+0x26/0xa0 [<ffffffff88114f7b>] :mac80211:ieee80211_tasklet_handler+0xbb/0x120 [<ffffffff810420a7>] tasklet_action+0x47/0xb0 [<ffffffff81041fb9>] __do_softirq+0x59/0xd0 [<ffffffff8100d5dc>] call_softirq+0x1c/0x30 [<ffffffff8100f975>] do_softirq+0x35/0x90 [<ffffffff81041ee5>] irq_exit+0x85/0x90 [<ffffffff8100fa54>] do_IRQ+0x84/0x100 [<ffffffff8100c931>] ret_from_intr+0x0/0xa <EOI> [<ffffffff811a312f>] acpi_idle_enter_bm+0x272/0x2de [<ffffffff811a3125>] acpi_idle_enter_bm+0x268/0x2de [<ffffffff81230357>] cpuidle_idle_call+0x97/0xd0 [<ffffffff812302c0>] cpuidle_idle_call+0x0/0xd0 [<ffffffff8100b001>] cpu_idle+0x71/0xe0 Steps to reproduce:
That is /* * Drivers are required to align the payload data to a four-byte * boundary, so the last two bits of the address where it starts * may not be set. The header is required to be directly before * the payload data, padding like atheros hardware adds which is * inbetween the 802.11 header and the payload is not supported, * the driver is required to move the 802.11 header further back * in that case. */ hdrlen = ieee80211_get_hdrlen(rx.fc); WARN_ON_ONCE(((unsigned long)(skb->data + hdrlen)) & 3);
It looks like the drivers has been ipdated commits 691ba2346d5b88cec62fe8db0bf336a58a07b926 6feeb8aad7925b4c00f785eac3039c772629b42f