summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authormsaitoh <msaitoh@NetBSD.org>2019-07-25 09:01:56 +0000
committermsaitoh <msaitoh@NetBSD.org>2019-07-25 09:01:56 +0000
commita7970fc8ae83cf466b33a7e79f136d2337745c43 (patch)
tree085b6aa73f0ed008c25a3c1090f78be9f04ab322 /sys/dev
parent0e55aa46e798b8f42867e132cd93d1c2cac5ec2c (diff)
Fix VLAN filter setting. Found by KUBSan.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/pci/ixgbe/ixgbe.c6
-rw-r--r--sys/dev/pci/ixgbe/ixgbe_common.c4
-rw-r--r--sys/dev/pci/ixgbe/ixv.c6
3 files changed, 8 insertions, 8 deletions
diff --git a/sys/dev/pci/ixgbe/ixgbe.c b/sys/dev/pci/ixgbe/ixgbe.c
index 69e2a260750..716976257e0 100644
--- a/sys/dev/pci/ixgbe/ixgbe.c
+++ b/sys/dev/pci/ixgbe/ixgbe.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.194 2019/07/24 06:07:57 msaitoh Exp $ */
+/* $NetBSD: ixgbe.c,v 1.195 2019/07/25 09:01:56 msaitoh Exp $ */
/******************************************************************************
@@ -2339,7 +2339,7 @@ ixgbe_register_vlan(void *arg, struct ifnet *ifp, u16 vtag)
IXGBE_CORE_LOCK(adapter);
index = (vtag >> 5) & 0x7F;
bit = vtag & 0x1F;
- adapter->shadow_vfta[index] |= (1 << bit);
+ adapter->shadow_vfta[index] |= ((u32)1 << bit);
error = adapter->hw.mac.ops.set_vfta(&adapter->hw, vtag, 0, true,
true);
IXGBE_CORE_UNLOCK(adapter);
@@ -2370,7 +2370,7 @@ ixgbe_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag)
IXGBE_CORE_LOCK(adapter);
index = (vtag >> 5) & 0x7F;
bit = vtag & 0x1F;
- adapter->shadow_vfta[index] &= ~(1 << bit);
+ adapter->shadow_vfta[index] &= ~((u32)1 << bit);
error = adapter->hw.mac.ops.set_vfta(&adapter->hw, vtag, 0, false,
true);
IXGBE_CORE_UNLOCK(adapter);
diff --git a/sys/dev/pci/ixgbe/ixgbe_common.c b/sys/dev/pci/ixgbe/ixgbe_common.c
index 6988815b63d..e8cf4a7060f 100644
--- a/sys/dev/pci/ixgbe/ixgbe_common.c
+++ b/sys/dev/pci/ixgbe/ixgbe_common.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe_common.c,v 1.24 2019/07/25 07:05:44 msaitoh Exp $ */
+/* $NetBSD: ixgbe_common.c,v 1.25 2019/07/25 09:01:56 msaitoh Exp $ */
/******************************************************************************
SPDX-License-Identifier: BSD-3-Clause
@@ -4020,7 +4020,7 @@ s32 ixgbe_set_vfta_generic(struct ixgbe_hw *hw, u32 vlan, u32 vind,
* bits[4-0]: which bit in the register
*/
regidx = vlan / 32;
- vfta_delta = 1 << (vlan % 32);
+ vfta_delta = (u32)1 << (vlan % 32);
vfta = IXGBE_READ_REG(hw, IXGBE_VFTA(regidx));
/*
diff --git a/sys/dev/pci/ixgbe/ixv.c b/sys/dev/pci/ixgbe/ixv.c
index 6f831ad52a4..9280aaab539 100644
--- a/sys/dev/pci/ixgbe/ixv.c
+++ b/sys/dev/pci/ixgbe/ixv.c
@@ -1,4 +1,4 @@
-/*$NetBSD: ixv.c,v 1.121 2019/07/25 05:58:25 msaitoh Exp $*/
+/*$NetBSD: ixv.c,v 1.122 2019/07/25 09:01:56 msaitoh Exp $*/
/******************************************************************************
@@ -2074,7 +2074,7 @@ ixv_register_vlan(void *arg, struct ifnet *ifp, u16 vtag)
IXGBE_CORE_LOCK(adapter);
index = (vtag >> 5) & 0x7F;
bit = vtag & 0x1F;
- adapter->shadow_vfta[index] |= (1 << bit);
+ adapter->shadow_vfta[index] |= ((u32)1 << bit);
error = hw->mac.ops.set_vfta(hw, vtag, 0, true, false);
IXGBE_CORE_UNLOCK(adapter);
@@ -2109,7 +2109,7 @@ ixv_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag)
IXGBE_CORE_LOCK(adapter);
index = (vtag >> 5) & 0x7F;
bit = vtag & 0x1F;
- adapter->shadow_vfta[index] &= ~(1 << bit);
+ adapter->shadow_vfta[index] &= ~((u32)1 << bit);
error = hw->mac.ops.set_vfta(hw, vtag, 0, false, false);
IXGBE_CORE_UNLOCK(adapter);