
Currently in monitor mode for KIWI, interrupt for RXDMA2HOST is enabled to process both monitor status srng and montior destination srng, but low threshold interrupt for monitor status srng is also enabled. so when available RX buffer in monitor status srng is less then low threshold, it is possible that two kind of interrupt from RXDMA2HOST ring and monitor status ring will call dp_rx_mon_status_process_tlv() in different context and access to mon_pdev->rx_status_q at the same time, this will lead to skb double free issue. solution: (1) disable RXDMA2HOST srng interrupt in monitor mode. (2) enable monitor status srng batch count interrupt for monitor processing. Change-Id: I1df8830cb7cc55468e5df5e49045c3d96f7c29a8 CRs-Fixed: 3245393
122 KiB
122 KiB