The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=baa6e3af8525244e65a404fa13306fbca7feae9c
commit baa6e3af8525244e65a404fa13306fbca7feae9c Author: Kevin Bowling <[email protected]> AuthorDate: 2026-08-11 19:34:40 +0000 Commit: Kevin Bowling <[email protected]> CommitDate: 2026-08-11 20:59:33 +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. MFC after: 2 weeks --- 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 458452a8492e..2b9bd2da403c 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) {
