From 21787e51deef86af22e6fff15c5baae5bdd70c48 Mon Sep 17 00:00:00 2001 From: Chaithanya Garrepalli Date: Sat, 29 Aug 2020 18:18:22 +0530 Subject: [PATCH] qcacmn: remove the assert for DP peer state Remove the ASSERTs added for DP peer state tranistion Change-Id: I3fdf355fc6a79642b5527a35015f96d04e4272c0 --- dp/wifi3.0/dp_peer.h | 63 ++++++++++++++++++++++++++++++++------------ 1 file changed, 46 insertions(+), 17 deletions(-) diff --git a/dp/wifi3.0/dp_peer.h b/dp/wifi3.0/dp_peer.h index 69dde5d1a2..9a8e4e9afc 100644 --- a/dp/wifi3.0/dp_peer.h +++ b/dp/wifi3.0/dp_peer.h @@ -410,6 +410,30 @@ dp_soc_iterate_peer_lock_safe(struct dp_soc *soc, } } +#ifdef DP_PEER_STATE_DEBUG +#define DP_PEER_STATE_ASSERT(_peer, _new_state, _condition) \ + do { \ + if (!(_condition)) { \ + dp_alert("Invalid state shift from %u to %u peer " \ + QDF_MAC_ADDR_FMT, \ + (_peer)->peer_state, (_new_state), \ + QDF_MAC_ADDR_REF((_peer)->mac_addr.raw)); \ + QDF_ASSERT(0); \ + } \ + } while (0) + +#else +#define DP_PEER_STATE_ASSERT(_peer, _new_state, _condition) \ + do { \ + if (!(_condition)) { \ + dp_alert("Invalid state shift from %u to %u peer ", \ + QDF_MAC_ADDR_FMT, \ + (_peer)->peer_state, (_new_state), \ + QDF_MAC_ADDR_REF((_peer)->mac_addr.raw)); \ + } \ + } while (0) +#endif + /** * dp_peer_update_state() - update dp peer state * @@ -428,42 +452,47 @@ dp_peer_update_state(struct dp_soc *soc, switch (state) { case DP_PEER_STATE_INIT: - QDF_ASSERT - ((peer_state != DP_PEER_STATE_ACTIVE) || + DP_PEER_STATE_ASSERT + (peer, state, (peer_state != DP_PEER_STATE_ACTIVE) || (peer_state != DP_PEER_STATE_LOGICAL_DELETE)); break; case DP_PEER_STATE_ACTIVE: - QDF_ASSERT(peer_state == DP_PEER_STATE_INIT); + DP_PEER_STATE_ASSERT(peer, state, + (peer_state == DP_PEER_STATE_INIT)); break; case DP_PEER_STATE_LOGICAL_DELETE: - QDF_ASSERT((peer_state == DP_PEER_STATE_ACTIVE) || - (peer_state == DP_PEER_STATE_INIT)); + DP_PEER_STATE_ASSERT(peer, state, + (peer_state == DP_PEER_STATE_ACTIVE) || + (peer_state == DP_PEER_STATE_INIT)); break; case DP_PEER_STATE_INACTIVE: - QDF_ASSERT(peer_state == DP_PEER_STATE_LOGICAL_DELETE); + DP_PEER_STATE_ASSERT + (peer, state, + (peer_state == DP_PEER_STATE_LOGICAL_DELETE)); break; case DP_PEER_STATE_FREED: if (peer->sta_self_peer) - QDF_ASSERT(peer_state == - DP_PEER_STATE_INIT); + DP_PEER_STATE_ASSERT + (peer, state, (peer_state == DP_PEER_STATE_INIT)); else - QDF_ASSERT((peer_state == - DP_PEER_STATE_INACTIVE) || - (peer_state == - DP_PEER_STATE_LOGICAL_DELETE)); + DP_PEER_STATE_ASSERT + (peer, state, + (peer_state == DP_PEER_STATE_INACTIVE) || + (peer_state == DP_PEER_STATE_LOGICAL_DELETE)); break; default: - QDF_ASSERT(0); - break; + dp_alert("Invalid peer state %u for peer "QDF_MAC_ADDR_FMT, + state, QDF_MAC_ADDR_REF(peer->mac_addr.raw)); + return; } - qdf_info("Updating peer state from %u to %u mac "QDF_MAC_ADDR_FMT"\n", - peer_state, state, - QDF_MAC_ADDR_REF(peer->mac_addr.raw)); + dp_info("Updating peer state from %u to %u mac "QDF_MAC_ADDR_FMT"\n", + peer_state, state, + QDF_MAC_ADDR_REF(peer->mac_addr.raw)); peer->peer_state = state; }