git: aa8cfbac9f8c - stable/14 - ixgbe: Avoid a signed shift while assembling the PBA number

From: Kevin Bowling <kbowling_at_FreeBSD.org>
Date: Tue, 25 Aug 2026 00:42:54 UTC
The branch stable/14 has been updated by kbowling:

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

commit aa8cfbac9f8c96c9b627bfb597a33c358c9ffb14
Author:     Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-08-11 19:34:40 +0000
Commit:     Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-08-25 00:41:09 +0000

    ixgbe: Avoid a signed shift while assembling the PBA number
    
    The EEPROM word is promoted to signed int before the left shift when
    the cast is applied to the complete expression.  Cast the word first so
    all 16-bit values are shifted as unsigned data.
    
    This is the ixgbe counterpart of the e1000 correction imported from
    DPDK commit b932270c66.
    
    (cherry picked from commit baa6e3af8525244e65a404fa13306fbca7feae9c)
---
 sys/dev/ixgbe/ixgbe_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/dev/ixgbe/ixgbe_common.c b/sys/dev/ixgbe/ixgbe_common.c
index 116113b825c4..dd4dbb56cc25 100644
--- a/sys/dev/ixgbe/ixgbe_common.c
+++ b/sys/dev/ixgbe/ixgbe_common.c
@@ -770,7 +770,7 @@ s32 ixgbe_read_pba_num_generic(struct ixgbe_hw *hw, u32 *pba_num)
 		DEBUGOUT("NVM Not supported\n");
 		return IXGBE_NOT_IMPLEMENTED;
 	}
-	*pba_num = (u32)(data << 16);
+	*pba_num = (u32)data << 16;
 
 	ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM1_PTR, &data);
 	if (ret_val) {