2015-12-08 12:24:11

by Pathak, Rahul (R.)

[permalink] [raw]
Subject: [PATCH v2] usb: Use memdup_user to reuse the code

From: Rahul Pathak <[email protected]>

Fixing coccicheck warning which recommends to use memdup_user instead
to reimplement its code, using memdup_user simplifies the code

./drivers/usb/core/devio.c:1398:11-18: WARNING opportunity for memdup_user

Changes after v1: setting isopkt=NULL for proper kfree() call

Signed-off-by: Rahul Pathak <[email protected]>
---
drivers/usb/core/devio.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c
index 38ae877c..844407c 100644
--- a/drivers/usb/core/devio.c
+++ b/drivers/usb/core/devio.c
@@ -1395,11 +1395,10 @@ static int proc_do_submiturb(struct usb_dev_state *ps, struct usbdevfs_urb *uurb
number_of_packets = uurb->number_of_packets;
isofrmlen = sizeof(struct usbdevfs_iso_packet_desc) *
number_of_packets;
- isopkt = kmalloc(isofrmlen, GFP_KERNEL);
- if (!isopkt)
- return -ENOMEM;
- if (copy_from_user(isopkt, iso_frame_desc, isofrmlen)) {
- ret = -EFAULT;
+ isopkt = memdup_user(iso_frame_desc, isofrmlen);
+ if (IS_ERR(isopkt)) {
+ ret = PTR_ERR(isopkt);
+ isopkt = NULL;
goto error;
}
for (totlen = u = 0; u < number_of_packets; u++) {
--
1.9.1


2015-12-08 15:23:13

by Alan Stern

[permalink] [raw]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

On Tue, 8 Dec 2015, Pathak, Rahul (R.) wrote:

> From: Rahul Pathak <[email protected]>
>
> Fixing coccicheck warning which recommends to use memdup_user instead
> to reimplement its code, using memdup_user simplifies the code
>
> ./drivers/usb/core/devio.c:1398:11-18: WARNING opportunity for memdup_user
>
> Changes after v1: setting isopkt=NULL for proper kfree() call

This line belongs below the "---" tear line, so that it doesn't show up
in the final commit changelog. People reading the final commit won't
care about earlier versions of the patch.

> Signed-off-by: Rahul Pathak <[email protected]>
> ---
> drivers/usb/core/devio.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c
> index 38ae877c..844407c 100644
> --- a/drivers/usb/core/devio.c
> +++ b/drivers/usb/core/devio.c
> @@ -1395,11 +1395,10 @@ static int proc_do_submiturb(struct usb_dev_state *ps, struct usbdevfs_urb *uurb
> number_of_packets = uurb->number_of_packets;
> isofrmlen = sizeof(struct usbdevfs_iso_packet_desc) *
> number_of_packets;
> - isopkt = kmalloc(isofrmlen, GFP_KERNEL);
> - if (!isopkt)
> - return -ENOMEM;
> - if (copy_from_user(isopkt, iso_frame_desc, isofrmlen)) {
> - ret = -EFAULT;
> + isopkt = memdup_user(iso_frame_desc, isofrmlen);
> + if (IS_ERR(isopkt)) {
> + ret = PTR_ERR(isopkt);
> + isopkt = NULL;
> goto error;
> }
> for (totlen = u = 0; u < number_of_packets; u++) {

Aside from that,

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

Alan Stern

2015-12-09 08:02:59

by Pathak, Rahul (R.)

[permalink] [raw]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

Hello Alan,

Should I resend this patch version with the tear line correction?

Regards
Rahul Pathak


________________________________________
From: Alan Stern <[email protected]>
Sent: Tuesday, December 8, 2015 8:53 PM
To: Pathak, Rahul (R.)
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

On Tue, 8 Dec 2015, Pathak, Rahul (R.) wrote:

> From: Rahul Pathak <[email protected]>
>
> Fixing coccicheck warning which recommends to use memdup_user instead
> to reimplement its code, using memdup_user simplifies the code
>
> ./drivers/usb/core/devio.c:1398:11-18: WARNING opportunity for memdup_user
>
> Changes after v1: setting isopkt=NULL for proper kfree() call

This line belongs below the "---" tear line, so that it doesn't show up
in the final commit changelog. People reading the final commit won't
care about earlier versions of the patch.

> Signed-off-by: Rahul Pathak <[email protected]>
> ---
> drivers/usb/core/devio.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c
> index 38ae877c..844407c 100644
> --- a/drivers/usb/core/devio.c
> +++ b/drivers/usb/core/devio.c
> @@ -1395,11 +1395,10 @@ static int proc_do_submiturb(struct usb_dev_state *ps, struct usbdevfs_urb *uurb
> number_of_packets = uurb->number_of_packets;
> isofrmlen = sizeof(struct usbdevfs_iso_packet_desc) *
> number_of_packets;
> - isopkt = kmalloc(isofrmlen, GFP_KERNEL);
> - if (!isopkt)
> - return -ENOMEM;
> - if (copy_from_user(isopkt, iso_frame_desc, isofrmlen)) {
> - ret = -EFAULT;
> + isopkt = memdup_user(iso_frame_desc, isofrmlen);
> + if (IS_ERR(isopkt)) {
> + ret = PTR_ERR(isopkt);
> + isopkt = NULL;
> goto error;
> }
> for (totlen = u = 0; u < number_of_packets; u++) {

Aside from that,

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

Alan Stern

2015-12-09 14:28:48

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

On Wed, Dec 09, 2015 at 08:02:53AM +0000, Pathak, Rahul (R.) wrote:
> Hello Alan,
>
> Should I resend this patch version with the tear line correction?

Why wouldn't you?

2015-12-11 20:25:44

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

On Wed, Dec 09, 2015 at 08:02:53AM +0000, Pathak, Rahul (R.) wrote:
> Hello Alan,
>
> Should I resend this patch version with the tear line correction?

Yes please.

2015-12-12 04:15:57

by Rahul Pathak

[permalink] [raw]
Subject: Re: [PATCH v2] usb: Use memdup_user to reuse the code

Hello Greg,

I have already resent the patch yesterday in new mail.

-- Sending this mail again because previous mail was blocked as spam.

Regards
Rahul

On Fri, Dec 11, 2015 at 10:01 PM, [email protected]
<[email protected]> wrote:
> On Wed, Dec 09, 2015 at 08:02:53AM +0000, Pathak, Rahul (R.) wrote:
>> Hello Alan,
>>
>> Should I resend this patch version with the tear line correction?
>
> Yes please.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-usb" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html