]> www.infradead.org Git - users/dwmw2/linux.git/commit
staging: greybus: uart: Fix atomicity violation in get_serial_info()
authorQiu-ji Chen <chenqiuji666@gmail.com>
Thu, 7 Nov 2024 11:33:37 +0000 (19:33 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 10 Nov 2024 07:02:37 +0000 (08:02 +0100)
commitfe0ebeafc3b723b2f8edf27ecec6d353b08397df
tree18623bffecd99d1ff7aef65eb642f1271f26e20a
parentc4838879bd4b3a63fbb63bdf304e8e15a6800c45
staging: greybus: uart: Fix atomicity violation in get_serial_info()

Our static checker found a bug where set_serial_info() uses a mutex, but
get_serial_info() does not. Fortunately, the impact of this is relatively
minor. It doesn't cause a crash or any other serious issues. However, if a
race condition occurs between set_serial_info() and get_serial_info(),
there is a chance that the data returned by get_serial_info() will be
meaningless.

Signed-off-by: Qiu-ji Chen <chenqiuji666@gmail.com>
Fixes: 0aad5ad563c8 ("greybus/uart: switch to ->[sg]et_serial()")
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Alex Elder <elder@riscstar.com>
Link: https://lore.kernel.org/r/20241107113337.402042-1-chenqiuji666@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/greybus/uart.c