qcacmn: Detect if host sends out reorder queue remove cmd
We are suspecting that peer_rx_reorder_queue_remove_cmd is causing
drop of ARP response frames from REO by the FW. This may cause drop of
ping packets.
Add a check in the function to detect if its being called.
Change-Id: I368aa8155830e8e6fadccfaf9ab5bfbfc8bfdd35
CRs-Fixed: 2254858
diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c
index cecf75b..bce9c55 100644
--- a/wmi/src/wmi_unified_tlv.c
+++ b/wmi/src/wmi_unified_tlv.c
@@ -663,6 +663,21 @@
*targ_paramid = peer_param_id;
return QDF_STATUS_SUCCESS;
}
+
+/**
+ * crash_on_send_peer_rx_reorder_queue_remove_cmd() - crash on reorder queue cmd
+ *
+ * On MCL side, we are suspecting this cmd to trigger drop of ARP
+ * response frames from REO by the FW. This function causes a crash if this
+ * command is sent out by the host, so we can track this issue. Ideally no one
+ * should be calling this API from the MCL side
+ *
+ * Return: None
+ */
+static void crash_on_send_peer_rx_reorder_queue_remove_cmd(void)
+{
+ QDF_BUG(0);
+}
#else
static QDF_STATUS convert_host_peer_id_to_target_id_tlv(
uint32_t *targ_paramid,
@@ -753,6 +768,12 @@
return QDF_STATUS_SUCCESS;
}
+
+static void crash_on_send_peer_rx_reorder_queue_remove_cmd(void)
+{
+ /* No-OP */
+}
+
#endif
/**
* send_peer_param_cmd_tlv() - set peer parameter in fw
@@ -944,6 +965,8 @@
wmi_buf_t buf;
int32_t len = sizeof(*cmd);
+ crash_on_send_peer_rx_reorder_queue_remove_cmd();
+
buf = wmi_buf_alloc(wmi, len);
if (!buf) {
WMI_LOGP("%s: wmi_buf_alloc failed", __func__);