From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f73.google.com (mail-pj1-f73.google.com [209.85.216.73]) (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 74F6739D6D7 for ; Mon, 20 Apr 2026 17:18:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.73 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776705527; cv=none; b=TRv7/CbcK/gEkWtevYfq+1FlHMN8XI3eTi57A/Wvzh24E/CJPd5/fOp8WBefrs+aRnjEvJliGosgwYZArPXFuIzMVJekVO9p8fWhhMn0Vs48OeDffiIuRXYpzxukniMPojFfiNsBVXR6Kt3jquTZBX04K58y2ayw8xEHfbn2NFs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776705527; c=relaxed/simple; bh=8O3b3Qe7OMgCHoNg+DiP0hK3ss+m+yydWKT5V3D/PVg=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=kB7B6nDMWxeq6E/xLjk8ppgwsL51Rmf7Buy+ppcr+u16levoWCt1VdeuBHLAKLDmJhVfViSuYhC4gWSy7mBKWJo45FkFjgMdfnyao6kZpBr6lRagk31U3oYvugx7OCmAz47cfZfxGC23O+zviw2Zj87xZwwvVyjRcj9XkEuS70Y= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--hramamurthy.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=s+/d1ek0; arc=none smtp.client-ip=209.85.216.73 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--hramamurthy.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="s+/d1ek0" Received: by mail-pj1-f73.google.com with SMTP id 98e67ed59e1d1-358f058973fso3859320a91.1 for ; Mon, 20 Apr 2026 10:18:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1776705526; x=1777310326; 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=W2Wff/1M87WllLQ253qBp/0GFiYpAWG5OoBPum9csgI=; b=s+/d1ek0eYWKyo9FlOJl6eodJwXQY176qnv47efPy9x8rtd0/whgzHB0FRj8nATz9J CHbokX4bCrDScuJSQxO/WS6XEga6DuoVVqT1qIGdnhuytXsyhYyL5mOvxyidrgY47KvY axyG3P4d9aCdFDaRi8iHLirIssUoewM3IRQBzQITiMVP/tBWKuZrFzNzXZvQ9QvhKahO Q5UU8YLvE2c1q4CedpiaPk86Zhizn/vmGxe2g751E45OVaY2iO/AS20lwEBgbhW1SbNa prOcZaRow0kWLvSFGiLk1dPKG1yq9f1omZI3QK8owZu5HzZqkwSZlfNL+Tk7T0UQOFAJ TMYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776705526; x=1777310326; 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=W2Wff/1M87WllLQ253qBp/0GFiYpAWG5OoBPum9csgI=; b=igDxgApeAy7UxU7nnLK25393Li1pja3yWFdJnt/ftqZ/m6W9LMs9iq5ud63aa2RgOW 7S8nP7Kwe1f06XvTeQsoSNKV/0NsBzBLvvC+SjGYliGDw6W1d6EH6AFMeJHtPVxDRALl XEVjGjZjLvU1hPC6D2RlOLiIZ0DIIhsjVOOBYmYVtVvVlTbFQh14FUeFWFSYTBN++5wj gGOQeFm5rIaZ2Ta2n+0reOcKUHyRt6KVpj67YXizCdSsJXkOfz39QSYK2Tx23UYBMgf6 bz0b6LsJ1GE41ItMxY4dCyZwjG+DRir+ayS7ycTD8MY5hRdpRnlLA9qqMdZwdBfntTxC tE3Q== X-Forwarded-Encrypted: i=1; AFNElJ8CJ9FpuRXQ0WZZGQKeknOMa/EsBhnja5n0fhTtoB9ODjxS9jGzzOamkTG/XTHl49jIYNYrLHC356SGJIQ=@vger.kernel.org X-Gm-Message-State: AOJu0YwUHshWvXWgpvtLHvFQDHtssmYrI+6j7ztEoFVf7IKiLZbLZVtZ xr1YKwE3DS2vANOE+LaGS5VErPbNu5C9ogqXOugAjSr57im83hntwB0TgnYUgGbxa6DCJUO75+J ULPpNx3FHE8piTKTfVrU9EtIwow== X-Received: from pjbge22.prod.google.com ([2002:a17:90b:e16:b0:35e:4617:916b]) (user=hramamurthy job=prod-delivery.src-stubby-dispatcher) by 2002:a17:90a:e704:b0:35b:9896:cbcd with SMTP id 98e67ed59e1d1-361404b9b70mr13958806a91.27.1776705525487; Mon, 20 Apr 2026 10:18:45 -0700 (PDT) Date: Mon, 20 Apr 2026 17:18:36 +0000 In-Reply-To: <20260420171837.455487-1-hramamurthy@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260420171837.455487-1-hramamurthy@google.com> X-Mailer: git-send-email 2.54.0.rc1.555.g9c883467ad-goog Message-ID: <20260420171837.455487-4-hramamurthy@google.com> Subject: [PATCH net 3/4] gve: Use default min ring size when device option values are 0 From: Harshitha Ramamurthy To: netdev@vger.kernel.org Cc: joshwash@google.com, hramamurthy@google.com, andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, willemb@google.com, maolson@google.com, nktgrg@google.com, jfraker@google.com, ziweixiao@google.com, jacob.e.keller@intel.com, pkaligineedi@google.com, shailend@google.com, jordanrhee@google.com, stable@vger.kernel.org, linux-kernel@vger.kernel.org, Pin-yen Lin Content-Type: text/plain; charset="UTF-8" From: Pin-yen Lin On gvnic devices that support reporting minimum ring sizes, the device option always includes the min_(rx|tx)_ring_size fields, and the values will be 0 if they are not configured to be exposed. This makes the driver allow unexpected small ring size configurations from the userspace. Use the default ring size in the driver if the min ring sizes from the device option are 0. This was discovered by drivers/net/ring_reconfig.py selftest. Cc: stable@vger.kernel.org Fixes: ed4fb326947d ("gve: add support to read ring size ranges from the device") Reviewed-by: Joshua Washington Reviewed-by: Jordan Rhee Signed-off-by: Pin-yen Lin Signed-off-by: Harshitha Ramamurthy --- drivers/net/ethernet/google/gve/gve_adminq.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/google/gve/gve_adminq.c b/drivers/net/ethernet/google/gve/gve_adminq.c index b72cc0fa2ba2..57d898f6fa82 100644 --- a/drivers/net/ethernet/google/gve/gve_adminq.c +++ b/drivers/net/ethernet/google/gve/gve_adminq.c @@ -189,7 +189,9 @@ void gve_parse_device_option(struct gve_priv *priv, *dev_op_modify_ring = (void *)(option + 1); /* device has not provided min ring size */ - if (option_length == GVE_DEVICE_OPTION_NO_MIN_RING_SIZE) + if (option_length == GVE_DEVICE_OPTION_NO_MIN_RING_SIZE || + be16_to_cpu((*dev_op_modify_ring)->min_rx_ring_size) == 0 || + be16_to_cpu((*dev_op_modify_ring)->min_tx_ring_size) == 0) priv->default_min_ring_size = true; break; case GVE_DEV_OPT_ID_FLOW_STEERING: -- 2.54.0.rc0.605.g598a273b03-goog