From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by dpdk.org (Postfix) with ESMTP id 0E0F7A84E for ; Fri, 26 Jan 2018 14:16:40 +0100 (CET) Received: by mail-wr0-f193.google.com with SMTP id d9so519617wre.3 for ; Fri, 26 Jan 2018 05:16:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=wby1tsk+9tvwVpjNj+ToKCsA8HN+fM9KUqiPcIc6A8c=; b=rlWEw6jvvUW7ycf/L4ozMF6SEihSscLgIAPczOLuzevohm+sMc9lFkZSNa7B71fVAT iW3yUICw9JH0rnOh/h0dtDfJVcWH0djFr2MjauO+B4vsGdp0kyeDJFyVQqGoSdtlc94W ptVDYigA8xkroLHS34L6pyQiZ5EKrZrDypjd1n234fMNJ4Kgl3Nr4AxrEroQ5knnQzdS B8afiCUEupqK1rGBVtfAghOQz2E5lPaWC83biEZ/rLztZWHzLCCKOaE3nuZUPVviSUtI GSckO8Q5ew3FBE2N/uPhwvMlj7SLnuBDwLEdwfJ4lsbvk5QLxjJLtlWTG9GxJg6h6db0 UKAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=wby1tsk+9tvwVpjNj+ToKCsA8HN+fM9KUqiPcIc6A8c=; b=bReKrDlVhYuF9cH+W6Rizmk520/twF7vUMIe21GQOJ/58ATzAwkesANpGUVS7C/m4i PKmZ2tlL7GP9+1b6xznRZPOM40kIkn6PlzU3cL2dq8NeoIrmCCrOhNBb87klKXMAoIhX pBLEurRt1AMhf/Ui7h7nwA6gFSalTFWOOfx6avOrrrDbfrZt7tjf04jA8uWWq6J+9HAr WORBp+60sxc8OATD+fBq5O0e4Ke2eotg9PEfJEYbBjeS22PUXex0dK8DMpJEwupC0HsE aFiAhVGGjqRAEUiwhRfrqu+nTIDWqOr4B/W+qqVH2HxREitahbIMO9vhdydUvWyxJEAt 4FLw== X-Gm-Message-State: AKwxytcurwzrAANfqeqXhWCOTkta+jOVy15Fz1wLmFOV2Uo4Y43RBtGX Snzl6bCY9pi6p1snKKSk26sPUViTrAs= X-Google-Smtp-Source: AH8x227cWaCVs5HfsbB+exttsruzWPjvAmclY62PHhAJbxYoAngH8YFbwTrzkPc4/QqrrG2Tn/Rohw== X-Received: by 10.223.134.104 with SMTP id 37mr11665123wrw.103.1516972599739; Fri, 26 Jan 2018 05:16:39 -0800 (PST) Received: from localhost ([2a00:23c5:bef3:400:9531:588b:44ae:bec4]) by smtp.gmail.com with ESMTPSA id j17sm4083484wmc.41.2018.01.26.05.16.39 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 26 Jan 2018 05:16:39 -0800 (PST) From: luca.boccassi@gmail.com To: Qi Zhang Cc: Wei Dai , dpdk stable Date: Fri, 26 Jan 2018 13:13:17 +0000 Message-Id: <20180126131332.15346-47-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20180126131332.15346-1-luca.boccassi@gmail.com> References: <20180126131332.15346-1-luca.boccassi@gmail.com> Subject: [dpdk-stable] patch 'net/e1000: fix mailbox interrupt handler' has been queued to LTS release 16.11.5 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Jan 2018 13:16:40 -0000 Hi, FYI, your patch has been queued to LTS release 16.11.5 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 01/28/18. So please shout if anyone has objections. Thanks. Luca Boccassi --- >>From 91485eca8ac3eea797188c9b85e9e1d89962bfdb Mon Sep 17 00:00:00 2001 From: Qi Zhang Date: Wed, 27 Dec 2017 15:22:30 -0500 Subject: [PATCH] net/e1000: fix mailbox interrupt handler [ upstream commit dd18b06a32833543c6951b6206ac39896eaac154 ] Mailbox interrupt handler only takecare of the PF reset notification, for other message mbx->ops.read should not be called since it gets chance to break the foreground VF to PF communication. Fixes: 316f4f1adc2e ("net/igb: support VF mailbox interrupt for link up/down") Signed-off-by: Qi Zhang Acked-by: Wei Dai --- drivers/net/e1000/igb_ethdev.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index b9b794388..3c85aff3d 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net/e1000/igb_ethdev.c @@ -2757,12 +2757,17 @@ void igbvf_mbx_process(struct rte_eth_dev *dev) struct e1000_mbx_info *mbx = &hw->mbx; u32 in_msg = 0; - if (mbx->ops.read(hw, &in_msg, 1, 0)) - return; + /* peek the message first */ + in_msg = E1000_READ_REG(hw, E1000_VMBMEM(0)); /* PF reset VF event */ - if (in_msg == E1000_PF_CONTROL_MSG) - _rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_INTR_RESET, NULL); + if (in_msg == E1000_PF_CONTROL_MSG) { + /* dummy mbx read to ack pf */ + if (mbx->ops.read(hw, &in_msg, 1, 0)) + return; + _rte_eth_dev_callback_process(dev, RTE_ETH_EVENT_INTR_RESET, + NULL); + } } static int -- 2.14.2