From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) (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 7B8CA37E2E4 for ; Tue, 22 Sep 2026 19:45:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.199 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790106339; cv=none; b=kNc99TfiZ+RvU6uUGCl/EneAatKnn454NM7kHQy0jbtdxZOuzPmeHhBxpILnCp4MBs9NtQ0kM+sUPXtY+f6k2o6eiOjSeFJSPyulfKOdci5j1fU7PmHn2eXrAhwq7OUuPLesWx5mp2tTNCB89y/HlulF9mdQ0zB6cIBNPRnhE2U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790106339; c=relaxed/simple; bh=oXFFnejGHk/Us9X8QbZEfrbMAeIL5C+EUjXTvLy9Z00=; h=Date:Mime-Version:Message-ID:Subject:From:To:Cc:Content-Type; b=f4yCb+vIwQkR64r+DKT4jBbBQLHoB+oDtdS9rEDsWHzPRb1UbNB2bDZzrL36Tk4kf9riyJMZMsQxT6EqzDznrDEbqr2gRnM9vQpqvCy7zoMemLstL7cIol381pJUBYkQPThZlI7BXrIyvqJA4SzYnqaObcpGL7SGm10zgzED2J0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--joshwash.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=b2Lx5vc1; arc=none smtp.client-ip=209.85.210.199 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--joshwash.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="b2Lx5vc1" Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-8627258ef12so364069b3a.2 for ; Tue, 22 Sep 2026 12:45:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1790106336; x=1790711136; darn=vger.kernel.org; h=content-type:cc:to:from:subject:message-id:mime-version:date:from :to:cc:subject:date:message-id:reply-to:content-type; bh=D+auiJXkML9Ew42TAOdwMIBsX1UWWb/LYGWGLP9hygw=; b=b2Lx5vc1tKUB6HtzMNgmFd+Nl4Vk4F+S8jLv46oMLTNIPybmE5RNXufWQfvZUH8hKI hZXV1dfLgwJoGGbqVQ8J3on0ykQmM2S1yMnPpo5KFLp24wz8pHExvtFdOq40/iOKgTAS AtcUaTen2Xvw9qFD6JgPOZ3Pvh0oSyzDXy3RDLnMBOisJSyETKwIGvYcM6PtoC2sewle VQfgBch4jUeJLNoFWFlepEp9qxV+rdK5v1aURUWS5qQSuRb9IXjbRDBPRyuL68bhUlJw zHgipEcYdZsKcozBM+u0els5wWfQ4yUAwN2kNeCRzb3A36piT+tGv3evr9c1wBymqcDq pfpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790106336; x=1790711136; h=content-type:cc:to:from:subject:message-id:mime-version:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=D+auiJXkML9Ew42TAOdwMIBsX1UWWb/LYGWGLP9hygw=; b=CcqtfIU3bxS2tUOQof0IjnKhywO77EFSTifb7nd8hgFqOU6wNctXGP2wGA5Wa9ljkD WsAdwdd9qDFP9h/YQPgR8ex2YSZrMLuPCFWmjGMf2WLZLAuUD4RF1dA6XngJ7hBMLLJB /uhEsrRa0BdIEXW0IplK9RE+9kYg+PCnlHb9tJ/WKIL8kB3/wBPCelje4xRqsC2S4Dx2 ERRQfOrRKfDMuS7vZ69Qab7lQ3eW81XU9xhQmmZCy2olO4eq6ni6exDrnfITTaIw4Rjb nW/LkkFnVyt3kHMaauRDAhSY9GNe+raiqIPfmyH+KypiuODfPGPnTKqobjTxARU4D1q5 yXqg== X-Forwarded-Encrypted: i=1; AKwUvBxP6sn1Pi2gotmIifRqLuOjHZZ9qAmIvAT/tZED9gL7NSt6tksocOJR0uhQwa/LVcRjwAdpU6DJ4u2g6Zw=@vger.kernel.org X-Gm-Message-State: AFuF++ljKalJAg7l+cBfhMeEq6vs7DZPmKdPIhL4gJNTDSPTCmtAOxzn OuOqpgY9Urei5RPMwl86ZAPKsDNO3nKHj4fWxFPWBfO/fdmUdO1WEoNKux7f+ewgHZwY01svoU8 VMnK+IwtZdSDrRg== X-Received: from pfbga25.prod.google.com ([2002:a05:6a00:6219:b0:872:9706:205a]) (user=joshwash job=prod-delivery.src-stubby-dispatcher) by 2002:a05:6a00:4612:b0:874:36c0:4d0e with SMTP id d2e1a72fcca58-87d1a5ae044mr628860b3a.8.1790106335585; Tue, 22 Sep 2026 12:45:35 -0700 (PDT) Date: Tue, 22 Sep 2026 12:45:24 -0700 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 X-Mailer: git-send-email 2.55.0.1082.g2b9226bbc0-goog Message-ID: <20260922194533.631387-1-joshwash@google.com> Subject: [PATCH net v2 0/9] gve: various XDP fixes From: Joshua Washington To: netdev@vger.kernel.org Cc: Joshua Washington , Harshitha Ramamurthy , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Alexei Starovoitov , Daniel Borkmann , Jesper Dangaard Brouer , John Fastabend , Stanislav Fomichev , Jordan Rhee , Willem de Bruijn , Tim Hostetler , Ankit Garg , Eddie Phillips , Praveen Kaligineedi , Jeroen de Borst , linux-kernel@vger.kernel.org, bpf@vger.kernel.org Content-Type: text/plain; charset="UTF-8" This patch series includes a number of XDP-related fixes, both in the control plane and the dataplane. A summary of the changes: 1) fix an issue where XDP packets weren't being counted against NAPI budget 2) fix an issue where XSK buffers that have not been processed are leaked when disabling XSK pools 3) fix an XSK buffer leak when an RX error descriptor comes back from the hardware 4) fix a NULL dereference due to incorrect registration of XSK pools on queues not set up in XSK zero copy mode 5) fix a deadlock introduced by attempting to acquire the netdev lock after it has already been acquired 6) fix a racy NULL dereference due to DMA umapping the XSK pool before queues are fully stopped 7) fix potential data race on priv->xsk_pool when the field is set while NAPIs are enabled 8) attempt to register memory model in all cases when disabling XSK pools 9) clean xdp frames when tearing down DQO queues --- v2: - introduce 3 new patches (7, 8, 9) based on Sashiko feedback - corrected stat counting for packets according work_done behavioral change (patch 1) Eddie Phillips (1): gve: prevent XDP frame leak and corruption during DQO TX cleanup Joshua Washington (8): gve: increment work_done for XDP and error packets gve: fix XSK buffer leak when rings are stopped gve: fix XSK buffer leak on error descriptor gve: don't register xsk pool on pre-existing queues in RDA mode gve: fix napi_disable deadlock when attempting to disable XSK pools gve: fix NULL dereference from premature XSK pool DMA unmap gve: disable NAPI when registering XSK pools in QPL mode gve: ensure XDP mem model is registered when disabling XSK pools drivers/net/ethernet/google/gve/gve_main.c | 153 +++++++---- drivers/net/ethernet/google/gve/gve_rx_dqo.c | 31 ++- drivers/net/ethernet/google/gve/gve_tx_dqo.c | 256 +++++++++++++------ 3 files changed, 314 insertions(+), 126 deletions(-) -- 2.55.0.1082.g2b9226bbc0-goog