Baochen Qiang <quic_bqiang@xxxxxxxxxxx> wrote: > Currently in recovery/resume cases, we do not free M3 buffer but > instead will reuse it. This is done by checking m3_mem->vaddr: if it > is not NULL we believe M3 buffer is ready and go ahead to reuse it. > > Note that m3_mem->size is not checked. This is safe for now because > currently M3 reuse logic only gets executed in recovery/resume cases > and the size keeps unchanged in either of them. > > However ideally the size should be checked as well, to make the code > safer. So add the check there. Now if that check fails, free old M3 > buffer and reallocate a new one. > > Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.30 > > Fixes: 303c017821d8 ("wifi: ath12k: fix kernel crash during resume") > Signed-off-by: Baochen Qiang <quic_bqiang@xxxxxxxxxxx> > Acked-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx> > Signed-off-by: Kalle Valo <quic_kvalo@xxxxxxxxxxx> Patch applied to ath-next branch of ath.git, thanks. 05090ae82f44 wifi: ath12k: check M3 buffer size as well whey trying to reuse it -- https://patchwork.kernel.org/project/linux-wireless/patch/20240425021740.29221-1-quic_bqiang@xxxxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches