Search Linux Wireless

Re: [PATCH v2 1/3] ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control

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

 



Sven Eckelmann <sven@xxxxxxxxxxxxx> wrote:

> The driver_data area of ieee80211_tx_info is used in ath11k for
> ath11k_skb_cb. The first function in the TX patch which rewrites it to
> ath11k_skb_cb is already ath11k_mac_op_tx. No one else in the code path
> must use it for something else before it reinitializes it. Otherwise the
> data has to be considered uninitialized or corrupt.
> 
> But the ieee80211_tx_info.control shares exactly the same area as
> ieee80211_tx_info.driver_data and ath11k is still using it. This results in
> best case in a
> 
>   ath11k c000000.wifi1: no vif found for mgmt frame, flags 0x0
> 
> or (slightly worse) in a kernel oops.
> 
> Instead, the interesting data must be moved first into the ath11k_skb_cb
> and ieee80211_tx_info.control must then not be used anymore.
> 
> Tested-on: IPQ8074 hw2.0 WLAN.HK.2.4.0.1.r1-00026-QCAHKSWPL_SILICONZ-2
> 
> Fixes: d5c65159f289 ("ath11k: driver for Qualcomm IEEE 802.11ax devices")
> Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
> Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

3 patches applied to ath-next branch of ath.git, thanks.

f4d291b43f80 ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control
5da7acfec5ec ath11k: Reset ath11k_skb_cb before setting new flags
d35d1375493b ath11k: Build check size of ath11k_skb_cb

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/20201119154235.263250-1-sven@xxxxxxxxxxxxx/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches




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

  Powered by Linux