From 26d9565dfc3d2c7ae9ef26d3e2170bb07c94bea6 Mon Sep 17 00:00:00 2001 From: "Pedro F. Giffuni" Date: Mon, 9 Sep 2019 03:31:46 +0000 Subject: [PATCH] ral(4): Use unsigned to avoid undefined behavior. Found by NetBSD's kUBSan Obtained from: NetBSD (github 5b153f1) --- sys/dev/ral/rt2860.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ral/rt2860.c b/sys/dev/ral/rt2860.c index a4e049b6fe9..a298f412f6e 100644 --- a/sys/dev/ral/rt2860.c +++ b/sys/dev/ral/rt2860.c @@ -2220,7 +2220,7 @@ static void rt2860_enable_mrr(struct rt2860_softc *sc) { #define CCK(mcs) (mcs) -#define OFDM(mcs) (1 << 3 | (mcs)) +#define OFDM(mcs) (1U << 3 | (mcs)) RAL_WRITE(sc, RT2860_LG_FBK_CFG0, OFDM(6) << 28 | /* 54->48 */ OFDM(5) << 24 | /* 48->36 */ @@ -3325,7 +3325,7 @@ b4inc(uint32_t b32, int8_t delta) b4 = 0; else if (b4 > 0xf) b4 = 0xf; - b32 = b32 >> 4 | b4 << 28; + b32 = b32 >> 4 | (uint32_t)b4 << 28; } return b32; }