From: Hariprasad Shenai <hariprasad@chelsio.com>
To: netdev@vger.kernel.org, linux-rdma@vger.kernel.org
Cc: davem@davemloft.net, roland@purestorage.com, santosh@chelsio.com,
dm@chelsio.com, kumaras@chelsio.com, swise@opengridcomputing.com,
leedom@chelsio.com, nirranjan@chelsio.com,
hariprasad@chelsio.com
Subject: [PATCHv4 net-next 19/32] iw_cxgb4: ignore read reponse type 1 CQEs
Date: Fri, 7 Mar 2014 16:03:16 +0530 [thread overview]
Message-ID: <1394188409-9739-20-git-send-email-hariprasad@chelsio.com> (raw)
In-Reply-To: <1394188409-9739-1-git-send-email-hariprasad@chelsio.com>
From: Steve Wise <swise@opengridcomputing.com>
These are generated by HW in some error cases and need to be
silently discarded.
Signed-off-by: Steve Wise <swise@opengridcomputing.com>
---
drivers/infiniband/hw/cxgb4/cq.c | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/drivers/infiniband/hw/cxgb4/cq.c b/drivers/infiniband/hw/cxgb4/cq.c
index 59f7601..55f7157 100644
--- a/drivers/infiniband/hw/cxgb4/cq.c
+++ b/drivers/infiniband/hw/cxgb4/cq.c
@@ -365,8 +365,14 @@ void c4iw_flush_hw_cq(struct c4iw_cq *chp)
if (CQE_OPCODE(hw_cqe) == FW_RI_READ_RESP) {
- /*
- * drop peer2peer RTR reads.
+ /* If we have reached here because of async
+ * event or other error, and have egress error
+ * then drop
+ */
+ if (CQE_TYPE(hw_cqe) == 1)
+ goto next_cqe;
+
+ /* drop peer2peer RTR reads.
*/
if (CQE_WRID_STAG(hw_cqe) == 1)
goto next_cqe;
@@ -511,8 +517,18 @@ static int poll_cq(struct t4_wq *wq, struct t4_cq *cq, struct t4_cqe *cqe,
*/
if (RQ_TYPE(hw_cqe) && (CQE_OPCODE(hw_cqe) == FW_RI_READ_RESP)) {
- /*
- * If this is an unsolicited read response, then the read
+ /* If we have reached here because of async
+ * event or other error, and have egress error
+ * then drop
+ */
+ if (CQE_TYPE(hw_cqe) == 1) {
+ if (CQE_STATUS(hw_cqe))
+ t4_set_wq_in_error(wq);
+ ret = -EAGAIN;
+ goto skip_cqe;
+ }
+
+ /* If this is an unsolicited read response, then the read
* was generated by the kernel driver as part of peer-2-peer
* connection setup. So ignore the completion.
*/
--
1.8.4
next prev parent reply other threads:[~2014-03-07 10:42 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-07 10:32 [PATCHv4 net-next 00/32] Misc. fixes for cxgb4 and iw_cxgb4 Hariprasad Shenai
2014-03-07 10:32 ` [PATCHv4 net-next 01/32] cxgb4: Fix some small bugs in t4_sge_init_soft() when our Page Size is 64KB Hariprasad Shenai
2014-03-07 10:32 ` [PATCHv4 net-next 02/32] cxgb4: Add code to dump SGE registers when hitting idma hangs Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 03/32] cxgb4: Rectify emitting messages about SGE Ingress DMA channels being potentially stuck Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 04/32] cxgb4: Updates for T5 SGE's Egress Congestion Threshold Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 06/32] cxgb4: Calculate len properly for LSO path Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 07/32] iw_cxgb4: cap CQ size at T4_MAX_IQ_SIZE Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 08/32] iw_cxgb4: Allow loopback connections Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 09/32] iw_cxgb4: release neigh entry in error paths Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 10/32] iw_cxgb4: Treat CPL_ERR_KEEPALV_NEG_ADVICE as negative advice Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 12/32] iw_cxgb4: use the BAR2/WC path for kernel QPs and T5 devices Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 13/32] iw_cxgb4: Fix incorrect BUG_ON conditions Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 14/32] iw_cxgb4: Mind the sq_sig_all/sq_sig_type QP attributes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 15/32] iw_cxgb4: default peer2peer mode to 1 Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 17/32] iw_cxgb4: don't leak skb in c4iw_uld_rx_handler() Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 18/32] iw_cxgb4: fix possible memory leak in RX_PKT processing Hariprasad Shenai
2014-03-07 10:33 ` Hariprasad Shenai [this message]
2014-03-07 10:33 ` [PATCHv4 net-next 20/32] iw_cxgb4: connect_request_upcall fixes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 21/32] iw_cxgb4: adjust tcp snd/rcv window based on link speed Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 22/32] iw_cxgb4: update snd_seq when sending MPA messages Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 23/32] iw_cxgb4: lock around accept/reject downcalls Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 24/32] iw_cxgb4: drop RX_DATA packets if the endpoint is gone Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 25/32] iw_cxgb4: rx_data() needs to hold the ep mutex Hariprasad Shenai
[not found] ` <1394188409-9739-1-git-send-email-hariprasad-ut6Up61K2wZBDgjK7y7TUQ@public.gmane.org>
2014-03-07 10:33 ` [PATCHv4 net-next 05/32] cxgb4: use spinlock_irqsave/spinlock_irqrestore for db lock Hariprasad Shenai
[not found] ` <1394188409-9739-6-git-send-email-hariprasad-ut6Up61K2wZBDgjK7y7TUQ@public.gmane.org>
2014-03-08 5:43 ` David Miller
2014-03-07 10:33 ` [PATCHv4 net-next 11/32] cxgb4/iw_cxgb4: Doorbell Drop Avoidance Bug Fixes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 16/32] iw_cxgb4: save the correct map length for fast_reg_page_lists Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 26/32] iw_cxgb4: endpoint timeout fixes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 27/32] iw_cxgb4: rmb() after reading valid gen bit Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 28/32] iw_cxgb4: wc_wmb() needed after DB writes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 29/32] iw_cxgb4: SQ flush fix Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 30/32] iw_cxgb4: minor fixes Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 31/32] iw_cxgb4: Max fastreg depth depends on DSGL support Hariprasad Shenai
2014-03-07 10:33 ` [PATCHv4 net-next 32/32] iw_cxgb4: Use pr_warn_ratelimited Hariprasad Shenai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1394188409-9739-20-git-send-email-hariprasad@chelsio.com \
--to=hariprasad@chelsio.com \
--cc=davem@davemloft.net \
--cc=dm@chelsio.com \
--cc=kumaras@chelsio.com \
--cc=leedom@chelsio.com \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=nirranjan@chelsio.com \
--cc=roland@purestorage.com \
--cc=santosh@chelsio.com \
--cc=swise@opengridcomputing.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).