diff options
| author | Heiko Stuebner <heiko@sntech.de> | 2025-08-04 15:07:24 +0200 |
|---|---|---|
| committer | Lee Jones <lee@kernel.org> | 2025-10-01 10:28:14 +0100 |
| commit | bf2de43060d528e52e372c63182a94b95c80d305 (patch) | |
| tree | df189a4fc3314f507adfda6b32942a7034dcc8d4 | |
| parent | mfd: qnap-mcu: Include linux/types.h in qnap-mcu.h shared header (diff) | |
| download | linux-bf2de43060d528e52e372c63182a94b95c80d305.tar.gz linux-bf2de43060d528e52e372c63182a94b95c80d305.zip | |
mfd: qnap-mcu: Handle errors returned from qnap_mcu_write
qnap_mcu_write can return errors and those were not checked before.
So do that now.
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20250804130726.3180806-3-heiko@sntech.de
Signed-off-by: Lee Jones <lee@kernel.org>
| -rw-r--r-- | drivers/mfd/qnap-mcu.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/mfd/qnap-mcu.c b/drivers/mfd/qnap-mcu.c index 47d435c93dbb..e794efb6ecb1 100644 --- a/drivers/mfd/qnap-mcu.c +++ b/drivers/mfd/qnap-mcu.c @@ -163,7 +163,11 @@ int qnap_mcu_exec(struct qnap_mcu *mcu, reply->received = 0; reinit_completion(&reply->done); - qnap_mcu_write(mcu, cmd_data, cmd_data_size); + ret = qnap_mcu_write(mcu, cmd_data, cmd_data_size); + if (ret < 0) { + mutex_unlock(&mcu->bus_lock); + return ret; + } serdev_device_wait_until_sent(mcu->serdev, msecs_to_jiffies(QNAP_MCU_TIMEOUT_MS)); |
