]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
USB: usb-storage: Fix use of bitfields for hardware data in ene_ub6250.c
authorAlan Stern <stern@rowland.harvard.edu>
Thu, 17 Mar 2022 20:39:10 +0000 (16:39 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Apr 2022 12:14:37 +0000 (14:14 +0200)
commit2964ae5a4de610b2331bc369bc3e77a37297df0f
tree3f165c8ee33e67c91563304904a439b61ead392e
parent83df6ea8d54e049733c848749192e4d62469333a
USB: usb-storage: Fix use of bitfields for hardware data in ene_ub6250.c

commit 1892bf90677abcad7f06e897e308f5c3e3618dd4 upstream.

The kernel test robot found a problem with the ene_ub6250 subdriver in
usb-storage: It uses structures containing bitfields to represent
hardware bits in its SD_STATUS, MS_STATUS, and SM_STATUS bytes.  This
is not safe; it presumes a particular bit ordering and it assumes the
compiler will not insert padding, neither of which is guaranteed.

This patch fixes the problem by changing the structures to simple u8
values, with the bitfields replaced by bitmask constants.

CC: <stable@vger.kernel.org>
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/YjOcbuU106UpJ/V8@rowland.harvard.edu
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/storage/ene_ub6250.c