rcutree tree warning during P2P device support testing

Arend van Spriel arend
Wed Mar 20 14:46:47 PDT 2013


On 03/20/2013 10:29 PM, Johannes Berg wrote:
> On Wed, 2013-03-20 at 22:17 +0100, Arend van Spriel wrote:
>>> Hmm, why would stopping the supplicant cause brcmfmac to unload?? Or are
>>> you saying you first stop the supplicant, which gets you that warning,
>>> and then unload fails?
>>
>> Indeed, upon stopping wpa_supplicant I get the warning. And doing a
>> rmmod from the command line after that fails in the hang.
> 
> Right, ok.
> 
>>>> [ 1634.039095] WARNING: at kernel/rcutree.c:1960
>>>> rcu_process_callbacks+0x469/0x560()
>>>
>>>> [ 1634.133917] Call Trace:
>>>> [ 1634.139833]  [<c1039c92>] warn_slowpath_common+0x72/0xa0
>>>> [ 1634.148659]  [<c10c61f9>] ? rcu_process_callbacks+0x469/0x560
>>>> [ 1634.157914]  [<c10c61f9>] ? rcu_process_callbacks+0x469/0x560
>>>> [ 1634.167121]  [<c1039ce2>] warn_slowpath_null+0x22/0x30
>>>> [ 1634.175725]  [<c10c61f9>] rcu_process_callbacks+0x469/0x560
>>>
>>> Can't say I understand this warning ...
>>>
>>
>> At least we are on the same page then ;-)
> 
> It looks like some rcu head list corruption ... no idea really.
> 

I have now (I think). I did a kfree of the driver's vif structure, which
is container of the wireless_dev and that is still on the rcu head list.

>> The p2p device is already removed upon stopping wpa_supplicant through
>> .del_virtual_intf() callback. Took a quick peek in
>> net/mac80211/iface.c:ieee80211_if_remove() and wonder whether I should
>> do cfg80211_unregister_wdev() in that code path as well. Guess so, right?
> 
> I think so, yes. Does the warning go away if you do? :)

Not tested yet.

Thanks,
Arend





More information about the Hostap mailing list