From patchwork Thu Oct 26 17:43:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Cengiz Can X-Patchwork-Id: 1855901 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=185.125.189.65; helo=lists.ubuntu.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=patchwork.ozlabs.org) Received: from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4SGY7C3Jwqz202k for ; Fri, 27 Oct 2023 04:43:35 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=lists.ubuntu.com) by lists.ubuntu.com with esmtp (Exim 4.86_2) (envelope-from ) id 1qw4OE-0001qR-Vz; Thu, 26 Oct 2023 17:43:27 +0000 Received: from smtp-relay-internal-1.internal ([10.131.114.114] helo=smtp-relay-internal-1.canonical.com) by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1qw4O5-0001oe-Vb for kernel-team@lists.ubuntu.com; Thu, 26 Oct 2023 17:43:18 +0000 Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id 9190F3FB61 for ; Thu, 26 Oct 2023 17:43:17 +0000 (UTC) Received: by mail-ed1-f70.google.com with SMTP id 4fb4d7f45d1cf-5402e97fdd1so864888a12.0 for ; Thu, 26 Oct 2023 10:43:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698342197; x=1698946997; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=S6Dqcmg6SqOPbi4XyONEMHDkhe0Y6bcg+u0n7fNDLV0=; b=aUhTsR42lXNHieQRzNomHtRvrDtOdRMDOeG+6H1leVtZcrE2UA5R7VHsQM+GHen+Ju N+mW+gejTqzN49UAsd6VV2M+FNKSrV7/KIkGOzKdQjAG1BbNk2MiCmD3taMcpa0/cw9y vnQkP0sFEK9Dc7f16FHCBSXGHrAJLw1gXBlUfjnlPnxVm4OXusR6wMaw4419pVI5rktC wzeIkFXI37y48WSb1hW50lT4cAAJVYiOmQX5+cs8yChfVhzXF49oxzTaK+nhZYFZTCWc btxf9vPW/f7X8LXVudu8in3dGeIYWVvmKDOxnalxivcMPZsJjU3vS1Y9pn4TK/KzxV3P 2phA== X-Gm-Message-State: AOJu0YyWlMme+47r+i9Rxo1Blcq+1ZXWbmOlgSb6HjjsLMdxGfnENY2b rpg+gU4vDgPRsbdSrz5gSV0LdTkNrYJkamRtWqefbEBlZbJQKdmucYp6hnijOz3SsrN7oGhQKH1 p5VULiPzLe8zxYyUD5m76LYM4JtX6/7CywZAqMlSAwzKsN9Pr1cnBdVQ= X-Received: by 2002:aa7:d745:0:b0:53e:2409:d6f3 with SMTP id a5-20020aa7d745000000b0053e2409d6f3mr412027eds.6.1698342196947; Thu, 26 Oct 2023 10:43:16 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG0KdgFqsAEZM7ToghREf2PJgz8D8EavdYo/Tv5LjJ4bf8xFZWftGId9JGvWOTHd3QOGjifKA== X-Received: by 2002:aa7:d745:0:b0:53e:2409:d6f3 with SMTP id a5-20020aa7d745000000b0053e2409d6f3mr412019eds.6.1698342196739; Thu, 26 Oct 2023 10:43:16 -0700 (PDT) Received: from localhost ([46.106.62.176]) by smtp.gmail.com with ESMTPSA id x36-20020a50baa7000000b00540e894609dsm3095901ede.17.2023.10.26.10.43.15 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Oct 2023 10:43:15 -0700 (PDT) From: Cengiz Can To: kernel-team@lists.ubuntu.com Subject: [SRU Focal, Jammy, OEM-6.0, Lunar 1/1] igb: set max size RX buffer when store bad packet is enabled Date: Thu, 26 Oct 2023 20:43:07 +0300 Message-Id: <20231026174307.5619-2-cengiz.can@canonical.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20231026174307.5619-1-cengiz.can@canonical.com> References: <20231026174307.5619-1-cengiz.can@canonical.com> MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: Radoslaw Tyl Increase the RX buffer size to 3K when the SBP bit is on. The size of the RX buffer determines the number of pages allocated which may not be sufficient for receive frames larger than the set MTU size. Cc: stable@vger.kernel.org Fixes: 89eaefb61dc9 ("igb: Support RX-ALL feature flag.") Reported-by: Manfred Rudigier Signed-off-by: Radoslaw Tyl Tested-by: Arpana Arland (A Contingent worker at Intel) Signed-off-by: Tony Nguyen Signed-off-by: David S. Miller (cherry picked from commit bb5ed01cd2428cd25b1c88a3a9cba87055eb289f) CVE-2023-45871 Signed-off-by: Cengiz Can --- drivers/net/ethernet/intel/igb/igb_main.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c index 6f2e9c606e4b..4dcb27d2f74d 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -4758,6 +4758,10 @@ void igb_configure_rx_ring(struct igb_adapter *adapter, static void igb_set_rx_buffer_len(struct igb_adapter *adapter, struct igb_ring *rx_ring) { +#if (PAGE_SIZE < 8192) + struct e1000_hw *hw = &adapter->hw; +#endif + /* set build_skb and buffer size flags */ clear_ring_build_skb_enabled(rx_ring); clear_ring_uses_large_buffer(rx_ring); @@ -4768,10 +4772,9 @@ static void igb_set_rx_buffer_len(struct igb_adapter *adapter, set_ring_build_skb_enabled(rx_ring); #if (PAGE_SIZE < 8192) - if (adapter->max_frame_size <= IGB_MAX_FRAME_BUILD_SKB) - return; - - set_ring_uses_large_buffer(rx_ring); + if (adapter->max_frame_size > IGB_MAX_FRAME_BUILD_SKB || + rd32(E1000_RCTL) & E1000_RCTL_SBP) + set_ring_uses_large_buffer(rx_ring); #endif }