lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 31 Oct 2022 14:30:54 +0100 From: Andrew Lunn <andrew@...n.ch> To: Gaosheng Cui <cuigaosheng1@...wei.com> Cc: hkallweit1@...il.com, linux@...linux.org.uk, davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com, afleming@...escale.com, buytenh@...tstofly.org, netdev@...r.kernel.org Subject: Re: [PATCH v2] net: mdio: fix undefined behavior in bit shift for __mdiobus_register On Mon, Oct 31, 2022 at 09:26:45PM +0800, Gaosheng Cui wrote: > Shifting signed 32-bit value by 31 bits is undefined, so changing > significant bit to unsigned. The UBSAN warning calltrace like below: > > UBSAN: shift-out-of-bounds in drivers/net/phy/mdio_bus.c:586:27 > left shift of 1 by 31 places cannot be represented in type 'int' > Call Trace: > <TASK> > dump_stack_lvl+0x7d/0xa5 > dump_stack+0x15/0x1b > ubsan_epilogue+0xe/0x4e > __ubsan_handle_shift_out_of_bounds+0x1e7/0x20c > __mdiobus_register+0x49d/0x4e0 > fixed_mdio_bus_init+0xd8/0x12d > do_one_initcall+0x76/0x430 > kernel_init_freeable+0x3b3/0x422 > kernel_init+0x24/0x1e0 > ret_from_fork+0x1f/0x30 > </TASK> > > Fixes: 4fd5f812c23c ("phylib: allow incremental scanning of an mii bus") > Signed-off-by: Gaosheng Cui <cuigaosheng1@...wei.com> Reviewed-by: Andrew Lunn <andrew@...n.ch> Andrew
Powered by blists - more mailing lists