wlan: Page fault crash fix
Page fault crash fix
-Within RX thread try to alloc new frame for transfer finished
descriptor.
-When alloc new frame, iterator should be allocated and skb physical
address should be assigned.
-But just after iterator allocated, MC thread preempt and try to close
DXE channels.
-Then physical address is not assigned or not allocated.
Change-Id: Ie769630be086cc910005a60a6ad5eaef7dbe1ded
CR-Fixed: 424290
diff --git a/CORE/WDI/WPAL/src/wlan_qct_pal_packet.c b/CORE/WDI/WPAL/src/wlan_qct_pal_packet.c
index 100e178..c6cfa86 100644
--- a/CORE/WDI/WPAL/src/wlan_qct_pal_packet.c
+++ b/CORE/WDI/WPAL/src/wlan_qct_pal_packet.c
@@ -720,7 +720,15 @@
{
/*RX Packets need to be DMA-ed from the device, perform DMA mapping
accordingly */
- itReturnOSPktAddrFromDevice(pPacket, pInfo->pPhyAddr, pInfo->uLen);
+ if(NULL == pInfo->pPhyAddr)
+ {
+ WPAL_TRACE(eWLAN_MODULE_PAL, eWLAN_PAL_TRACE_LEVEL_ERROR,
+ " WLAN_PAL: %s: RX frame was not locked properly", __func__);
+ }
+ else
+ {
+ itReturnOSPktAddrFromDevice(pPacket, pInfo->pPhyAddr, pInfo->uLen);
+ }
}
break;