From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f202.google.com (mail-dy1-f202.google.com [74.125.82.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 32CE7302140 for ; Fri, 27 Feb 2026 03:00:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.202 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772161205; cv=none; b=GdsuqxQxmDMnklusTRPkf3PRWFl7tqfJHEP5jhiib1qfVnzs8RXQxwuX/6RNFQqxT4pBCRCxylAu50BMFPgNGDayVkMIZp/mTo6HTlDcWZ8ggxDznhSEkrdCFpnGe0P4w1obGwg0VxgQLOAQfCEoTAK4tCSjaJbG6Be79pLWPPE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772161205; c=relaxed/simple; bh=5hkSc7MOOP+Ix5AXbXobx1Y0ayCvvlVMxg/JMbz5tJc=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=sOtPWWYJN/Speo/qvp0OpAeS5PNcG4Np/gD8ZSvKDc8rkMkx0hB8E7A5j4ZLrNc9n14tHHkWS01reQqH6Dtu3M6Svgngu7+rjV50frju3v4UXS0/PNFkJiq8ZSAzqzYt6btArkka5nTB06RCqxE5nOZThhTyS4Znvcb3mpiyE8o= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--srutherford.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=wuvEMzW5; arc=none smtp.client-ip=74.125.82.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--srutherford.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="wuvEMzW5" Received: by mail-dy1-f202.google.com with SMTP id 5a478bee46e88-2bdd4ce8dc3so23654374eec.0 for ; Thu, 26 Feb 2026 19:00:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1772161203; x=1772766003; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Aag84U4bQMRgEK4LMJHj0ESGi8aRjj2bE+3e30KaXgc=; b=wuvEMzW5GDDo82fRb/xs8DMzQZ3dJlQwuRMfEyyhPriOWUvQsaKJtlkIJjdvqRHIc2 fVy+HKRwGBc82DAhE1icQ/IChOi4zKo8eiYuTMfakz3+PDJUn72CytPZ31173LJKkG+n t4zH8Kj5NjcLY87kMD812NjZveVgmFVc25/33n40wqMF8DKu1GWhWHrqZCf1w2PrNHv5 mgKGrYs1Ekl2StXznFoKOI7tcYb/L2bh7ZFlZZoTkCnW5N5nXOtL9trpO1UtHy9NHJ78 IQwDiN7N8J7Nwe2jJR1SoNR0k4RpQg6igHPiPbGMMEX5Q8fY00J5R+VzN3FdKvFlIFYM 2+Ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772161203; x=1772766003; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Aag84U4bQMRgEK4LMJHj0ESGi8aRjj2bE+3e30KaXgc=; b=Dh54xtnDstDuGTEsADwlNYknpFi11v8P170jm6LkaK9KDdkLYtH7Hz7/iNd9qJbkhb +eCPgoxa30ULW5wv5xcKmbODqil04UULgiNGSuIvMnwoQSs9Clh/jy0RwyQdRHcgw4/z 8dXaJFf/hWT6Sg9ECxn9LxFWcZjr691x3WLApt0BTy4ZU8UVC+kZyFOOnvH/ENBqvHre q699/xaMTWdXWj7oCFatVkjDhrHNazMLOWyiBUP+DBM49vOIvcnDx2Y+WVtUQ+dgOktW hes/cR10zQMtpr4A3e+Kyhq1yqvJ2+LqJAonyagwBnlAKi22kZs+2DeENO8BTkI5mASy JEYA== X-Forwarded-Encrypted: i=1; AJvYcCUyR844jPpeaZQ4do75xERdJwPQ8EzFIQatusjpBUbpFhu0Vq591iMDoxxvZvkGKl9U0awSbK+vTrnAWP4=@vger.kernel.org X-Gm-Message-State: AOJu0YxTafgxPFAp0PSejgaQ4Re+kPRFv1jDmsFlB4v3RdNXoSYhciwZ AOTjq7sfAIlTtZsopVn+IRCOXVpvX41xMbJup9QN0L11/clHiSgEox3SkIFO8fJdfaYFYVvEdO2 H3z0OBGwLR81g9ffyt6Vwxm0zrA== X-Received: from dybkk8.prod.google.com ([2002:a05:7301:3c88:b0:2bd:b12b:3839]) (user=srutherford job=prod-delivery.src-stubby-dispatcher) by 2002:a05:7300:2325:b0:2b8:66f3:2522 with SMTP id 5a478bee46e88-2bde1c0ef97mr761496eec.3.1772161203130; Thu, 26 Feb 2026 19:00:03 -0800 (PST) Date: Fri, 27 Feb 2026 02:59:50 +0000 In-Reply-To: <20260227025950.174755-1-srutherford@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260227025950.174755-1-srutherford@google.com> X-Mailer: git-send-email 2.53.0.473.g4a7958ca14-goog Message-ID: <20260227025950.174755-2-srutherford@google.com> Subject: [RFC PATCH 1/1] Fix header clobber in IDPF with SWIOTLB enabled From: Steve Rutherford To: anthony.l.nguyen@intel.com, przemyslaw.kitszel@intel.com, aleksander.lobakin@intel.com Cc: andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Steve Rutherford Content-Type: text/plain; charset="UTF-8" When SWIOTLB and header split are enabled, IDPF sees empty packets in the rx queue. This is caused by libeth_rx_sync_for_cpu clobbering the synthesized header in the workaround (i.e. overflow) path. After the header is synthesized by idpf_rx_hsplit_wa, the sync call pulls from the empty SWIOTLB buffer, effectively zeroing out the buffer. This skips the extra sync in the workaround path in most cases. The one exception is that it calls sync to trigger a recycle for the header buffer when it fails to find a header in the payload. Signed-off-by: Steve Rutherford --- drivers/net/ethernet/intel/idpf/idpf_txrx.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/intel/idpf/idpf_txrx.c b/drivers/net/ethernet/intel/idpf/idpf_txrx.c index 3ddf7b1e85ef..b02195fa2813 100644 --- a/drivers/net/ethernet/intel/idpf/idpf_txrx.c +++ b/drivers/net/ethernet/intel/idpf/idpf_txrx.c @@ -3007,9 +3007,14 @@ static int idpf_rx_splitq_clean(struct idpf_rx_queue *rxq, int budget) u64_stats_update_begin(&rxq->stats_sync); u64_stats_inc(&rxq->q_stats.hsplit_buf_ovf); u64_stats_update_end(&rxq->stats_sync); - } - if (libeth_rx_sync_for_cpu(hdr, hdr_len)) { + /* Recycle the hdr buffer if unused */ + if (!hdr_len) + libeth_rx_sync_for_cpu(hdr, 0); + } else if (!libeth_rx_sync_for_cpu(hdr, hdr_len)) + hdr_len = 0; + + if (hdr_len) { skb = idpf_rx_build_skb(hdr, hdr_len); if (!skb) break; -- 2.53.0.473.g4a7958ca14-goog