diff options
| author | msaitoh <msaitoh@NetBSD.org> | 2019-07-26 04:08:39 +0000 |
|---|---|---|
| committer | msaitoh <msaitoh@NetBSD.org> | 2019-07-26 04:08:39 +0000 |
| commit | 87d769e83ac3eb8d631a2b67b671ab8f1613eed9 (patch) | |
| tree | c1d057d32be7afe04918186d207cab84141ac947 /sys/dev | |
| parent | 42932d3d1a506363f7e5f64a7891a9faa3829029 (diff) | |
Set IVAR (Interrupt Vector Allocation Register) correctly for 82598 in
ixgbe_set_ivar(). Found by KUBSan.
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/pci/ixgbe/ixgbe.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/pci/ixgbe/ixgbe.c b/sys/dev/pci/ixgbe/ixgbe.c index a7e80783a54..a80cc580a1f 100644 --- a/sys/dev/pci/ixgbe/ixgbe.c +++ b/sys/dev/pci/ixgbe/ixgbe.c @@ -1,4 +1,4 @@ -/* $NetBSD: ixgbe.c,v 1.197 2019/07/26 03:28:13 msaitoh Exp $ */ +/* $NetBSD: ixgbe.c,v 1.198 2019/07/26 04:08:39 msaitoh Exp $ */ /****************************************************************************** @@ -4188,8 +4188,8 @@ ixgbe_set_ivar(struct adapter *adapter, u8 entry, u8 vector, s8 type) entry += (type * 64); index = (entry >> 2) & 0x1F; ivar = IXGBE_READ_REG(hw, IXGBE_IVAR(index)); - ivar &= ~(0xFF << (8 * (entry & 0x3))); - ivar |= (vector << (8 * (entry & 0x3))); + ivar &= ~(0xffUL << (8 * (entry & 0x3))); + ivar |= ((u32)vector << (8 * (entry & 0x3))); IXGBE_WRITE_REG(&adapter->hw, IXGBE_IVAR(index), ivar); break; case ixgbe_mac_82599EB: |
