All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gavin Shan <gwshan@linux.vnet.ibm.com>
To: netdev@vger.kernel.org
Cc: davem@davemloft.net, Gavin Shan <gwshan@linux.vnet.ibm.com>
Subject: [PATCH net-next 7/8] net/ncsi: No error report on DP response to non-existing package
Date: Thu, 13 Apr 2017 12:46:39 +1000	[thread overview]
Message-ID: <1492051600-26706-8-git-send-email-gwshan@linux.vnet.ibm.com> (raw)
In-Reply-To: <1492051600-26706-1-git-send-email-gwshan@linux.vnet.ibm.com>

The issue was found from /proc/ncsi/eth0/stats. The first step
in NCSI package/channel enumeration is deselect all packages by
sending DP (Deselect Package) commands. The remote NIC replies
with response while the corresponding package isn't populated
yet and it is treated as an error wrongly.

 # cat /proc/ncsi/eth0/stats
 :
 RSP          OK       TIMEOUT  ERROR
 =======================================
 CIS          3        0        0
 SP           3        0        0
 DP           2        0        1

This fixes the issue by ignoring the error in DP response handler,
when the corresponding package isn't existing. With this applied,
no error reported from DP response packets.

 # cat /proc/ncsi/eth0/stats
 :
 RSP          OK       TIMEOUT  ERROR
 =======================================
 CIS          3        0        0
 SP           3        0        0
 DP           3        0        0

Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
---
 net/ncsi/ncsi-rsp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/ncsi/ncsi-rsp.c b/net/ncsi/ncsi-rsp.c
index 93ebe0f..095726f 100644
--- a/net/ncsi/ncsi-rsp.c
+++ b/net/ncsi/ncsi-rsp.c
@@ -118,7 +118,7 @@ static int ncsi_rsp_handler_dp(struct ncsi_request *nr)
 	ncsi_find_package_and_channel(ndp, rsp->rsp.common.channel,
 				      &np, NULL);
 	if (!np)
-		return -ENODEV;
+		return 0;
 
 	/* Change state of all channels attached to the package */
 	NCSI_FOR_EACH_CHANNEL(np, nc) {
-- 
2.7.4

  parent reply	other threads:[~2017-04-13  2:48 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-13  2:46 [PATCH net-next 0/8] net/ncsi: Add debugging functionality Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 1/8] net/ncsi: Disable HWA mode when no channels are found Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 2/8] net/ncsi: Properly track channel monitor timer state Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 3/8] net/ncsi: Enforce failover on link monitor timeout Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 4/8] net/ncsi: Add debugging infrastructurre Gavin Shan
2017-04-13  4:28   ` Joe Perches
2017-04-13  5:11     ` Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 5/8] net/ncsi: Dump NCSI packet statistics Gavin Shan
2017-04-13  2:46 ` [PATCH net-next 6/8] net/ncsi: Support NCSI packet generation Gavin Shan
2017-04-13  2:46 ` Gavin Shan [this message]
2017-04-13  2:46 ` [PATCH net-next 8/8] net/ncsi: Fix length of GVI response packet Gavin Shan
2017-04-13  7:57 ` [PATCH net-next 0/8] net/ncsi: Add debugging functionality Gavin Shan

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=1492051600-26706-8-git-send-email-gwshan@linux.vnet.ibm.com \
    --to=gwshan@linux.vnet.ibm.com \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.