From b39fce7bc3e03636d24535d124eb96c980e0b8af Mon Sep 17 00:00:00 2001 From: Nandha Kishore Easwaran Date: Fri, 13 Oct 2017 16:23:38 +0530 Subject: [PATCH] qcacmn: Add mac address check in mec handler Add a check in mec handler to see if mac_address is same as that of vdev_macaddr.raw. If both mac addresses are equal, then add_wds_entry should not be called. This corner case is seen in qwrap mode where the vdev address is same as that of the backend wired station Change-Id: I17504de8ef379680c2a2b962280e1853a5b2930d CRs-fixed: 2109554 --- dp/wifi3.0/dp_tx.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dp/wifi3.0/dp_tx.c b/dp/wifi3.0/dp_tx.c index cbfa930f095f..0575e7791e84 100644 --- a/dp/wifi3.0/dp_tx.c +++ b/dp/wifi3.0/dp_tx.c @@ -1813,8 +1813,9 @@ void dp_tx_mec_handler(struct dp_vdev *vdev, uint8_t *status) mac_addr[(DP_MAC_ADDR_LEN - 1) - i] = status[(DP_MAC_ADDR_LEN - 2) + i]; - if (!dp_peer_add_ast(soc, peer, mac_addr, 2)) { - soc->cdp_soc.ol_ops->peer_add_wds_entry( + if (qdf_mem_cmp(mac_addr, vdev->mac_addr.raw, DP_MAC_ADDR_LEN) && + !dp_peer_add_ast(soc, peer, mac_addr, 2)) { + soc->cdp_soc.ol_ops->peer_add_wds_entry( vdev->pdev->osif_pdev, mac_addr, vdev->mac_addr.raw,