Received: by 2002:ac2:464d:0:0:0:0:0 with SMTP id s13csp3681626lfo; Mon, 23 May 2022 11:16:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwwp3kwVZkmbhCqZ5cCbFQ1hSC5ajAkdIIYdwoXe6DPycPEERdAO+lIGzrD4k17CEyTsV+j X-Received: by 2002:a17:90b:1651:b0:1df:c567:ebb3 with SMTP id il17-20020a17090b165100b001dfc567ebb3mr241797pjb.171.1653329763203; Mon, 23 May 2022 11:16:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653329763; cv=none; d=google.com; s=arc-20160816; b=CUMaeu/Fnm4HzproEec7DqIkGBMCz9RCrvjXqOtg1A71BHQGRykaEc1j/fQZYjz3om MxOfV14qXo/+VEpU5F8CJeQ86ZnCyoqLygLrnorUxEbzGs3/U392JP5JTZQSTcODlyWa oSSzX8+mxxDG/Kgih7rqycXD93grtWV4zOlBOteOjTQRAct0pMN9l7A8uGXXsETR9dof 2TuDA04mbx9k1fpkPHlac8ofbCdQtZ20BjTtXNqAXyPUGNcJt3MvZ2tibnBaqEMRKaYa YQfARdyng9kn0MHxgQ0/zhU7Al7sr5s4Xh7H27O5qB2qT5GWN5BgKEMyUQyTAqOYojpW 02Ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=zIYZJohm9yFS8bnYa7N35lu98Lv0AAL3scDrpi08pLc=; b=Ijqj/K9XUa0c6YudC4U+w3NBQFNva7PoIfinflCjRgmsrESwoGVO1ydNdWp972olwg BN/uRDoQz/0M3tX/w5Qh/+m4YcWIqINupVGH3jix02bGDY0NRElYd8R2g+02hmLbrNi9 7TuB+OfVjnPtxSaHX8pN+wBXKbad9dJLUsSs2GwCWcmpRM6NgT1bjIFJ+m8Hin9/ZZoa q5vggcjbYsT0oqbUnOhEvRSZjgoz8Yd6nmhlG++itJ9bPbRGu3eE8JjRjWUVA5UAmdD+ +zpe5EXNZnds/ulf4B2RYdVAsK7xB/kqWEo6sx26sEdVTc0z8MW3eCpmLkz0JoTP8gtg rBOw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=dId8sHd+; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id i13-20020a170902eb4d00b0015e583f7b54si12010500pli.14.2022.05.23.11.16.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 May 2022 11:16:03 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=dId8sHd+; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id F071416645E; Mon, 23 May 2022 11:14:35 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244381AbiEWSLD (ORCPT + 99 others); Mon, 23 May 2022 14:11:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42384 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242768AbiEWRhq (ORCPT ); Mon, 23 May 2022 13:37:46 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4E29C59962; Mon, 23 May 2022 10:31:44 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id C520F60B35; Mon, 23 May 2022 17:28:58 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id AB343C385A9; Mon, 23 May 2022 17:28:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1653326938; bh=6SklDtGidVgIZZp/oP4XYbzfN+cbzLZbmoMisEZPbdo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dId8sHd+2oQYEs5lgdpKMorTecin1Iwx3CrLKztB7yGTfMM1JrMTi9ojDRkMkUEqS dJPb1YtqsXjj9Q+D/s6Giu5dT7ypRnC4m5AKhGdHsFozczdpQO9AibcCmejmcbKj7m 2uvKoQwBQJJRtK4dirrs/KecwKQX6+jR2DCsNskk= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Maxim Mikityanskiy , Tariq Toukan , Saeed Mahameed , Sasha Levin Subject: [PATCH 5.17 106/158] net/mlx5e: Properly block LRO when XDP is enabled Date: Mon, 23 May 2022 19:04:23 +0200 Message-Id: <20220523165848.759289169@linuxfoundation.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220523165830.581652127@linuxfoundation.org> References: <20220523165830.581652127@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Maxim Mikityanskiy [ Upstream commit cf6e34c8c22fba66bd21244b95ea47e235f68974 ] LRO is incompatible and mutually exclusive with XDP. However, the needed checks are only made when enabling XDP. If LRO is enabled when XDP is already active, the command will succeed, and XDP will be skipped in the data path, although still enabled. This commit fixes the bug by checking the XDP status in mlx5e_fix_features and disabling LRO if XDP is enabled. Fixes: 86994156c736 ("net/mlx5e: XDP fast RX drop bpf programs support") Signed-off-by: Maxim Mikityanskiy Reviewed-by: Tariq Toukan Signed-off-by: Saeed Mahameed Signed-off-by: Sasha Levin --- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c index d468daa7dc20..1f8fc8d77bc3 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_main.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_main.c @@ -3865,6 +3865,13 @@ static netdev_features_t mlx5e_fix_features(struct net_device *netdev, } } + if (params->xdp_prog) { + if (features & NETIF_F_LRO) { + netdev_warn(netdev, "LRO is incompatible with XDP\n"); + features &= ~NETIF_F_LRO; + } + } + if (MLX5E_GET_PFLAG(params, MLX5E_PFLAG_RX_CQE_COMPRESS)) { features &= ~NETIF_F_RXHASH; if (netdev->features & NETIF_F_RXHASH) -- 2.35.1