qcacmn: Skip duplicate destination ring desc in WKK RxMON

Skip duplicate destination ring desc in WKK RxMON

CRs-Fixed: 3162134
Change-Id: I38e7855a9d4fd19a4aaa476fbeeaa0c4a8e309e2
This commit is contained in:
Amir Patel
2022-03-30 13:28:45 +05:30
gecommit door Madan Koyyalamudi
bovenliggende 2c977089aa
commit 67d1b9bf12
2 gewijzigde bestanden met toevoegingen van 13 en 0 verwijderingen

Bestand weergeven

@@ -134,6 +134,8 @@ struct dp_mon_pdev_be {
struct dp_lite_mon_rx_config *lite_mon_rx_config;
struct dp_lite_mon_tx_config *lite_mon_tx_config;
#endif
void *prev_rxmon_desc;
uint32_t prev_rxmon_cookie;
};
/**

Bestand weergeven

@@ -448,6 +448,17 @@ dp_rx_mon_srng_process_2_0(struct dp_soc *soc, struct dp_intr *int_ctx,
mon_desc = (struct dp_mon_desc *)(uintptr_t)(hal_mon_rx_desc.buf_addr);
qdf_assert_always(mon_desc);
if ((mon_desc == mon_pdev_be->prev_rxmon_desc) &&
(mon_desc->cookie == mon_pdev_be->prev_rxmon_cookie)) {
dp_mon_err("duplicate descritout found mon_pdev: %pK mon_desc: %pK cookie: %d",
mon_pdev, mon_desc, mon_desc->cookie);
mon_pdev->rx_mon_stats.dup_mon_buf_cnt++;
hal_srng_dst_get_next(hal_soc, mon_dst_srng);
continue;
}
mon_pdev_be->prev_rxmon_desc = mon_desc;
mon_pdev_be->prev_rxmon_cookie = mon_desc->cookie;
if (!mon_desc->unmapped) {
qdf_mem_unmap_page(soc->osdev, mon_desc->paddr,
rx_mon_desc_pool->buf_size,