diff --git a/[refs] b/[refs] index c714f16c4a67..534b1539ceac 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d2c71c20789189cd01978efcbdd61231f5929eaf +refs/heads/master: 17a68dd7bc25b3671d54b3b371df9b5baf985b20 diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c b/trunk/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c index 126e5a4cc401..2308177232c0 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c @@ -398,6 +398,7 @@ static void iwl_rx_handle(struct iwl_trans *trans) while (i != r) { int len; + u16 txq_id, sequence; rxb = rxq->queue[i]; @@ -437,6 +438,17 @@ static void iwl_rx_handle(struct iwl_trans *trans) (pkt->hdr.cmd != STATISTICS_NOTIFICATION) && (pkt->hdr.cmd != REPLY_TX); + sequence = le16_to_cpu(pkt->hdr.sequence); + txq_id = SEQ_TO_QUEUE(le16_to_cpu(pkt->hdr.sequence)); + + /* warn if this is cmd response / notification and the uCode + * didn't set the SEQ_RX_FRAME for a frame that is + * uCode-originated*/ + WARN(txq_id == trans->shrd->cmd_queue && reclaim == false && + (!(pkt->hdr.sequence & SEQ_RX_FRAME)), + "reclaim is false, SEQ_RX_FRAME unset: %s\n", + get_cmd_string(pkt->hdr.cmd)); + iwl_rx_dispatch(priv(trans), rxb); /*