Search Linux Wireless

RE: [PATCH 3/3] mwifiex: fix kernel warning in ibss start/join path

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Johannes,

Thanks for your comment.

> > From: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
> >
> > Since cfg80211_ibss_joined() is called inside ibss join callback
> > routine, following kernel warning is hit while starting/joining
> > an ibss network.
> >
> > "WARNING: at net/wireless/ibss.c:63 cfg80211_ibss_joined+0x35/0xb6
> > [cfg80211]()"
> >
> > Update "wdev->ssid" and "wdev->ssid_len" in ibss join callback to
> > fix this warning.
> 
> Guys, no. The documentation for this explicitly says:
> 
>  * @ssid: (private) Used by the internal configuration code
>  * @ssid_len: (private) Used by the internal configuration code

Sorry, I should have been aware of that.

> 
> Don't touch it. I knew I should have hidden these fields from driver
> view, but it wasn't easily possible.
> 
> If you're using the API wrong then you should fix that instead. In
> particular, you should only call cfg80211_ibss_joined() when you
> actually know the BSSID of the IBSS you've joined. You can't possibly
> know this at this point since you can't even have scanned for peers yet.

In .join_ibss handler, mwifiex driver sends a command to firmware to start/join an IBSS network.
This command is a synchronous call. When the command response comes back we have started/joined it successfully, otherwise an error code will be returned. However, we are still inside .join_ibss handler at this moment. Calling cfg80211_ibss_joined() gives us the warning because ssid_len hasn't been set by cfg80211 yet.

Anyway, we will look for other solution to resolve the kernel warning.


Hi John,

Please drop this patch.

Thanks,
Bing

��.n��������+%������w��{.n�����{���zW����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux