2020-04-03 13:21:48

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH] usb: gadget: legacy: fix redundant initialization warnings from cppcheck

Fix the following cppcheck warnings:

drivers/usb/gadget/legacy/inode.c:1364:8: style: Redundant initialization for 'value'. The initialized value is overwritten$
value = -EOPNOTSUPP;
^
drivers/usb/gadget/legacy/inode.c:1331:15: note: value is initialized
int value = -EOPNOTSUPP;
^
drivers/usb/gadget/legacy/inode.c:1364:8: note: value is overwritten
value = -EOPNOTSUPP;
^
drivers/usb/gadget/legacy/inode.c:1817:8: style: Redundant initialization for 'value'. The initialized value is overwritten$
value = -EINVAL;
^
drivers/usb/gadget/legacy/inode.c:1787:18: note: value is initialized
ssize_t value = len, length = len;
^
drivers/usb/gadget/legacy/inode.c:1817:8: note: value is overwritten
value = -EINVAL;
^

Reported-by: kbuild test robot <[email protected]>
Signed-off-by: Masahiro Yamada <[email protected]>
---

I do not think this is my fault because the addressed commit did not
touch this file, but the kbuild test robot sent me this report somehow:

https://lkml.org/lkml/2020/4/3/395

Anyway, the warnings are real, so I removed the redundant assignments.
I re-ran cppcheck and confirmed the warnings have been fixed.


drivers/usb/gadget/legacy/inode.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/usb/gadget/legacy/inode.c b/drivers/usb/gadget/legacy/inode.c
index aa0de9e35afa..3afddd3bea6e 100644
--- a/drivers/usb/gadget/legacy/inode.c
+++ b/drivers/usb/gadget/legacy/inode.c
@@ -1361,7 +1361,6 @@ gadgetfs_setup (struct usb_gadget *gadget, const struct usb_ctrlrequest *ctrl)

req->buf = dev->rbuf;
req->context = NULL;
- value = -EOPNOTSUPP;
switch (ctrl->bRequest) {

case USB_REQ_GET_DESCRIPTOR:
@@ -1784,7 +1783,7 @@ static ssize_t
dev_config (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
{
struct dev_data *dev = fd->private_data;
- ssize_t value = len, length = len;
+ ssize_t value, length = len;
unsigned total;
u32 tag;
char *kbuf;
--
2.17.1


2020-04-03 15:44:21

by Alan Stern

[permalink] [raw]
Subject: Re: [PATCH] usb: gadget: legacy: fix redundant initialization warnings from cppcheck

On Fri, 3 Apr 2020, Masahiro Yamada wrote:

> Fix the following cppcheck warnings:
>
> drivers/usb/gadget/legacy/inode.c:1364:8: style: Redundant initialization for 'value'. The initialized value is overwritten$
> value = -EOPNOTSUPP;
> ^
> drivers/usb/gadget/legacy/inode.c:1331:15: note: value is initialized
> int value = -EOPNOTSUPP;
> ^
> drivers/usb/gadget/legacy/inode.c:1364:8: note: value is overwritten
> value = -EOPNOTSUPP;
> ^
> drivers/usb/gadget/legacy/inode.c:1817:8: style: Redundant initialization for 'value'. The initialized value is overwritten$
> value = -EINVAL;
> ^
> drivers/usb/gadget/legacy/inode.c:1787:18: note: value is initialized
> ssize_t value = len, length = len;
> ^
> drivers/usb/gadget/legacy/inode.c:1817:8: note: value is overwritten
> value = -EINVAL;
> ^
>
> Reported-by: kbuild test robot <[email protected]>
> Signed-off-by: Masahiro Yamada <[email protected]>
> ---
>
> I do not think this is my fault because the addressed commit did not
> touch this file, but the kbuild test robot sent me this report somehow:
>
> https://lkml.org/lkml/2020/4/3/395
>
> Anyway, the warnings are real, so I removed the redundant assignments.
> I re-ran cppcheck and confirmed the warnings have been fixed.
>
>
> drivers/usb/gadget/legacy/inode.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/usb/gadget/legacy/inode.c b/drivers/usb/gadget/legacy/inode.c
> index aa0de9e35afa..3afddd3bea6e 100644
> --- a/drivers/usb/gadget/legacy/inode.c
> +++ b/drivers/usb/gadget/legacy/inode.c
> @@ -1361,7 +1361,6 @@ gadgetfs_setup (struct usb_gadget *gadget, const struct usb_ctrlrequest *ctrl)
>
> req->buf = dev->rbuf;
> req->context = NULL;
> - value = -EOPNOTSUPP;
> switch (ctrl->bRequest) {
>
> case USB_REQ_GET_DESCRIPTOR:
> @@ -1784,7 +1783,7 @@ static ssize_t
> dev_config (struct file *fd, const char __user *buf, size_t len, loff_t *ptr)
> {
> struct dev_data *dev = fd->private_data;
> - ssize_t value = len, length = len;
> + ssize_t value, length = len;
> unsigned total;
> u32 tag;
> char *kbuf;

Acked-by: Alan Stern <[email protected]>