git: d38e0889d20e - main - ice: Report VF queue enable failures as hardware errors

From: Kevin Bowling <kbowling_at_FreeBSD.org>
Date: Thu, 17 Sep 2026 08:05:35 UTC
The branch main has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=d38e0889d20eed3885a020993b72dc9855148ba3

commit d38e0889d20eed3885a020993b72dc9855148ba3
Author:     Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-09-17 06:53:41 +0000
Commit:     Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-09-17 08:05:01 +0000

    ice: Report VF queue enable failures as hardware errors
    
    The ENABLE_QUEUES handler has already validated the queue selection
    before attempting to enable Rx hardware.  A timeout or unexpected queue
    state is an operation failure, not an invalid virtchnl parameter.
    
    Return VIRTCHNL_STATUS_ERR_ADMIN_QUEUE_ERROR for these failures, matching
    the disable path.  Keep ERR_PARAM for invalid requests and attempts to
    enable unconfigured queues.  Preserve the recorded state of queues which
    were enabled before a later queue failed.
    
    MFC after:      2 weeks
    Sponsored by:   BBOX.io
---
 sys/dev/ice/ice_iov.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/ice/ice_iov.c b/sys/dev/ice/ice_iov.c
index 0278d10abd36..0d53f8f14253 100644
--- a/sys/dev/ice/ice_iov.c
+++ b/sys/dev/ice/ice_iov.c
@@ -1530,7 +1530,7 @@ ice_vc_enable_queues_msg(struct ice_softc *sc, struct ice_vf *vf, u8 *msg_buf)
 			device_printf(sc->dev,
 			    "Unable to enable VF-%d Rx queue %d: %s\n",
 			    vf->vf_num, bit, ice_err_str(error));
-			v_status = VIRTCHNL_STATUS_ERR_PARAM;
+			v_status = VIRTCHNL_STATUS_ERR_ADMIN_QUEUE_ERROR;
 			goto done;
 		}
 		vf->rxq_enabled |= BIT(bit);