[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6c0eb718965c01a2b3889ec54e0fbc73be25a568.camel@sipsolutions.net>
Date: Mon, 24 Mar 2025 13:17:29 +0100
From: Johannes Berg <johannes@...solutions.net>
To: Remi Pommarel <repk@...plefau.lt>, linux-wireless@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] wifi: mac80211: Purge vif txq in ieee80211_do_stop()
On Fri, 2025-03-14 at 12:04 +0100, Remi Pommarel wrote:
> After ieee80211_do_stop() SKB from vif's txq could still be processed.
> Indeed another concurrent vif schedule_and_wake_txq call could cause
> those packets to be dequeued (see ieee80211_handle_wake_tx_queue())
> without checking the sdata current state.
>
> Because vif.drv_priv is now cleared in this function, this could lead to
> driver crash.
>
> For example in ath12k, ahvif is store in vif.drv_priv. Thus if
> ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be
> NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to
> trigger the NULL deref below.
>
> Unable to handle kernel paging request at virtual address dfffffc000000001
>
Also here, can you find a Fixes: tag?
johannes
Powered by blists - more mailing lists