From patchwork Thu Oct 19 02:43:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Mendoza-Jonas X-Patchwork-Id: 827911 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=mendozajonas.com header.i=@mendozajonas.com header.b="i0TvH0Zy"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="GaaJTqXr"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yHYDm49t5z9t3l for ; Thu, 19 Oct 2017 13:44:56 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751346AbdJSCnS (ORCPT ); Wed, 18 Oct 2017 22:43:18 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:55383 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751091AbdJSCnR (ORCPT ); Wed, 18 Oct 2017 22:43:17 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 040DA20E04; Wed, 18 Oct 2017 22:43:17 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Wed, 18 Oct 2017 22:43:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= mendozajonas.com; h=cc:date:from:message-id:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=0yM4XlutCkC5hGxnU X5PG9Ijup01whkYRmQmcDD4Apk=; b=i0TvH0ZyLdWtHFygg8FDB1AQ8IQGQoXQg pmvWMUGa8Eubf2rnn15hPXgK5gmc4cpBS44QCzIeALRO6HRRocoGX3BWp482MDK4 xA626K7p4oJpRsLXzp6WwyiNBQwqe+9byRWwQvwSWiQyPkNnvBWxp0k2PNa5GqFx XJS90YsfMqZerfZfBpbIu4wrYBGfV+uUUOiM1Omte1NOWDBCBoygZ0Rg2ikQhK+Z Ck6hPNac6umDe62rBQi5qWBvf39xsrfTokhAY4FFVJ8+jS6Q90Dze351o7H4TVv9 Cb6xPkwH3Sp4nGbdyNzFV9qLFfhHVS2502wzdCxZ23m+eiUpiYINQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:message-id:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=0yM4XlutCkC5hGxnU X5PG9Ijup01whkYRmQmcDD4Apk=; b=GaaJTqXr2i73BoBJ39EI0SSji6qw9D0vt sP6UT4yy3nJj+iFHcy+aHlXinYK724dnn8U2K30mGGR55nEvQU1Byr4b5LMQ4bex I28aWeCunWVcRN20T1qEDBr6N1lYSYQoJgiY6Iezh6kWshy9PoiF4RGKmbJ6OIWq ZWIQSVraKMpTLO42qzVvVnd6clCM8a0Aky5RvMleZJehvalbVGUi3MmTqdn0yaA3 oH+WRqcoXWp6K0TuJt2SXVvGXKFh4BC6ZXzDi2+HNwLYReKs9CqCFZkhOJgbU7WF YH0sluGfxuKaSyPwDIGeKm+S2F5OjMAq+d45Mq+W+W0yYlMhuvhGA== X-ME-Sender: Received: from v4.ozlabs.ibm.com (unknown [122.99.82.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 66E5B7F9D0; Wed, 18 Oct 2017 22:43:15 -0400 (EDT) From: Samuel Mendoza-Jonas To: netdev@vger.kernel.org Cc: Samuel Mendoza-Jonas , "David S . Miller" , linux-kernel@vger.kernel.org Subject: [PATCH net 1/5] net/ncsi: Fix AEN HNCDSC packet length Date: Thu, 19 Oct 2017 13:43:05 +1100 Message-Id: <20171019024309.13628-1-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.2 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Correct the value of the HNCDSC AEN packet. Fixes: 7a82ecf4cfb85 "net/ncsi: NCSI AEN packet handler" Signed-off-by: Samuel Mendoza-Jonas --- net/ncsi/ncsi-aen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ncsi/ncsi-aen.c b/net/ncsi/ncsi-aen.c index 6898e7229285..f135938bf781 100644 --- a/net/ncsi/ncsi-aen.c +++ b/net/ncsi/ncsi-aen.c @@ -187,7 +187,7 @@ static struct ncsi_aen_handler { } ncsi_aen_handlers[] = { { NCSI_PKT_AEN_LSC, 12, ncsi_aen_handler_lsc }, { NCSI_PKT_AEN_CR, 4, ncsi_aen_handler_cr }, - { NCSI_PKT_AEN_HNCDSC, 4, ncsi_aen_handler_hncdsc } + { NCSI_PKT_AEN_HNCDSC, 8, ncsi_aen_handler_hncdsc } }; int ncsi_aen_handler(struct ncsi_dev_priv *ndp, struct sk_buff *skb) From patchwork Thu Oct 19 02:43:06 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Mendoza-Jonas X-Patchwork-Id: 827910 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=mendozajonas.com header.i=@mendozajonas.com header.b="AweRjL6l"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="hdnrvkRT"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yHYDX3VY7z9t8D for ; Thu, 19 Oct 2017 13:44:44 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751510AbdJSCnX (ORCPT ); Wed, 18 Oct 2017 22:43:23 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:47471 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751462AbdJSCnT (ORCPT ); Wed, 18 Oct 2017 22:43:19 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id D37A520C59; Wed, 18 Oct 2017 22:43:18 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Wed, 18 Oct 2017 22:43:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= mendozajonas.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=5spdBP3b1DtjyPIzBYRd1tgidZ8gs8LjaS0wIrYA7UE=; b=AweRjL6l rYCspqZoDv0VVH6le2WR2aDVtKngRMmI4ndPvx1Cg3hSC0oN9rJMQvPYotE9ImJp HIDngCYFDg6WAG1Vgf57uqNGEu8sCGDDNXFYGApfKH+P6NKwBJENDLUUFFaZaa9C u/Z0Tj59pmz8T8dsjag5AQAPekiNR9vNvKT48IWD28QgndjRk+vli0JVj0u4pXh6 qtDEUJ/gmjp64jviRUpUhhvJM/plnMq3RohKcnnVMozmN8qSKGfqmOXakuyVsAFg n8coD1bWA7siVY0OG2SZrLSylqhqkvWs2CAONl8WW5yJfZortjKgp30SZD30IsZr fRyd4ngPYc4KNA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=5spdBP3b1DtjyPIzBYRd1tgidZ8gs8LjaS0wIrYA7UE=; b=hdnrvkRT MFpFPEhYSi/oZEqzfcWiPSFMUVbVC3Nc0H0td0+24jqHcPp3hSPox6SvZkBG2wRs +NHHEIcmeODAB8io6aM0F35MCpEjM0wQjnhCbeXG8X/yGmWNcDRqc7Zsw5k2MbIB fUEM8jUUktbKXT5Rr9lpdnuRqmDBAkxjxGFMV6evYeKLp8AFT/Hi0K/EUStk0j4U I+TYM8+XBQOxkanRIn7N+3elkJ3KoIX8Fm/JccM2fby31GBUC6WLE0GspHp2oNis M7lDUQgBu0sLZNIfEAChQ/ml67E0VQra3q1y6WN+5VOovNrDIVJNPMXXfHuXs8KI zDJSm+nRdXCwEg== X-ME-Sender: Received: from v4.ozlabs.ibm.com (unknown [122.99.82.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 49E187FA70; Wed, 18 Oct 2017 22:43:17 -0400 (EDT) From: Samuel Mendoza-Jonas To: netdev@vger.kernel.org Cc: Samuel Mendoza-Jonas , "David S . Miller" , linux-kernel@vger.kernel.org Subject: [PATCH net 2/5] net/ncsi: Stop monitor if channel times out or is inactive Date: Thu, 19 Oct 2017 13:43:06 +1100 Message-Id: <20171019024309.13628-2-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20171019024309.13628-1-sam@mendozajonas.com> References: <20171019024309.13628-1-sam@mendozajonas.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org ncsi_channel_monitor() misses stopping the channel monitor in several places that it should, causing a WARN_ON_ONCE() to trigger when the monitor is re-started later, eg: [ 459.040000] WARNING: CPU: 0 PID: 1093 at net/ncsi/ncsi-manage.c:269 ncsi_start_channel_monitor+0x7c/0x90 [ 459.040000] CPU: 0 PID: 1093 Comm: kworker/0:3 Not tainted 4.10.17-gaca2fdd #140 [ 459.040000] Hardware name: ASpeed SoC [ 459.040000] Workqueue: events ncsi_dev_work [ 459.040000] [<80010094>] (unwind_backtrace) from [<8000d950>] (show_stack+0x20/0x24) [ 459.040000] [<8000d950>] (show_stack) from [<801dbf70>] (dump_stack+0x20/0x28) [ 459.040000] [<801dbf70>] (dump_stack) from [<80018d7c>] (__warn+0xe0/0x108) [ 459.040000] [<80018d7c>] (__warn) from [<80018e70>] (warn_slowpath_null+0x30/0x38) [ 459.040000] [<80018e70>] (warn_slowpath_null) from [<803f6a08>] (ncsi_start_channel_monitor+0x7c/0x90) [ 459.040000] [<803f6a08>] (ncsi_start_channel_monitor) from [<803f7664>] (ncsi_configure_channel+0xdc/0x5fc) [ 459.040000] [<803f7664>] (ncsi_configure_channel) from [<803f8160>] (ncsi_dev_work+0xac/0x474) [ 459.040000] [<803f8160>] (ncsi_dev_work) from [<8002d244>] (process_one_work+0x1e0/0x450) [ 459.040000] [<8002d244>] (process_one_work) from [<8002d510>] (worker_thread+0x5c/0x570) [ 459.040000] [<8002d510>] (worker_thread) from [<80033614>] (kthread+0x124/0x164) [ 459.040000] [<80033614>] (kthread) from [<8000a5e8>] (ret_from_fork+0x14/0x2c) This also updates the monitor instead of just returning if ncsi_xmit_cmd() fails to send the get-link-status command so that the monitor properly times out. Fixes: e6f44ed6d04d3 "net/ncsi: Package and channel management" Signed-off-by: Samuel Mendoza-Jonas --- net/ncsi/ncsi-manage.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/net/ncsi/ncsi-manage.c b/net/ncsi/ncsi-manage.c index b6a449aa9d4b..b022deb39d31 100644 --- a/net/ncsi/ncsi-manage.c +++ b/net/ncsi/ncsi-manage.c @@ -202,11 +202,15 @@ static void ncsi_channel_monitor(unsigned long data) monitor_state = nc->monitor.state; spin_unlock_irqrestore(&nc->lock, flags); - if (!enabled || chained) + if (!enabled || chained) { + ncsi_stop_channel_monitor(nc); return; + } if (state != NCSI_CHANNEL_INACTIVE && - state != NCSI_CHANNEL_ACTIVE) + state != NCSI_CHANNEL_ACTIVE) { + ncsi_stop_channel_monitor(nc); return; + } switch (monitor_state) { case NCSI_CHANNEL_MONITOR_START: @@ -217,12 +221,9 @@ static void ncsi_channel_monitor(unsigned long data) nca.type = NCSI_PKT_CMD_GLS; nca.req_flags = 0; ret = ncsi_xmit_cmd(&nca); - if (ret) { + if (ret) netdev_err(ndp->ndev.dev, "Error %d sending GLS\n", ret); - return; - } - break; case NCSI_CHANNEL_MONITOR_WAIT ... NCSI_CHANNEL_MONITOR_WAIT_MAX: break; @@ -233,6 +234,8 @@ static void ncsi_channel_monitor(unsigned long data) ndp->flags |= NCSI_DEV_RESHUFFLE; } + ncsi_stop_channel_monitor(nc); + spin_lock_irqsave(&nc->lock, flags); nc->state = NCSI_CHANNEL_INVISIBLE; spin_unlock_irqrestore(&nc->lock, flags); From patchwork Thu Oct 19 02:43:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Mendoza-Jonas X-Patchwork-Id: 827909 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=mendozajonas.com header.i=@mendozajonas.com header.b="NQyPs64O"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="iXvLI1Wl"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yHYD40j7wz9tX7 for ; Thu, 19 Oct 2017 13:44:20 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751617AbdJSCnc (ORCPT ); Wed, 18 Oct 2017 22:43:32 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:36915 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751091AbdJSCnV (ORCPT ); Wed, 18 Oct 2017 22:43:21 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id E6AD620C59; Wed, 18 Oct 2017 22:43:20 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Wed, 18 Oct 2017 22:43:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= mendozajonas.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=gJF1y1IcFd+yUfjCy2M3JF37o2s+mNJl0cjJIgWQPC0=; b=NQyPs64O YCZzUtggEGI4u+lTk1TQ9y2Ts5ZSZXMW3HPrk3TGVIFEdoIgSTqRyk1r+CcaotRb b2qDcLH+9/yZgYjU3FDSa7r5n+Pz79Xej45VvzRq8pLdgj1R0inrDBjOQzPAXGXz qqvQQ9mXNjulVh/lBxjuREybkTN1euSuN775VPqmzAVptmWtB95JbAclGWXI94GS NkmkCnrRhG3n8m/M/hIzZecPfk30BvyVt6l3zCZce0LMjDbmW/FoyTZYog7xQ/lC ft8Wu4TI0tau6g5e7zhsn3UbM9O+bLpjrWjlz9ZggpWCIuyM/H9ciF+7VMoGECrA xUKmGKqZy18Aeg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=gJF1y1IcFd+yUfjCy2M3JF37o2s+mNJl0cjJIgWQPC0=; b=iXvLI1Wl mO1OkwHIPEhhtHfkwjAVrJSPHUTw5scsR9i+plYr16CIakTce3916b5cHbOJntKZ xbLtaBL7B57zPioh91PVU0t4k4R6tq2IXWBzWyNQS4kcIwhNFEI6m9EfkvySyZ9P ImPI2jEyOeoqCs2cTNwZFDnXh8UJ7SfA7CoSMuT7vGQk9+yG11WzNgRjZGdHS024 fJsG6UNk8nKZPZFF8nTtEFze8KPTZN+Rz84feZdvlZh4wwIULAM5QL5lDWnPXeF/ kPDu5cQ/yDWiqwPgUI9oAwWLufqMUfkqAaBaMyqRtNujc64PRALb1BkQPIza3QBu 9yBFn5mmhuqprw== X-ME-Sender: Received: from v4.ozlabs.ibm.com (unknown [122.99.82.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 227A87FA75; Wed, 18 Oct 2017 22:43:18 -0400 (EDT) From: Samuel Mendoza-Jonas To: netdev@vger.kernel.org Cc: Gavin Shan , "David S . Miller" , linux-kernel@vger.kernel.org, Samuel Mendoza-Jonas Subject: [PATCH net 3/5] net/ncsi: Disable HWA mode when no channels are found Date: Thu, 19 Oct 2017 13:43:07 +1100 Message-Id: <20171019024309.13628-3-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20171019024309.13628-1-sam@mendozajonas.com> References: <20171019024309.13628-1-sam@mendozajonas.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Gavin Shan When there are no NCSI channels probed, HWA (Hardware Arbitration) mode is enabled. It's not correct because HWA depends on the fact: NCSI channels exist and all of them support HWA mode. This disables HWA when no channels are probed. Signed-off-by: Gavin Shan Signed-off-by: Samuel Mendoza-Jonas --- net/ncsi/ncsi-manage.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/net/ncsi/ncsi-manage.c b/net/ncsi/ncsi-manage.c index b022deb39d31..0966eff48ce7 100644 --- a/net/ncsi/ncsi-manage.c +++ b/net/ncsi/ncsi-manage.c @@ -1005,12 +1005,15 @@ static bool ncsi_check_hwa(struct ncsi_dev_priv *ndp) struct ncsi_package *np; struct ncsi_channel *nc; unsigned int cap; + bool has_channel = false; /* The hardware arbitration is disabled if any one channel * doesn't support explicitly. */ NCSI_FOR_EACH_PACKAGE(ndp, np) { NCSI_FOR_EACH_CHANNEL(np, nc) { + has_channel = true; + cap = nc->caps[NCSI_CAP_GENERIC].cap; if (!(cap & NCSI_CAP_GENERIC_HWA) || (cap & NCSI_CAP_GENERIC_HWA_MASK) != @@ -1021,8 +1024,13 @@ static bool ncsi_check_hwa(struct ncsi_dev_priv *ndp) } } - ndp->flags |= NCSI_DEV_HWA; - return true; + if (has_channel) { + ndp->flags |= NCSI_DEV_HWA; + return true; + } + + ndp->flags &= ~NCSI_DEV_HWA; + return false; } static int ncsi_enable_hwa(struct ncsi_dev_priv *ndp) From patchwork Thu Oct 19 02:43:08 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Mendoza-Jonas X-Patchwork-Id: 827908 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=mendozajonas.com header.i=@mendozajonas.com header.b="cZejwdK4"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="sLSeBdlF"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yHYCq61fTz9tX4 for ; Thu, 19 Oct 2017 13:44:07 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751633AbdJSCne (ORCPT ); Wed, 18 Oct 2017 22:43:34 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:41387 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751570AbdJSCnX (ORCPT ); Wed, 18 Oct 2017 22:43:23 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 12CA5208C7; Wed, 18 Oct 2017 22:43:23 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Wed, 18 Oct 2017 22:43:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= mendozajonas.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=FzFzFfpV+F+OWO3Xuk7JSfzez2KUYDLyT2cpwaRD8hI=; b=cZejwdK4 euf+lrewhDbyWtGzSYDvboeiD+8kpqszDSjkrI9dyptWh+kt1culbIceV/bufxoL oQiIrtCl0HCusrEnHIsJQIG+L9re3fdqoCzjt3xxlGsJvzA7o1Lnfx+qsAdma7/a r61MYUwAuGHSEXAZzPgRq2RseBfmYKJELT0GWEwAPx9jDtCyOGwh/wNamxuZtuXL Co/v5IoPPNGdRG8Yt0iTCelhLp0YEanZbTQFGAJgN4yo+eeBVxsw6TT4z00hzL1/ v4n2u+UgaCxN0EZXGRhZ4/rrgezPXXIg5ty2bYRH0Tk+idQMgXJJ6qPOEiuZV+lO dlPOqPXAOxjEIQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=FzFzFfpV+F+OWO3Xuk7JSfzez2KUYDLyT2cpwaRD8hI=; b=sLSeBdlF nTCMWrOkuV8iO/RCStj6lZnwR5Vtoa1lF8VCjGPliPkkJZcvqPDKEUpVfU+Iv6jr FXZiPCU8L4sBgYuSQ1EVmdsL8dnhGNnDphpeLW4vwHlj/zyeFhv3EkLoo7fUaU4j VjuI8il483JjBsZARGxTZi9lBLg5ATXdTgu547DrnoPXdWr8bGf1OqVS48dHq55G Re7NPtHfTqqesdVtI3XkXWF3S8ReiSHVLebPmDECxPkY0PP9/cTEUZ9Tpz9LKkgR d70m1OJixwJq1FiuE6ioposNI92XVBoeECMvg2trywQSmWBs1fxGL5ZU0K9rfSLJ eWhs0T/B+QEmQQ== X-ME-Sender: Received: from v4.ozlabs.ibm.com (unknown [122.99.82.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 3FC787FA70; Wed, 18 Oct 2017 22:43:21 -0400 (EDT) From: Samuel Mendoza-Jonas To: netdev@vger.kernel.org Cc: Gavin Shan , "David S . Miller" , linux-kernel@vger.kernel.org, Samuel Mendoza-Jonas Subject: [PATCH net 4/5] net/ncsi: Enforce failover on link monitor timeout Date: Thu, 19 Oct 2017 13:43:08 +1100 Message-Id: <20171019024309.13628-4-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20171019024309.13628-1-sam@mendozajonas.com> References: <20171019024309.13628-1-sam@mendozajonas.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Gavin Shan The NCSI channel has been configured to provide service if its link monitor timer is enabled, regardless of its state (inactive or active). So the timeout event on the link monitor indicates the out-of-service on that channel, for which a failover is needed. This sets NCSI_DEV_RESHUFFLE flag to enforce failover on link monitor timeout, regardless the channel's original state (inactive or active). Also, the link is put into "down" state to give the failing channel lowest priority when selecting for the active channel. The state of failing channel should be set to active in order for deinitialization and failover to be done. Signed-off-by: Gavin Shan Signed-off-by: Samuel Mendoza-Jonas --- net/ncsi/ncsi-manage.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/net/ncsi/ncsi-manage.c b/net/ncsi/ncsi-manage.c index 0966eff48ce7..28c42b22b748 100644 --- a/net/ncsi/ncsi-manage.c +++ b/net/ncsi/ncsi-manage.c @@ -189,6 +189,7 @@ static void ncsi_channel_monitor(unsigned long data) struct ncsi_channel *nc = (struct ncsi_channel *)data; struct ncsi_package *np = nc->package; struct ncsi_dev_priv *ndp = np->ndp; + struct ncsi_channel_mode *ncm; struct ncsi_cmd_arg nca; bool enabled, chained; unsigned int monitor_state; @@ -228,20 +229,21 @@ static void ncsi_channel_monitor(unsigned long data) case NCSI_CHANNEL_MONITOR_WAIT ... NCSI_CHANNEL_MONITOR_WAIT_MAX: break; default: - if (!(ndp->flags & NCSI_DEV_HWA) && - state == NCSI_CHANNEL_ACTIVE) { + if (!(ndp->flags & NCSI_DEV_HWA)) { ncsi_report_link(ndp, true); ndp->flags |= NCSI_DEV_RESHUFFLE; } ncsi_stop_channel_monitor(nc); + ncm = &nc->modes[NCSI_MODE_LINK]; spin_lock_irqsave(&nc->lock, flags); nc->state = NCSI_CHANNEL_INVISIBLE; + ncm->data[2] &= ~0x1; spin_unlock_irqrestore(&nc->lock, flags); spin_lock_irqsave(&ndp->lock, flags); - nc->state = NCSI_CHANNEL_INACTIVE; + nc->state = NCSI_CHANNEL_ACTIVE; list_add_tail_rcu(&nc->link, &ndp->channel_queue); spin_unlock_irqrestore(&ndp->lock, flags); ncsi_process_next_channel(ndp); From patchwork Thu Oct 19 02:43:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Mendoza-Jonas X-Patchwork-Id: 827907 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=mendozajonas.com header.i=@mendozajonas.com header.b="Vj6RqKlZ"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="Wusckbph"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yHYCg1x2Bz9t7q for ; Thu, 19 Oct 2017 13:43:59 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751660AbdJSCnf (ORCPT ); Wed, 18 Oct 2017 22:43:35 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:42787 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751576AbdJSCnZ (ORCPT ); Wed, 18 Oct 2017 22:43:25 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 2065620E04; Wed, 18 Oct 2017 22:43:25 -0400 (EDT) Received: from frontend1 ([10.202.2.160]) by compute2.internal (MEProxy); Wed, 18 Oct 2017 22:43:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= mendozajonas.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=lPG5DVfQMUR/iQq4L5aozTNF9x747wdDhfzxGI/BK5I=; b=Vj6RqKlZ Mrto/k9xNJ0d/lhiLLKGoDGklgOhPrMxHQqbabnj20dNSF/hrTGqRCGNip/46UOW jlb8loijx+vIhHN8YMEKp+SiJYqLYxRLnZYlJObCEVav5chAAO6lJt6C+bk1JVe4 0q5lZbPfxAKbKTxdfUy6cJp1ngEjzfAh5NL6qRLCvDVeW0TmZ59whorHt3dLxtYh 9RdSMxQRJd/pecmNrGmxZrSoRjNv/d9ZSAk9CTMb9GPCCc2loZSOG1joupq8uOiL vvGuVko/6Lfqev1pHY0KucmNc3TvOE36/U1LhvCXGgN92ICyTLznllgM1FIT68Yt M2PjQwFW0yZPvg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=lPG5DVfQMUR/iQq4L5aozTNF9x747wdDhfzxGI/BK5I=; b=Wusckbph 0GS1oXP/s0CqUdrEC/zgFb43FTaWVuidOTBcauQh03a0jNZay3oO8LhbV5KDpngL s1fdsLVAWXCfLXAat737Ahq2reoL/FIKqF3+yukLjAdm8J5y+45pm6LHFhxHxTes zfxxvXY4tCfIrXKgbCb3w0KNrWP/X67jF5Fw3OWnt0e7LV0jDxYqjApWzSNQnbDb 4AumHcdtEJxb9VzAbLrbCLRGHsn+xYiqnfknTxcnTQivnZyZX4/cc+slKdxSv44t 47ynDIxoWd4XtpeNXj9cOBEmvwU09U/Boy43xM5GD3IjQWV71GXjaqdG4nZoQnV/ JCu5aRticDLrRA== X-ME-Sender: Received: from v4.ozlabs.ibm.com (unknown [122.99.82.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 551447F9D0; Wed, 18 Oct 2017 22:43:23 -0400 (EDT) From: Samuel Mendoza-Jonas To: netdev@vger.kernel.org Cc: Gavin Shan , "David S . Miller" , linux-kernel@vger.kernel.org, Samuel Mendoza-Jonas Subject: [PATCH net 5/5] net/ncsi: Fix length of GVI response packet Date: Thu, 19 Oct 2017 13:43:09 +1100 Message-Id: <20171019024309.13628-5-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20171019024309.13628-1-sam@mendozajonas.com> References: <20171019024309.13628-1-sam@mendozajonas.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Gavin Shan The length of GVI (GetVersionInfo) response packet should be 40 instead of 36. This issue was found from /sys/kernel/debug/ncsi/eth0/stats. # ethtool --ncsi eth0 swstats : RESPONSE OK TIMEOUT ERROR ======================================= GVI 0 0 2 With this applied, no error reported on GVI response packets: # ethtool --ncsi eth0 swstats : RESPONSE OK TIMEOUT ERROR ======================================= GVI 2 0 0 Signed-off-by: Gavin Shan Signed-off-by: Samuel Mendoza-Jonas --- 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 265b9a892d41..927dad4759d1 100644 --- a/net/ncsi/ncsi-rsp.c +++ b/net/ncsi/ncsi-rsp.c @@ -959,7 +959,7 @@ static struct ncsi_rsp_handler { { NCSI_PKT_RSP_EGMF, 4, ncsi_rsp_handler_egmf }, { NCSI_PKT_RSP_DGMF, 4, ncsi_rsp_handler_dgmf }, { NCSI_PKT_RSP_SNFC, 4, ncsi_rsp_handler_snfc }, - { NCSI_PKT_RSP_GVI, 36, ncsi_rsp_handler_gvi }, + { NCSI_PKT_RSP_GVI, 40, ncsi_rsp_handler_gvi }, { NCSI_PKT_RSP_GC, 32, ncsi_rsp_handler_gc }, { NCSI_PKT_RSP_GP, -1, ncsi_rsp_handler_gp }, { NCSI_PKT_RSP_GCPS, 172, ncsi_rsp_handler_gcps },