Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1637501
| From | Geliang Tang <geliangtang@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v2] usb: cdc-wdm: use memdup_user |
| Date | 2017-05-08 17:20 +0200 |
| Message-ID | <tESC6-5Ad-21@gated-at.bofh.it> (permalink) |
| References | <tEc09-2C6-11@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Use memdup_user() helper instead of open-coding to simplify the code.
Signed-off-by: Geliang Tang <geliangtang@gmail.com>
---
Changes in v2:
- return count instead of "rv < 0 ? rv : count".
---
drivers/usb/class/cdc-wdm.c | 17 ++++-------------
1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/drivers/usb/class/cdc-wdm.c b/drivers/usb/class/cdc-wdm.c
index 08669fe..8f97224 100644
--- a/drivers/usb/class/cdc-wdm.c
+++ b/drivers/usb/class/cdc-wdm.c
@@ -361,17 +361,9 @@ static ssize_t wdm_write
if (we < 0)
return usb_translate_errors(we);
- buf = kmalloc(count, GFP_KERNEL);
- if (!buf) {
- rv = -ENOMEM;
- goto outnl;
- }
-
- r = copy_from_user(buf, buffer, count);
- if (r > 0) {
- rv = -EFAULT;
- goto out_free_mem;
- }
+ buf = memdup_user(buffer, count);
+ if (IS_ERR(buf))
+ return PTR_ERR(buf);
/* concurrent writes and disconnect */
r = mutex_lock_interruptible(&desc->wlock);
@@ -441,8 +433,7 @@ static ssize_t wdm_write
usb_autopm_put_interface(desc->intf);
mutex_unlock(&desc->wlock);
-outnl:
- return rv < 0 ? rv : count;
+ return count;
out_free_mem_pm:
usb_autopm_put_interface(desc->intf);
--
2.9.3
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH] agp: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
[PATCH] wil6210: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
[PATCH] wlcore: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
[PATCH] usb: cdc-wdm: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
Re: [PATCH] usb: cdc-wdm: use memdup_user Bjørn Mork <bjorn@mork.no> - 2017-05-06 19:50 +0200
[PATCH v2] usb: cdc-wdm: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-08 17:20 +0200
Re: [PATCH v2] usb: cdc-wdm: use memdup_user Oliver Neukum <oneukum@suse.com> - 2017-05-09 10:00 +0200
[PATCH] net/hippi/rrunner: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
Re: [PATCH] net/hippi/rrunner: use memdup_user David Miller <davem@davemloft.net> - 2017-05-08 21:10 +0200
[PATCH] yam: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
Re: [PATCH] yam: use memdup_user David Miller <davem@davemloft.net> - 2017-05-08 21:10 +0200
[PATCH] spi: spidev: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
Re: [PATCH] spi: spidev: use memdup_user Geert Uytterhoeven <geert@linux-m68k.org> - 2017-05-08 11:30 +0200
[PATCH] xfrm: use memdup_user Geliang Tang <geliangtang@gmail.com> - 2017-05-06 17:50 +0200
csiph-web