Module Name: src Committed By: msaitoh Date: Wed Aug 7 15:29:03 UTC 2019
Modified Files: src/sys/dev/pci: if_jme.c Log Message: Avoid undefined behavior in jme_mii_write(). Found by kUBSan. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/dev/pci/if_jme.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/pci/if_jme.c diff -u src/sys/dev/pci/if_jme.c:1.44 src/sys/dev/pci/if_jme.c:1.45 --- src/sys/dev/pci/if_jme.c:1.44 Tue Jul 9 08:46:59 2019 +++ src/sys/dev/pci/if_jme.c Wed Aug 7 15:29:02 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_jme.c,v 1.44 2019/07/09 08:46:59 msaitoh Exp $ */ +/* $NetBSD: if_jme.c,v 1.45 2019/08/07 15:29:02 msaitoh Exp $ */ /* * Copyright (c) 2008 Manuel Bouyer. All rights reserved. @@ -58,7 +58,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_jme.c,v 1.44 2019/07/09 08:46:59 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_jme.c,v 1.45 2019/08/07 15:29:02 msaitoh Exp $"); #include <sys/param.h> @@ -1021,7 +1021,7 @@ jme_mii_write(device_t self, int phy, in bus_space_write_4(sc->jme_bt_mac, sc->jme_bh_mac, JME_SMI, SMI_OP_WRITE | SMI_OP_EXECUTE | - ((val << SMI_DATA_SHIFT) & SMI_DATA_MASK) | + (((uint32_t)val << SMI_DATA_SHIFT) & SMI_DATA_MASK) | SMI_PHY_ADDR(phy) | SMI_REG_ADDR(reg)); for (i = JME_PHY_TIMEOUT / 10; i > 0; i--) { delay(10);