diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 9b4730a5e409..6238279ffce9 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -4528,8 +4528,7 @@ static struct cdp_vdev *dp_vdev_attach_wifi3(struct cdp_pdev *txrx_pdev, if (pdev->vdev_count == 1) dp_lro_hash_setup(soc, pdev); - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR, - "Created vdev %pK (%pM)", vdev, vdev->mac_addr.raw); + dp_info("Created vdev %pK (%pM)", vdev, vdev->mac_addr.raw); DP_STATS_INIT(vdev); if (wlan_op_mode_sta == vdev->opmode) @@ -4699,13 +4698,15 @@ static void dp_vdev_detach_wifi3(struct cdp_vdev *vdev_handle, ol_txrx_vdev_delete_cb callback, void *cb_context) { struct dp_vdev *vdev = (struct dp_vdev *)vdev_handle; - struct dp_pdev *pdev = vdev->pdev; - struct dp_soc *soc = pdev->soc; + struct dp_pdev *pdev; + struct dp_soc *soc; struct dp_neighbour_peer *peer = NULL; struct dp_neighbour_peer *temp_peer = NULL; /* preconditions */ - qdf_assert(vdev); + qdf_assert_always(vdev); + pdev = vdev->pdev; + soc = pdev->soc; if (wlan_op_mode_monitor == vdev->opmode) goto free_vdev; @@ -4729,9 +4730,7 @@ static void dp_vdev_detach_wifi3(struct cdp_vdev *vdev_handle, /* check that the vdev has no peers allocated */ if (!TAILQ_EMPTY(&vdev->peer_list)) { /* debug print - will be removed later */ - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_WARN, - FL("not deleting vdev object %pK (%pM)" - "until deletion finishes for all its peers"), + dp_warn("not deleting vdev object %pK (%pM) until deletion finishes for all its peers", vdev, vdev->mac_addr.raw); /* indicate that the vdev needs to be deleted */ vdev->delete.pending = 1; @@ -4994,16 +4993,14 @@ static void *dp_peer_create_wifi3(struct cdp_vdev *vdev_handle, /* Initialize the peer state */ peer->state = OL_TXRX_PEER_STATE_DISC; - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_HIGH, - "vdev %pK created peer %pK (%pM) ref_cnt: %d", + dp_info("vdev %pK created peer %pK (%pM) ref_cnt: %d", vdev, peer, peer->mac_addr.raw, qdf_atomic_read(&peer->ref_cnt)); /* * For every peer MAp message search and set if bss_peer */ if (memcmp(peer->mac_addr.raw, vdev->mac_addr.raw, 6) == 0) { - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_HIGH, - "vdev bss_peer!!!!"); + dp_info("vdev bss_peer!!"); peer->bss_peer = 1; vdev->vap_bss_peer = peer; } @@ -5751,6 +5748,9 @@ static struct cdp_vdev *dp_get_vdev_from_vdev_id_wifi3(struct cdp_pdev *dev, qdf_spin_lock_bh(&pdev->vdev_list_lock); TAILQ_FOREACH(vdev, &pdev->vdev_list, vdev_list_elem) { + if (vdev->delete.pending) + continue; + if (vdev->vdev_id == vdev_id) break; } diff --git a/dp/wifi3.0/dp_peer.c b/dp/wifi3.0/dp_peer.c index a8d5cae04535..15de09e22577 100644 --- a/dp/wifi3.0/dp_peer.c +++ b/dp/wifi3.0/dp_peer.c @@ -1413,10 +1413,8 @@ dp_rx_peer_map_handler(void *soc_handle, uint16_t peer_id, struct dp_peer *peer = NULL; enum cdp_txrx_ast_entry_type type = CDP_TXRX_AST_TYPE_STATIC; - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_INFO_HIGH, - "peer_map_event (soc:%pK): peer_id %di, hw_peer_id %d, peer_mac %02x:%02x:%02x:%02x:%02x:%02x, vdev_id %d", - soc, peer_id, - hw_peer_id, peer_mac_addr[0], peer_mac_addr[1], + dp_info("peer_map_event (soc:%pK): peer_id %d, hw_peer_id %d, peer_mac %02x:%02x:%02x:%02x:%02x:%02x, vdev_id %d", + soc, peer_id, hw_peer_id, peer_mac_addr[0], peer_mac_addr[1], peer_mac_addr[2], peer_mac_addr[3], peer_mac_addr[4], peer_mac_addr[5], vdev_id); @@ -1443,9 +1441,7 @@ dp_rx_peer_map_handler(void *soc_handle, uint16_t peer_id, if (!(qdf_mem_cmp(peer->mac_addr.raw, peer->vdev->mac_addr.raw, QDF_MAC_ADDR_SIZE))) { - QDF_TRACE(QDF_MODULE_ID_DP, - QDF_TRACE_LEVEL_INFO_HIGH, - "vdev bss_peer!!!!"); + dp_info("vdev bss_peer!!!!"); peer->bss_peer = 1; peer->vdev->vap_bss_peer = peer; } @@ -1462,10 +1458,8 @@ dp_rx_peer_map_handler(void *soc_handle, uint16_t peer_id, * referring it */ if (!peer->self_ast_entry) { - QDF_TRACE(QDF_MODULE_ID_DP, - QDF_TRACE_LEVEL_INFO_HIGH, - "Add self ast from map %pM", - peer_mac_addr); + dp_info("Add self ast from map %pM", + peer_mac_addr); dp_peer_add_ast(soc, peer, peer_mac_addr, type, 0); @@ -1506,9 +1500,7 @@ dp_rx_peer_unmap_handler(void *soc_handle, uint16_t peer_id, * in peer_id_to_obj_map will be NULL. */ if (!peer) { - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR, - "%s: Received unmap event for invalid peer_id %u", - __func__, peer_id); + dp_err("Received unmap event for invalid peer_id %u", peer_id); return; } @@ -1526,17 +1518,15 @@ dp_rx_peer_unmap_handler(void *soc_handle, uint16_t peer_id, return; } - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_FATAL, - "%s:%d AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u\n", - __func__, __LINE__, peer, peer->peer_ids[0], - peer->mac_addr.raw, mac_addr, vdev_id, - is_wds); + dp_alert("AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u", + peer, peer->peer_ids[0], + peer->mac_addr.raw, mac_addr, vdev_id, + is_wds); return; } - QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_INFO_HIGH, - "peer_unmap_event (soc:%pK) peer_id %d peer %pK", + dp_info("peer_unmap_event (soc:%pK) peer_id %d peer %pK", soc, peer_id, peer); soc->peer_id_to_obj_map[peer_id] = NULL; @@ -2915,9 +2905,7 @@ void *dp_find_peer_by_addr_and_vdev(struct cdp_pdev *pdev_handle, struct dp_vdev *vdev = (struct dp_vdev *)vdev_handle; struct dp_peer *peer; - DP_TRACE(INFO, "vdev %pK peer_addr %pK", vdev, peer_addr); peer = dp_peer_find_hash_find(pdev->soc, peer_addr, 0, 0); - DP_TRACE(INFO, "peer %pK vdev %pK", peer, vdev); if (!peer) return NULL; @@ -2928,7 +2916,6 @@ void *dp_find_peer_by_addr_and_vdev(struct cdp_pdev *pdev_handle, } *local_id = peer->local_id; - DP_TRACE(INFO, "peer %pK vdev %pK local id %d", peer, vdev, *local_id); /* ref_cnt is incremented inside dp_peer_find_hash_find(). * Decrement it here.