Received: by 2002:ac0:950c:0:0:0:0:0 with SMTP id f12csp2290128imc; Tue, 12 Mar 2019 10:41:10 -0700 (PDT) X-Google-Smtp-Source: APXvYqw2nOTKUWy1uIvwuUoHR2scHm9mIMCUlCd8SYXIF8ee2fQIcf+OHDA22AyK6iuopH1jPfR/ X-Received: by 2002:a62:1f58:: with SMTP id f85mr39645411pff.39.1552412470012; Tue, 12 Mar 2019 10:41:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552412470; cv=none; d=google.com; s=arc-20160816; b=Fsv59Ycxc9JC1gYRjAml1m4JLcoek0aGNh75drp7Mbr1J9pdNEuvZTEjzan+ka6FG+ K7M+4lqlmkBCr++UJ09NkAJ/etSPG7MZRtrp3YUsvEPCv6+vFWSFNYAY3Au1dFWD98UL oT4AG9b00xd9q8Iz0zG5Pa6JnqGSfbmUX51W+ipj7ggzaR/Rx28uBSqk6IBq7trM3G7Y Lxhs7hjEWV7XKx7/y3inYjx2VAc34d1MiXkfFotjZdv4eOSAlfjstigs58KQgESL/ce9 l4FSSSQcn8+gxTsSW24MW1Nz9woFOxjtL/eUqqLTIzb7i8u6qkY1p5QjJX6i9zvEIapO wISg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=s5xablX+iiL9u77vQv+UMEj4rNMWtBfJ8Shm6gCPVpo=; b=cGBo6Xo0K8N4r/jIq4s8NgsMaUKx1S53aHldDZ52eEU9yIXEsIzSbUUBgcXnF8QZnk DiDQvMJ4GZIz1D6n1S19iP6r3wZW2N5qh5nqzB9XwZqyNx9l3eOw4gjD/ULD1+U/mqvY C81PSIwkpkqj620fr3AceINaEYyK4WtpSlj5lLGU7aEkO4o5FKO7v8pS2rtn/7uILd+S E8KYlkDLebzA3D4p+qJTo00I6sfZrYZicSHcF73bhpswOjRF026SoQJx70p498PKhD/a mrrqEoaHUhNhc5XhuNOWNNRS2T8FIk2YMZfDhq82ZlscAv26YOhjLVm8qVCvCI/zRVuL +v6Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xoonFR38; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x7si8673357plr.73.2019.03.12.10.40.53; Tue, 12 Mar 2019 10:41:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xoonFR38; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729251AbfCLRj5 (ORCPT + 99 others); Tue, 12 Mar 2019 13:39:57 -0400 Received: from mail.kernel.org ([198.145.29.99]:58140 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729057AbfCLRQR (ORCPT ); Tue, 12 Mar 2019 13:16:17 -0400 Received: from localhost (unknown [104.133.8.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 480572171F; Tue, 12 Mar 2019 17:16:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1552410976; bh=7C7HzkP0naJ2gjGOQA1o1FBLea4LBi8osBETpBfnjRE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xoonFR38dhaNoqFAlB5GYpg9R5EdDslus4hRXjjplnBIeBOdpINShe4DZvpEFHR6u PEfaX9S4kxRTFA5PBbOH3SRsQ3JmKZnjP3UJelU6uX/LfDgtE8/2gra75bInHlXcXd 5B36w6jvnnBhn0jstC+tFzCYMuFof1bhNvYWWJc8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Manish Chopra , Ariel Elior , "David S. Miller" , Sasha Levin Subject: [PATCH 4.14 067/135] qed: Fix bug in tx promiscuous mode settings Date: Tue, 12 Mar 2019 10:08:34 -0700 Message-Id: <20190312170347.476778812@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190312170341.127810985@linuxfoundation.org> References: <20190312170341.127810985@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit 9e71a15d8b5bbce25c637f7f8833cd3f45b65646 ] When running tx switched traffic between VNICs created via a bridge(to which VFs are added), adapter drops the unicast packets in tx flow due to VNIC's ucast mac being unknown to it. But VF interfaces being in promiscuous mode should have caused adapter to accept all the unknown ucast packets. Later, it was found that driver doesn't really configure tx promiscuous mode settings to accept all unknown unicast macs. This patch fixes tx promiscuous mode settings to accept all unknown/unmatched unicast macs and works out the scenario. Signed-off-by: Manish Chopra Signed-off-by: Ariel Elior Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/qlogic/qed/qed_l2.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/qlogic/qed/qed_l2.c b/drivers/net/ethernet/qlogic/qed/qed_l2.c index 83c1c4fa102b..5191b575d57b 100644 --- a/drivers/net/ethernet/qlogic/qed/qed_l2.c +++ b/drivers/net/ethernet/qlogic/qed/qed_l2.c @@ -607,6 +607,10 @@ qed_sp_update_accept_mode(struct qed_hwfn *p_hwfn, (!!(accept_filter & QED_ACCEPT_MCAST_MATCHED) && !!(accept_filter & QED_ACCEPT_MCAST_UNMATCHED))); + SET_FIELD(state, ETH_VPORT_TX_MODE_UCAST_ACCEPT_ALL, + (!!(accept_filter & QED_ACCEPT_UCAST_MATCHED) && + !!(accept_filter & QED_ACCEPT_UCAST_UNMATCHED))); + SET_FIELD(state, ETH_VPORT_TX_MODE_BCAST_ACCEPT_ALL, !!(accept_filter & QED_ACCEPT_BCAST)); @@ -2640,7 +2644,8 @@ static int qed_configure_filter_rx_mode(struct qed_dev *cdev, if (type == QED_FILTER_RX_MODE_TYPE_PROMISC) { accept_flags.rx_accept_filter |= QED_ACCEPT_UCAST_UNMATCHED | QED_ACCEPT_MCAST_UNMATCHED; - accept_flags.tx_accept_filter |= QED_ACCEPT_MCAST_UNMATCHED; + accept_flags.tx_accept_filter |= QED_ACCEPT_UCAST_UNMATCHED | + QED_ACCEPT_MCAST_UNMATCHED; } else if (type == QED_FILTER_RX_MODE_TYPE_MULTI_PROMISC) { accept_flags.rx_accept_filter |= QED_ACCEPT_MCAST_UNMATCHED; accept_flags.tx_accept_filter |= QED_ACCEPT_MCAST_UNMATCHED; -- 2.19.1