All of lore.kernel.org
 help / color / mirror / Atom feed
From: <Ajay.Kathat@microchip.com>
To: <kvalo@kernel.org>
Cc: <linux-wireless@vger.kernel.org>, <Claudiu.Beznea@microchip.com>,
	<Sripad.Balwadgi@microchip.com>
Subject: Re: [PATCH 3/5] wilc1000: fix crash observed in AP mode with cfg80211_register_netdevice()
Date: Mon, 9 May 2022 13:49:41 +0000	[thread overview]
Message-ID: <aeafb6e2-d294-475b-1c43-1f90bf8d5114@microchip.com> (raw)
In-Reply-To: <87pmkmylex.fsf@kernel.org>


On 09/05/22 17:20, Kalle Valo wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> <Ajay.Kathat@microchip.com> writes:
>
>> From: Ajay Singh <ajay.kathat@microchip.com>
>>
>> Monitor(mon.) interface is used for handling the AP mode and 'ieee80211_ptr'
>> reference is not getting set for it. Like earlier implementation,
>> use register_netdevice() instead of cfg80211_register_netdevice() which
>> expects valid 'ieee80211_ptr' reference to avoid the possible crash.
>>
>> Fixes: 2fe8ef106238 ("cfg80211: change netdev registration/unregistration semantics")
>> Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
> Is there a reason why wilc1000 does not use ieee8011_ptr? And what
> earlier implementation are you referring to?


As I understand, in WILC "ieee80211_ptr" is used for the station/AP 
interface but not to configure the monitor interface which gets 
additionally added in AP mode. In AP mode, for an interface( wlan0 ), an 
additional monitor interface( mon.wlan0 ) gets created. A netdevice is 
register for monitor interface(mon.wlan0) to transmit/receive frames 
from/to hostapd. That interface doesn't explicitly set up 
'ieee80211_ptr' because the original interface(wlan0) uses it, so using 
"cfg80211_register/unregister" API's for mon.wlan0 interfaces fails.

For AP monitor interface, the earlier implementation was using 
register_netdevice()/unregister_netdevice() API which doesn't depends on 
'ieee80211_ptr' for netdevice registration so retained the previous API.


Regards,
Ajay


  reply	other threads:[~2022-05-09 13:49 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-04 16:19 [PATCH 1/5] wilc1000: increase firmware version array size Ajay.Kathat
2022-05-04 16:19 ` [PATCH 2/5] wilc1000: use fixed function base register value to access SDIO_FBR_ENABLE_CSA Ajay.Kathat
2022-05-04 16:19 ` [PATCH 4/5] wilc1000: use 'u64' datatype for cookie variable Ajay.Kathat
2022-05-04 16:19 ` [PATCH 3/5] wilc1000: fix crash observed in AP mode with cfg80211_register_netdevice() Ajay.Kathat
2022-05-09 11:50   ` Kalle Valo
2022-05-09 13:49     ` Ajay.Kathat [this message]
2022-05-09 19:44       ` Johannes Berg
2022-05-10  9:55         ` Ajay.Kathat
2022-05-11  4:41           ` Kalle Valo
2022-05-04 16:19 ` [PATCH 5/5] wilc1000: add valid vmm_entry check before fetching from TX queue Ajay.Kathat
2022-05-11  5:25 ` [PATCH 1/5] wilc1000: increase firmware version array size Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aeafb6e2-d294-475b-1c43-1f90bf8d5114@microchip.com \
    --to=ajay.kathat@microchip.com \
    --cc=Claudiu.Beznea@microchip.com \
    --cc=Sripad.Balwadgi@microchip.com \
    --cc=kvalo@kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.