Re: [PATCH v3] misc: mei: client.c: fix problem of return '-EOVERFLOW' in mei_cl_write

From: Greg KH
Date: Mon Dec 04 2023 - 07:22:26 EST


On Tue, Nov 28, 2023 at 09:45:08AM +0800, Su Hui wrote:
> Clang static analyzer complains that value stored to 'rets' is never
> read.Using 'goto err' to go to the error path and fix this problem.
>
> Fixes: 8c8d964ce90f ("mei: move hbuf_depth from the mei device to the hw modules")
> Signed-off-by: Su Hui <suhui@xxxxxxxxxxxx>

How was this tested?

> ---
> v3:
> - using 'goto err' rather than 'buf_len=-EOVERFLOW'.(Thanks to Sasha)
>
> v2:
> - split v1 patch to different patches
> https://lore.kernel.org/all/20231120095523.178385-2-suhui@xxxxxxxxxxxx/
>
> v1:
> https://lore.kernel.org/all/5c98fc07-36a9-92cc-f8d6-c4efdc0c34aa@xxxxxxxxxxxx/
>
> drivers/misc/mei/client.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/misc/mei/client.c b/drivers/misc/mei/client.c
> index 7ea80779a0e2..0489bec4fded 100644
> --- a/drivers/misc/mei/client.c
> +++ b/drivers/misc/mei/client.c
> @@ -2033,7 +2033,7 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, unsigned long time
> hbuf_slots = mei_hbuf_empty_slots(dev);
> if (hbuf_slots < 0) {
> rets = -EOVERFLOW;
> - goto out;
> + goto err;

Please prove that this is correct, as based on the code logic, it seems
very wrong. I can't take this unless the code is tested properly.

thanks,

greg k-h