| From ccde0d580d0d6ba174c741230c3644fbb690ac4b Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sat, 8 May 2021 11:22:39 +0800 |
| Subject: um: fix error return code in winch_tramp() |
| |
| From: Zhen Lei <thunder.leizhen@huawei.com> |
| |
| [ Upstream commit ccf1236ecac476d9d2704866d9a476c86e387971 ] |
| |
| Fix to return a negative error code from the error handling case instead |
| of 0, as done elsewhere in this function. |
| |
| Fixes: 89df6bfc0405 ("uml: DEBUG_SHIRQ fixes") |
| Reported-by: Hulk Robot <hulkci@huawei.com> |
| Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com> |
| Acked-By: anton.ivanov@cambridgegreys.com |
| Signed-off-by: Richard Weinberger <richard@nod.at> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/um/drivers/chan_user.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| diff --git a/arch/um/drivers/chan_user.c b/arch/um/drivers/chan_user.c |
| index d8845d4aac6a..6040817c036f 100644 |
| --- a/arch/um/drivers/chan_user.c |
| +++ b/arch/um/drivers/chan_user.c |
| @@ -256,7 +256,8 @@ static int winch_tramp(int fd, struct tty_port *port, int *fd_out, |
| goto out_close; |
| } |
| |
| - if (os_set_fd_block(*fd_out, 0)) { |
| + err = os_set_fd_block(*fd_out, 0); |
| + if (err) { |
| printk(UM_KERN_ERR "winch_tramp: failed to set thread_fd " |
| "non-blocking.\n"); |
| goto out_close; |
| -- |
| 2.30.2 |
| |