diff options
author | Jesper Juhl <juhl-lkml@dif.dk> | 2005-04-18 20:39:34 -0400 |
---|---|---|
committer | Greg K-H <gregkh@suse.de> | 2005-04-18 20:39:34 -0400 |
commit | 1bc3c9e1e44c2059fe2ffa6ff70ad0a925d7b05f (patch) | |
tree | 0bc14ec53acf3b4c08a9995c7ea335e236435558 | |
parent | 6fd19f4b55f7fd1c9d8650bd7f8df2c81b69c5ca (diff) |
[PATCH] USB: kfree cleanup for drivers/usb/* - no need to check for NULL
Get rid of a bunch of redundant NULL pointer checks in drivers/usb/*,
there's no need to check a pointer for NULL before calling kfree() on it.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Index: gregkh-2.6/drivers/usb/class/audio.c
===================================================================
26 files changed, 91 insertions, 166 deletions
diff --git a/drivers/usb/class/audio.c b/drivers/usb/class/audio.c index f432b7d5b235..f8f21567cc22 100644 --- a/drivers/usb/class/audio.c +++ b/drivers/usb/class/audio.c | |||
@@ -649,14 +649,10 @@ static void usbin_stop(struct usb_audiodev *as) | |||
649 | } | 649 | } |
650 | } | 650 | } |
651 | set_current_state(TASK_RUNNING); | 651 | set_current_state(TASK_RUNNING); |
652 | if (u->durb[0].urb->transfer_buffer) | 652 | kfree(u->durb[0].urb->transfer_buffer); |
653 | kfree(u->durb[0].urb->transfer_buffer); | 653 | kfree(u->durb[1].urb->transfer_buffer); |
654 | if (u->durb[1].urb->transfer_buffer) | 654 | kfree(u->surb[0].urb->transfer_buffer); |
655 | kfree(u->durb[1].urb->transfer_buffer); | 655 | kfree(u->surb[1].urb->transfer_buffer); |
656 | if (u->surb[0].urb->transfer_buffer) | ||
657 | kfree(u->surb[0].urb->transfer_buffer); | ||
658 | if (u->surb[1].urb->transfer_buffer) | ||
659 | kfree(u->surb[1].urb->transfer_buffer); | ||
660 | u->durb[0].urb->transfer_buffer = u->durb[1].urb->transfer_buffer = | 656 | u->durb[0].urb->transfer_buffer = u->durb[1].urb->transfer_buffer = |
661 | u->surb[0].urb->transfer_buffer = u->surb[1].urb->transfer_buffer = NULL; | 657 | u->surb[0].urb->transfer_buffer = u->surb[1].urb->transfer_buffer = NULL; |
662 | } | 658 | } |
@@ -1009,21 +1005,17 @@ static int usbin_start(struct usb_audiodev *as) | |||
1009 | u->phase = 0; | 1005 | u->phase = 0; |
1010 | maxsze = (u->freqmax + 0x3fff) >> (14 - AFMT_BYTESSHIFT(u->format)); | 1006 | maxsze = (u->freqmax + 0x3fff) >> (14 - AFMT_BYTESSHIFT(u->format)); |
1011 | bufsz = DESCFRAMES * maxsze; | 1007 | bufsz = DESCFRAMES * maxsze; |
1012 | if (u->durb[0].urb->transfer_buffer) | 1008 | kfree(u->durb[0].urb->transfer_buffer); |
1013 | kfree(u->durb[0].urb->transfer_buffer); | ||
1014 | u->durb[0].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); | 1009 | u->durb[0].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); |
1015 | u->durb[0].urb->transfer_buffer_length = bufsz; | 1010 | u->durb[0].urb->transfer_buffer_length = bufsz; |
1016 | if (u->durb[1].urb->transfer_buffer) | 1011 | kfree(u->durb[1].urb->transfer_buffer); |
1017 | kfree(u->durb[1].urb->transfer_buffer); | ||
1018 | u->durb[1].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); | 1012 | u->durb[1].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); |
1019 | u->durb[1].urb->transfer_buffer_length = bufsz; | 1013 | u->durb[1].urb->transfer_buffer_length = bufsz; |
1020 | if (u->syncpipe) { | 1014 | if (u->syncpipe) { |
1021 | if (u->surb[0].urb->transfer_buffer) | 1015 | kfree(u->surb[0].urb->transfer_buffer); |
1022 | kfree(u->surb[0].urb->transfer_buffer); | ||
1023 | u->surb[0].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); | 1016 | u->surb[0].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); |
1024 | u->surb[0].urb->transfer_buffer_length = 3*SYNCFRAMES; | 1017 | u->surb[0].urb->transfer_buffer_length = 3*SYNCFRAMES; |
1025 | if (u->surb[1].urb->transfer_buffer) | 1018 | kfree(u->surb[1].urb->transfer_buffer); |
1026 | kfree(u->surb[1].urb->transfer_buffer); | ||
1027 | u->surb[1].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); | 1019 | u->surb[1].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); |
1028 | u->surb[1].urb->transfer_buffer_length = 3*SYNCFRAMES; | 1020 | u->surb[1].urb->transfer_buffer_length = 3*SYNCFRAMES; |
1029 | } | 1021 | } |
@@ -1128,14 +1120,10 @@ static void usbout_stop(struct usb_audiodev *as) | |||
1128 | } | 1120 | } |
1129 | } | 1121 | } |
1130 | set_current_state(TASK_RUNNING); | 1122 | set_current_state(TASK_RUNNING); |
1131 | if (u->durb[0].urb->transfer_buffer) | 1123 | kfree(u->durb[0].urb->transfer_buffer); |
1132 | kfree(u->durb[0].urb->transfer_buffer); | 1124 | kfree(u->durb[1].urb->transfer_buffer); |
1133 | if (u->durb[1].urb->transfer_buffer) | 1125 | kfree(u->surb[0].urb->transfer_buffer); |
1134 | kfree(u->durb[1].urb->transfer_buffer); | 1126 | kfree(u->surb[1].urb->transfer_buffer); |
1135 | if (u->surb[0].urb->transfer_buffer) | ||
1136 | kfree(u->surb[0].urb->transfer_buffer); | ||
1137 | if (u->surb[1].urb->transfer_buffer) | ||
1138 | kfree(u->surb[1].urb->transfer_buffer); | ||
1139 | u->durb[0].urb->transfer_buffer = u->durb[1].urb->transfer_buffer = | 1127 | u->durb[0].urb->transfer_buffer = u->durb[1].urb->transfer_buffer = |
1140 | u->surb[0].urb->transfer_buffer = u->surb[1].urb->transfer_buffer = NULL; | 1128 | u->surb[0].urb->transfer_buffer = u->surb[1].urb->transfer_buffer = NULL; |
1141 | } | 1129 | } |
@@ -1376,21 +1364,17 @@ static int usbout_start(struct usb_audiodev *as) | |||
1376 | u->phase = 0; | 1364 | u->phase = 0; |
1377 | maxsze = (u->freqmax + 0x3fff) >> (14 - AFMT_BYTESSHIFT(u->format)); | 1365 | maxsze = (u->freqmax + 0x3fff) >> (14 - AFMT_BYTESSHIFT(u->format)); |
1378 | bufsz = DESCFRAMES * maxsze; | 1366 | bufsz = DESCFRAMES * maxsze; |
1379 | if (u->durb[0].urb->transfer_buffer) | 1367 | kfree(u->durb[0].urb->transfer_buffer); |
1380 | kfree(u->durb[0].urb->transfer_buffer); | ||
1381 | u->durb[0].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); | 1368 | u->durb[0].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); |
1382 | u->durb[0].urb->transfer_buffer_length = bufsz; | 1369 | u->durb[0].urb->transfer_buffer_length = bufsz; |
1383 | if (u->durb[1].urb->transfer_buffer) | 1370 | kfree(u->durb[1].urb->transfer_buffer); |
1384 | kfree(u->durb[1].urb->transfer_buffer); | ||
1385 | u->durb[1].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); | 1371 | u->durb[1].urb->transfer_buffer = kmalloc(bufsz, GFP_KERNEL); |
1386 | u->durb[1].urb->transfer_buffer_length = bufsz; | 1372 | u->durb[1].urb->transfer_buffer_length = bufsz; |
1387 | if (u->syncpipe) { | 1373 | if (u->syncpipe) { |
1388 | if (u->surb[0].urb->transfer_buffer) | 1374 | kfree(u->surb[0].urb->transfer_buffer); |
1389 | kfree(u->surb[0].urb->transfer_buffer); | ||
1390 | u->surb[0].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); | 1375 | u->surb[0].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); |
1391 | u->surb[0].urb->transfer_buffer_length = 3*SYNCFRAMES; | 1376 | u->surb[0].urb->transfer_buffer_length = 3*SYNCFRAMES; |
1392 | if (u->surb[1].urb->transfer_buffer) | 1377 | kfree(u->surb[1].urb->transfer_buffer); |
1393 | kfree(u->surb[1].urb->transfer_buffer); | ||
1394 | u->surb[1].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); | 1378 | u->surb[1].urb->transfer_buffer = kmalloc(3*SYNCFRAMES, GFP_KERNEL); |
1395 | u->surb[1].urb->transfer_buffer_length = 3*SYNCFRAMES; | 1379 | u->surb[1].urb->transfer_buffer_length = 3*SYNCFRAMES; |
1396 | } | 1380 | } |
diff --git a/drivers/usb/class/bluetty.c b/drivers/usb/class/bluetty.c index 6bac65e0ade7..524023327c49 100644 --- a/drivers/usb/class/bluetty.c +++ b/drivers/usb/class/bluetty.c | |||
@@ -309,7 +309,7 @@ static int bluetooth_ctrl_msg (struct usb_bluetooth *bluetooth, int request, int | |||
309 | } | 309 | } |
310 | } | 310 | } |
311 | if (urb->transfer_buffer_length < len) { | 311 | if (urb->transfer_buffer_length < len) { |
312 | kfree (urb->transfer_buffer); | 312 | kfree(urb->transfer_buffer); |
313 | urb->transfer_buffer = kmalloc (len, GFP_KERNEL); | 313 | urb->transfer_buffer = kmalloc (len, GFP_KERNEL); |
314 | if (urb->transfer_buffer == NULL) { | 314 | if (urb->transfer_buffer == NULL) { |
315 | err ("%s - out of memory", __FUNCTION__); | 315 | err ("%s - out of memory", __FUNCTION__); |
@@ -535,7 +535,7 @@ static int bluetooth_write (struct tty_struct * tty, const unsigned char *buf, i | |||
535 | } | 535 | } |
536 | 536 | ||
537 | exit: | 537 | exit: |
538 | kfree (temp_buffer); | 538 | kfree(temp_buffer); |
539 | 539 | ||
540 | return retval; | 540 | return retval; |
541 | } | 541 | } |
diff --git a/drivers/usb/core/devices.c b/drivers/usb/core/devices.c index b87608b7051b..ef0b35731ff0 100644 --- a/drivers/usb/core/devices.c +++ b/drivers/usb/core/devices.c | |||
@@ -637,11 +637,8 @@ static int usb_device_open(struct inode *inode, struct file *file) | |||
637 | 637 | ||
638 | static int usb_device_release(struct inode *inode, struct file *file) | 638 | static int usb_device_release(struct inode *inode, struct file *file) |
639 | { | 639 | { |
640 | if (file->private_data) { | 640 | kfree(file->private_data); |
641 | kfree(file->private_data); | 641 | file->private_data = NULL; |
642 | file->private_data = NULL; | ||
643 | } | ||
644 | |||
645 | return 0; | 642 | return 0; |
646 | } | 643 | } |
647 | 644 | ||
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 15ac4d168862..d2d648ee8640 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c | |||
@@ -381,7 +381,7 @@ static void hub_tt_kevent (void *arg) | |||
381 | dev_err (&hdev->dev, | 381 | dev_err (&hdev->dev, |
382 | "clear tt %d (%04x) error %d\n", | 382 | "clear tt %d (%04x) error %d\n", |
383 | clear->tt, clear->devinfo, status); | 383 | clear->tt, clear->devinfo, status); |
384 | kfree (clear); | 384 | kfree(clear); |
385 | } | 385 | } |
386 | spin_unlock_irqrestore (&hub->tt.lock, flags); | 386 | spin_unlock_irqrestore (&hub->tt.lock, flags); |
387 | } | 387 | } |
@@ -728,15 +728,11 @@ static void hub_disconnect(struct usb_interface *intf) | |||
728 | list_del_init(&hub->event_list); | 728 | list_del_init(&hub->event_list); |
729 | spin_unlock_irq(&hub_event_lock); | 729 | spin_unlock_irq(&hub_event_lock); |
730 | 730 | ||
731 | if (hub->descriptor) { | 731 | kfree(hub->descriptor); |
732 | kfree(hub->descriptor); | 732 | hub->descriptor = NULL; |
733 | hub->descriptor = NULL; | ||
734 | } | ||
735 | 733 | ||
736 | if (hub->status) { | 734 | kfree(hub->status); |
737 | kfree(hub->status); | 735 | hub->status = NULL; |
738 | hub->status = NULL; | ||
739 | } | ||
740 | 736 | ||
741 | if (hub->buffer) { | 737 | if (hub->buffer) { |
742 | usb_buffer_free(hdev, sizeof(*hub->buffer), hub->buffer, | 738 | usb_buffer_free(hdev, sizeof(*hub->buffer), hub->buffer, |
@@ -2354,7 +2350,7 @@ check_highspeed (struct usb_hub *hub, struct usb_device *udev, int port1) | |||
2354 | schedule_work (&hub->leds); | 2350 | schedule_work (&hub->leds); |
2355 | } | 2351 | } |
2356 | } | 2352 | } |
2357 | kfree (qual); | 2353 | kfree(qual); |
2358 | } | 2354 | } |
2359 | 2355 | ||
2360 | static unsigned | 2356 | static unsigned |
diff --git a/drivers/usb/gadget/serial.c b/drivers/usb/gadget/serial.c index 2af3f785d5a1..f1762ed6db63 100644 --- a/drivers/usb/gadget/serial.c +++ b/drivers/usb/gadget/serial.c | |||
@@ -2312,9 +2312,8 @@ static struct gs_buf *gs_buf_alloc(unsigned int size, int kmalloc_flags) | |||
2312 | */ | 2312 | */ |
2313 | void gs_buf_free(struct gs_buf *gb) | 2313 | void gs_buf_free(struct gs_buf *gb) |
2314 | { | 2314 | { |
2315 | if (gb != NULL) { | 2315 | if (gb) { |
2316 | if (gb->buf_buf != NULL) | 2316 | kfree(gb->buf_buf); |
2317 | kfree(gb->buf_buf); | ||
2318 | kfree(gb); | 2317 | kfree(gb); |
2319 | } | 2318 | } |
2320 | } | 2319 | } |
diff --git a/drivers/usb/host/ehci-mem.c b/drivers/usb/host/ehci-mem.c index 9938697ff361..5c38ad869485 100644 --- a/drivers/usb/host/ehci-mem.c +++ b/drivers/usb/host/ehci-mem.c | |||
@@ -156,8 +156,7 @@ static void ehci_mem_cleanup (struct ehci_hcd *ehci) | |||
156 | ehci->periodic = NULL; | 156 | ehci->periodic = NULL; |
157 | 157 | ||
158 | /* shadow periodic table */ | 158 | /* shadow periodic table */ |
159 | if (ehci->pshadow) | 159 | kfree(ehci->pshadow); |
160 | kfree (ehci->pshadow); | ||
161 | ehci->pshadow = NULL; | 160 | ehci->pshadow = NULL; |
162 | } | 161 | } |
163 | 162 | ||
diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c index 98745a072d6f..49bd83ee0c75 100644 --- a/drivers/usb/host/uhci-hcd.c +++ b/drivers/usb/host/uhci-hcd.c | |||
@@ -890,8 +890,7 @@ up_failed: | |||
890 | debugfs_remove(uhci_debugfs_root); | 890 | debugfs_remove(uhci_debugfs_root); |
891 | 891 | ||
892 | debug_failed: | 892 | debug_failed: |
893 | if (errbuf) | 893 | kfree(errbuf); |
894 | kfree(errbuf); | ||
895 | 894 | ||
896 | errbuf_failed: | 895 | errbuf_failed: |
897 | 896 | ||
@@ -906,9 +905,7 @@ static void __exit uhci_hcd_cleanup(void) | |||
906 | warn("not all urb_priv's were freed!"); | 905 | warn("not all urb_priv's were freed!"); |
907 | 906 | ||
908 | debugfs_remove(uhci_debugfs_root); | 907 | debugfs_remove(uhci_debugfs_root); |
909 | 908 | kfree(errbuf); | |
910 | if (errbuf) | ||
911 | kfree(errbuf); | ||
912 | } | 909 | } |
913 | 910 | ||
914 | module_init(uhci_hcd_init); | 911 | module_init(uhci_hcd_init); |
diff --git a/drivers/usb/input/hid-core.c b/drivers/usb/input/hid-core.c index e625997694df..869ff73690ac 100644 --- a/drivers/usb/input/hid-core.c +++ b/drivers/usb/input/hid-core.c | |||
@@ -558,8 +558,7 @@ static void hid_free_device(struct hid_device *device) | |||
558 | } | 558 | } |
559 | } | 559 | } |
560 | 560 | ||
561 | if (device->rdesc) | 561 | kfree(device->rdesc); |
562 | kfree(device->rdesc); | ||
563 | kfree(device); | 562 | kfree(device); |
564 | } | 563 | } |
565 | 564 | ||
diff --git a/drivers/usb/media/dabusb.c b/drivers/usb/media/dabusb.c index 8823297d2191..6ca2fae99d2d 100644 --- a/drivers/usb/media/dabusb.c +++ b/drivers/usb/media/dabusb.c | |||
@@ -138,8 +138,7 @@ static int dabusb_free_queue (struct list_head *q) | |||
138 | #ifdef DEBUG | 138 | #ifdef DEBUG |
139 | dump_urb(b->purb); | 139 | dump_urb(b->purb); |
140 | #endif | 140 | #endif |
141 | if (b->purb->transfer_buffer) | 141 | kfree(b->purb->transfer_buffer); |
142 | kfree (b->purb->transfer_buffer); | ||
143 | usb_free_urb(b->purb); | 142 | usb_free_urb(b->purb); |
144 | tmp = p->next; | 143 | tmp = p->next; |
145 | list_del (p); | 144 | list_del (p); |
diff --git a/drivers/usb/media/ov511.c b/drivers/usb/media/ov511.c index 0fd7ffed3a98..d6051822416e 100644 --- a/drivers/usb/media/ov511.c +++ b/drivers/usb/media/ov511.c | |||
@@ -3915,10 +3915,8 @@ ov51x_do_dealloc(struct usb_ov511 *ov) | |||
3915 | ov->tempfbuf = NULL; | 3915 | ov->tempfbuf = NULL; |
3916 | 3916 | ||
3917 | for (i = 0; i < OV511_NUMSBUF; i++) { | 3917 | for (i = 0; i < OV511_NUMSBUF; i++) { |
3918 | if (ov->sbuf[i].data) { | 3918 | kfree(ov->sbuf[i].data); |
3919 | kfree(ov->sbuf[i].data); | 3919 | ov->sbuf[i].data = NULL; |
3920 | ov->sbuf[i].data = NULL; | ||
3921 | } | ||
3922 | } | 3920 | } |
3923 | 3921 | ||
3924 | for (i = 0; i < OV511_NUMFRAMES; i++) { | 3922 | for (i = 0; i < OV511_NUMFRAMES; i++) { |
@@ -5954,10 +5952,8 @@ error: | |||
5954 | up(&ov->cbuf_lock); | 5952 | up(&ov->cbuf_lock); |
5955 | } | 5953 | } |
5956 | 5954 | ||
5957 | if (ov) { | 5955 | kfree(ov); |
5958 | kfree(ov); | 5956 | ov = NULL; |
5959 | ov = NULL; | ||
5960 | } | ||
5961 | 5957 | ||
5962 | error_out: | 5958 | error_out: |
5963 | err("Camera initialization failed"); | 5959 | err("Camera initialization failed"); |
diff --git a/drivers/usb/media/se401.c b/drivers/usb/media/se401.c index 685bdae5cb62..f69e443cd1bc 100644 --- a/drivers/usb/media/se401.c +++ b/drivers/usb/media/se401.c | |||
@@ -868,13 +868,14 @@ static void usb_se401_remove_disconnected (struct usb_se401 *se401) | |||
868 | 868 | ||
869 | se401->dev = NULL; | 869 | se401->dev = NULL; |
870 | 870 | ||
871 | for (i=0; i<SE401_NUMSBUF; i++) if (se401->urb[i]) { | 871 | for (i=0; i<SE401_NUMSBUF; i++) |
872 | usb_kill_urb(se401->urb[i]); | 872 | if (se401->urb[i]) { |
873 | usb_free_urb(se401->urb[i]); | 873 | usb_kill_urb(se401->urb[i]); |
874 | se401->urb[i] = NULL; | 874 | usb_free_urb(se401->urb[i]); |
875 | kfree(se401->sbuf[i].data); | 875 | se401->urb[i] = NULL; |
876 | } | 876 | kfree(se401->sbuf[i].data); |
877 | for (i=0; i<SE401_NUMSCRATCH; i++) if (se401->scratch[i].data) { | 877 | } |
878 | for (i=0; i<SE401_NUMSCRATCH; i++) { | ||
878 | kfree(se401->scratch[i].data); | 879 | kfree(se401->scratch[i].data); |
879 | } | 880 | } |
880 | if (se401->inturb) { | 881 | if (se401->inturb) { |
diff --git a/drivers/usb/media/usbvideo.c b/drivers/usb/media/usbvideo.c index 298484aa27d2..24efb21969c6 100644 --- a/drivers/usb/media/usbvideo.c +++ b/drivers/usb/media/usbvideo.c | |||
@@ -1169,10 +1169,8 @@ static int usbvideo_v4l_open(struct inode *inode, struct file *file) | |||
1169 | } | 1169 | } |
1170 | RingQueue_Free(&uvd->dp); | 1170 | RingQueue_Free(&uvd->dp); |
1171 | for (i=0; i < USBVIDEO_NUMSBUF; i++) { | 1171 | for (i=0; i < USBVIDEO_NUMSBUF; i++) { |
1172 | if (uvd->sbuf[i].data != NULL) { | 1172 | kfree(uvd->sbuf[i].data); |
1173 | kfree (uvd->sbuf[i].data); | 1173 | uvd->sbuf[i].data = NULL; |
1174 | uvd->sbuf[i].data = NULL; | ||
1175 | } | ||
1176 | } | 1174 | } |
1177 | } | 1175 | } |
1178 | } | 1176 | } |
diff --git a/drivers/usb/media/w9968cf.c b/drivers/usb/media/w9968cf.c index 689e79e4bcee..ca9f3a30634f 100644 --- a/drivers/usb/media/w9968cf.c +++ b/drivers/usb/media/w9968cf.c | |||
@@ -3624,10 +3624,8 @@ w9968cf_usb_probe(struct usb_interface* intf, const struct usb_device_id* id) | |||
3624 | return 0; | 3624 | return 0; |
3625 | 3625 | ||
3626 | fail: /* Free unused memory */ | 3626 | fail: /* Free unused memory */ |
3627 | if (cam->control_buffer) | 3627 | kfree(cam->control_buffer); |
3628 | kfree(cam->control_buffer); | 3628 | kfree(cam->data_buffer); |
3629 | if (cam->data_buffer) | ||
3630 | kfree(cam->data_buffer); | ||
3631 | if (cam->v4ldev) | 3629 | if (cam->v4ldev) |
3632 | video_device_release(cam->v4ldev); | 3630 | video_device_release(cam->v4ldev); |
3633 | up(&cam->dev_sem); | 3631 | up(&cam->dev_sem); |
diff --git a/drivers/usb/misc/auerswald.c b/drivers/usb/misc/auerswald.c index a530bb976e43..6f7994f5a714 100644 --- a/drivers/usb/misc/auerswald.c +++ b/drivers/usb/misc/auerswald.c | |||
@@ -705,16 +705,12 @@ static int auerchain_control_msg (pauerchain_t acp, struct usb_device *dev, unsi | |||
705 | /* free a single auerbuf */ | 705 | /* free a single auerbuf */ |
706 | static void auerbuf_free (pauerbuf_t bp) | 706 | static void auerbuf_free (pauerbuf_t bp) |
707 | { | 707 | { |
708 | if (bp->bufp) { | 708 | kfree(bp->bufp); |
709 | kfree (bp->bufp); | 709 | kfree(bp->dr); |
710 | } | ||
711 | if (bp->dr) { | ||
712 | kfree (bp->dr); | ||
713 | } | ||
714 | if (bp->urbp) { | 710 | if (bp->urbp) { |
715 | usb_free_urb (bp->urbp); | 711 | usb_free_urb(bp->urbp); |
716 | } | 712 | } |
717 | kfree (bp); | 713 | kfree(bp); |
718 | } | 714 | } |
719 | 715 | ||
720 | /* free the buffers from an auerbuf list */ | 716 | /* free the buffers from an auerbuf list */ |
@@ -1093,14 +1089,12 @@ exit: | |||
1093 | */ | 1089 | */ |
1094 | static void auerswald_int_free (pauerswald_t cp) | 1090 | static void auerswald_int_free (pauerswald_t cp) |
1095 | { | 1091 | { |
1096 | if (cp->inturbp) { | 1092 | if (cp->inturbp) { |
1097 | usb_free_urb (cp->inturbp); | 1093 | usb_free_urb(cp->inturbp); |
1098 | cp->inturbp = NULL; | 1094 | cp->inturbp = NULL; |
1099 | } | 1095 | } |
1100 | if (cp->intbufp) { | 1096 | kfree(cp->intbufp); |
1101 | kfree (cp->intbufp); | 1097 | cp->intbufp = NULL; |
1102 | cp->intbufp = NULL; | ||
1103 | } | ||
1104 | } | 1098 | } |
1105 | 1099 | ||
1106 | /* This function is called to activate the interrupt | 1100 | /* This function is called to activate the interrupt |
diff --git a/drivers/usb/net/zd1201.c b/drivers/usb/net/zd1201.c index 938025e2c646..c81cd0a619bf 100644 --- a/drivers/usb/net/zd1201.c +++ b/drivers/usb/net/zd1201.c | |||
@@ -106,8 +106,7 @@ int zd1201_fw_upload(struct usb_device *dev, int apfw) | |||
106 | 106 | ||
107 | err = 0; | 107 | err = 0; |
108 | exit: | 108 | exit: |
109 | if (buf) | 109 | kfree(buf); |
110 | kfree(buf); | ||
111 | release_firmware(fw_entry); | 110 | release_firmware(fw_entry); |
112 | return err; | 111 | return err; |
113 | } | 112 | } |
diff --git a/drivers/usb/serial/belkin_sa.c b/drivers/usb/serial/belkin_sa.c index 86994d117c44..abb1b2c543bb 100644 --- a/drivers/usb/serial/belkin_sa.c +++ b/drivers/usb/serial/belkin_sa.c | |||
@@ -202,8 +202,7 @@ static void belkin_sa_shutdown (struct usb_serial *serial) | |||
202 | for (i=0; i < serial->num_ports; ++i) { | 202 | for (i=0; i < serial->num_ports; ++i) { |
203 | /* My special items, the standard routines free my urbs */ | 203 | /* My special items, the standard routines free my urbs */ |
204 | priv = usb_get_serial_port_data(serial->port[i]); | 204 | priv = usb_get_serial_port_data(serial->port[i]); |
205 | if (priv) | 205 | kfree(priv); |
206 | kfree(priv); | ||
207 | } | 206 | } |
208 | } | 207 | } |
209 | 208 | ||
diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c index db8f472d9e3f..d165f42d560d 100644 --- a/drivers/usb/serial/cypress_m8.c +++ b/drivers/usb/serial/cypress_m8.c | |||
@@ -1340,9 +1340,8 @@ static struct cypress_buf *cypress_buf_alloc(unsigned int size) | |||
1340 | 1340 | ||
1341 | static void cypress_buf_free(struct cypress_buf *cb) | 1341 | static void cypress_buf_free(struct cypress_buf *cb) |
1342 | { | 1342 | { |
1343 | if (cb != NULL) { | 1343 | if (cb) { |
1344 | if (cb->buf_buf != NULL) | 1344 | kfree(cb->buf_buf); |
1345 | kfree(cb->buf_buf); | ||
1346 | kfree(cb); | 1345 | kfree(cb); |
1347 | } | 1346 | } |
1348 | } | 1347 | } |
diff --git a/drivers/usb/serial/empeg.c b/drivers/usb/serial/empeg.c index 4d46394f351b..8d562ab454a8 100644 --- a/drivers/usb/serial/empeg.c +++ b/drivers/usb/serial/empeg.c | |||
@@ -550,8 +550,7 @@ failed_usb_register: | |||
550 | failed_usb_serial_register: | 550 | failed_usb_serial_register: |
551 | for (i = 0; i < NUM_URBS; ++i) { | 551 | for (i = 0; i < NUM_URBS; ++i) { |
552 | if (write_urb_pool[i]) { | 552 | if (write_urb_pool[i]) { |
553 | if (write_urb_pool[i]->transfer_buffer) | 553 | kfree(write_urb_pool[i]->transfer_buffer); |
554 | kfree(write_urb_pool[i]->transfer_buffer); | ||
555 | usb_free_urb(write_urb_pool[i]); | 554 | usb_free_urb(write_urb_pool[i]); |
556 | } | 555 | } |
557 | } | 556 | } |
@@ -575,8 +574,7 @@ static void __exit empeg_exit (void) | |||
575 | * the host controllers get fixed to set urb->dev = NULL after | 574 | * the host controllers get fixed to set urb->dev = NULL after |
576 | * the urb is finished. Otherwise this call oopses. */ | 575 | * the urb is finished. Otherwise this call oopses. */ |
577 | /* usb_kill_urb(write_urb_pool[i]); */ | 576 | /* usb_kill_urb(write_urb_pool[i]); */ |
578 | if (write_urb_pool[i]->transfer_buffer) | 577 | kfree(write_urb_pool[i]->transfer_buffer); |
579 | kfree(write_urb_pool[i]->transfer_buffer); | ||
580 | usb_free_urb (write_urb_pool[i]); | 578 | usb_free_urb (write_urb_pool[i]); |
581 | } | 579 | } |
582 | } | 580 | } |
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index 4afd905fe2fe..4c788c767a97 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c | |||
@@ -1347,9 +1347,7 @@ static int ftdi_common_startup (struct usb_serial *serial) | |||
1347 | priv->flags = ASYNC_LOW_LATENCY; | 1347 | priv->flags = ASYNC_LOW_LATENCY; |
1348 | 1348 | ||
1349 | /* Increase the size of read buffers */ | 1349 | /* Increase the size of read buffers */ |
1350 | if (port->bulk_in_buffer) { | 1350 | kfree(port->bulk_in_buffer); |
1351 | kfree (port->bulk_in_buffer); | ||
1352 | } | ||
1353 | port->bulk_in_buffer = kmalloc (BUFSZ, GFP_KERNEL); | 1351 | port->bulk_in_buffer = kmalloc (BUFSZ, GFP_KERNEL); |
1354 | if (!port->bulk_in_buffer) { | 1352 | if (!port->bulk_in_buffer) { |
1355 | kfree (priv); | 1353 | kfree (priv); |
@@ -1365,10 +1363,8 @@ static int ftdi_common_startup (struct usb_serial *serial) | |||
1365 | usb_free_urb (port->write_urb); | 1363 | usb_free_urb (port->write_urb); |
1366 | port->write_urb = NULL; | 1364 | port->write_urb = NULL; |
1367 | } | 1365 | } |
1368 | if (port->bulk_out_buffer) { | 1366 | kfree(port->bulk_out_buffer); |
1369 | kfree (port->bulk_out_buffer); | 1367 | port->bulk_out_buffer = NULL; |
1370 | port->bulk_out_buffer = NULL; | ||
1371 | } | ||
1372 | 1368 | ||
1373 | usb_set_serial_port_data(serial->port[0], priv); | 1369 | usb_set_serial_port_data(serial->port[0], priv); |
1374 | 1370 | ||
diff --git a/drivers/usb/serial/io_edgeport.c b/drivers/usb/serial/io_edgeport.c index e35b5adcd5fe..04bfe279d763 100644 --- a/drivers/usb/serial/io_edgeport.c +++ b/drivers/usb/serial/io_edgeport.c | |||
@@ -951,9 +951,7 @@ static void edge_bulk_out_cmd_callback (struct urb *urb, struct pt_regs *regs) | |||
951 | 951 | ||
952 | 952 | ||
953 | /* clean up the transfer buffer */ | 953 | /* clean up the transfer buffer */ |
954 | if (urb->transfer_buffer != NULL) { | 954 | kfree(urb->transfer_buffer); |
955 | kfree(urb->transfer_buffer); | ||
956 | } | ||
957 | 955 | ||
958 | /* Free the command urb */ | 956 | /* Free the command urb */ |
959 | usb_free_urb (urb); | 957 | usb_free_urb (urb); |
@@ -1266,16 +1264,12 @@ static void edge_close (struct usb_serial_port *port, struct file * filp) | |||
1266 | 1264 | ||
1267 | if (edge_port->write_urb) { | 1265 | if (edge_port->write_urb) { |
1268 | /* if this urb had a transfer buffer already (old transfer) free it */ | 1266 | /* if this urb had a transfer buffer already (old transfer) free it */ |
1269 | if (edge_port->write_urb->transfer_buffer != NULL) { | 1267 | kfree(edge_port->write_urb->transfer_buffer); |
1270 | kfree(edge_port->write_urb->transfer_buffer); | 1268 | usb_free_urb(edge_port->write_urb); |
1271 | } | ||
1272 | usb_free_urb (edge_port->write_urb); | ||
1273 | edge_port->write_urb = NULL; | 1269 | edge_port->write_urb = NULL; |
1274 | } | 1270 | } |
1275 | if (edge_port->txfifo.fifo) { | 1271 | kfree(edge_port->txfifo.fifo); |
1276 | kfree(edge_port->txfifo.fifo); | 1272 | edge_port->txfifo.fifo = NULL; |
1277 | edge_port->txfifo.fifo = NULL; | ||
1278 | } | ||
1279 | 1273 | ||
1280 | dbg("%s exited", __FUNCTION__); | 1274 | dbg("%s exited", __FUNCTION__); |
1281 | } | 1275 | } |
@@ -1419,11 +1413,9 @@ static void send_more_port_data(struct edgeport_serial *edge_serial, struct edge | |||
1419 | // get a pointer to the write_urb | 1413 | // get a pointer to the write_urb |
1420 | urb = edge_port->write_urb; | 1414 | urb = edge_port->write_urb; |
1421 | 1415 | ||
1422 | /* if this urb had a transfer buffer already (old transfer) free it */ | 1416 | /* make sure transfer buffer is freed */ |
1423 | if (urb->transfer_buffer != NULL) { | 1417 | kfree(urb->transfer_buffer); |
1424 | kfree(urb->transfer_buffer); | 1418 | urb->transfer_buffer = NULL; |
1425 | urb->transfer_buffer = NULL; | ||
1426 | } | ||
1427 | 1419 | ||
1428 | /* build the data header for the buffer and port that we are about to send out */ | 1420 | /* build the data header for the buffer and port that we are about to send out */ |
1429 | count = fifo->count; | 1421 | count = fifo->count; |
diff --git a/drivers/usb/serial/io_ti.c b/drivers/usb/serial/io_ti.c index 6c96fdaec36e..ebf9967f7c86 100644 --- a/drivers/usb/serial/io_ti.c +++ b/drivers/usb/serial/io_ti.c | |||
@@ -2845,9 +2845,8 @@ static struct edge_buf *edge_buf_alloc(unsigned int size) | |||
2845 | 2845 | ||
2846 | void edge_buf_free(struct edge_buf *eb) | 2846 | void edge_buf_free(struct edge_buf *eb) |
2847 | { | 2847 | { |
2848 | if (eb != NULL) { | 2848 | if (eb) { |
2849 | if (eb->buf_buf != NULL) | 2849 | kfree(eb->buf_buf); |
2850 | kfree(eb->buf_buf); | ||
2851 | kfree(eb); | 2850 | kfree(eb); |
2852 | } | 2851 | } |
2853 | } | 2852 | } |
diff --git a/drivers/usb/serial/kl5kusb105.c b/drivers/usb/serial/kl5kusb105.c index 49c602a0b4df..a11e829e38c8 100644 --- a/drivers/usb/serial/kl5kusb105.c +++ b/drivers/usb/serial/kl5kusb105.c | |||
@@ -341,8 +341,7 @@ static void klsi_105_shutdown (struct usb_serial *serial) | |||
341 | * finished. Otherwise this call | 341 | * finished. Otherwise this call |
342 | * oopses. */ | 342 | * oopses. */ |
343 | /* usb_kill_urb(write_urbs[j]); */ | 343 | /* usb_kill_urb(write_urbs[j]); */ |
344 | if (write_urbs[j]->transfer_buffer) | 344 | kfree(write_urbs[j]->transfer_buffer); |
345 | kfree(write_urbs[j]->transfer_buffer); | ||
346 | usb_free_urb (write_urbs[j]); | 345 | usb_free_urb (write_urbs[j]); |
347 | } | 346 | } |
348 | } | 347 | } |
diff --git a/drivers/usb/serial/omninet.c b/drivers/usb/serial/omninet.c index a1cba4b5fa23..b5f2c06d4f3e 100644 --- a/drivers/usb/serial/omninet.c +++ b/drivers/usb/serial/omninet.c | |||
@@ -178,7 +178,6 @@ static void omninet_close (struct usb_serial_port *port, struct file * filp) | |||
178 | { | 178 | { |
179 | struct usb_serial *serial = port->serial; | 179 | struct usb_serial *serial = port->serial; |
180 | struct usb_serial_port *wport; | 180 | struct usb_serial_port *wport; |
181 | struct omninet_data *od; | ||
182 | 181 | ||
183 | dbg("%s - port %d", __FUNCTION__, port->number); | 182 | dbg("%s - port %d", __FUNCTION__, port->number); |
184 | 183 | ||
@@ -186,9 +185,7 @@ static void omninet_close (struct usb_serial_port *port, struct file * filp) | |||
186 | usb_kill_urb(wport->write_urb); | 185 | usb_kill_urb(wport->write_urb); |
187 | usb_kill_urb(port->read_urb); | 186 | usb_kill_urb(port->read_urb); |
188 | 187 | ||
189 | od = usb_get_serial_port_data(port); | 188 | kfree(usb_get_serial_port_data(port)); |
190 | if (od) | ||
191 | kfree(od); | ||
192 | } | 189 | } |
193 | 190 | ||
194 | 191 | ||
diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c index 8e9b007bf44d..7eab5d4cf3a8 100644 --- a/drivers/usb/serial/pl2303.c +++ b/drivers/usb/serial/pl2303.c | |||
@@ -1044,9 +1044,8 @@ static struct pl2303_buf *pl2303_buf_alloc(unsigned int size) | |||
1044 | 1044 | ||
1045 | static void pl2303_buf_free(struct pl2303_buf *pb) | 1045 | static void pl2303_buf_free(struct pl2303_buf *pb) |
1046 | { | 1046 | { |
1047 | if (pb != NULL) { | 1047 | if (pb) { |
1048 | if (pb->buf_buf != NULL) | 1048 | kfree(pb->buf_buf); |
1049 | kfree(pb->buf_buf); | ||
1050 | kfree(pb); | 1049 | kfree(pb); |
1051 | } | 1050 | } |
1052 | } | 1051 | } |
diff --git a/drivers/usb/serial/ti_usb_3410_5052.c b/drivers/usb/serial/ti_usb_3410_5052.c index 98054876cca2..59c88de3e7ae 100644 --- a/drivers/usb/serial/ti_usb_3410_5052.c +++ b/drivers/usb/serial/ti_usb_3410_5052.c | |||
@@ -517,8 +517,7 @@ static void ti_shutdown(struct usb_serial *serial) | |||
517 | } | 517 | } |
518 | } | 518 | } |
519 | 519 | ||
520 | if (tdev) | 520 | kfree(tdev); |
521 | kfree(tdev); | ||
522 | usb_set_serial_data(serial, NULL); | 521 | usb_set_serial_data(serial, NULL); |
523 | } | 522 | } |
524 | 523 | ||
diff --git a/drivers/usb/storage/sddr55.c b/drivers/usb/storage/sddr55.c index 229ca181716b..8451779f4269 100644 --- a/drivers/usb/storage/sddr55.c +++ b/drivers/usb/storage/sddr55.c | |||
@@ -119,10 +119,8 @@ static int sddr55_status(struct us_data *us) | |||
119 | /* expect to get short transfer if no card fitted */ | 119 | /* expect to get short transfer if no card fitted */ |
120 | if (result == USB_STOR_XFER_SHORT || result == USB_STOR_XFER_STALLED) { | 120 | if (result == USB_STOR_XFER_SHORT || result == USB_STOR_XFER_STALLED) { |
121 | /* had a short transfer, no card inserted, free map memory */ | 121 | /* had a short transfer, no card inserted, free map memory */ |
122 | if (info->lba_to_pba) | 122 | kfree(info->lba_to_pba); |
123 | kfree(info->lba_to_pba); | 123 | kfree(info->pba_to_lba); |
124 | if (info->pba_to_lba) | ||
125 | kfree(info->pba_to_lba); | ||
126 | info->lba_to_pba = NULL; | 124 | info->lba_to_pba = NULL; |
127 | info->pba_to_lba = NULL; | 125 | info->pba_to_lba = NULL; |
128 | 126 | ||
@@ -649,18 +647,14 @@ static int sddr55_read_map(struct us_data *us) { | |||
649 | return -1; | 647 | return -1; |
650 | } | 648 | } |
651 | 649 | ||
652 | if (info->lba_to_pba) | 650 | kfree(info->lba_to_pba); |
653 | kfree(info->lba_to_pba); | 651 | kfree(info->pba_to_lba); |
654 | if (info->pba_to_lba) | ||
655 | kfree(info->pba_to_lba); | ||
656 | info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_NOIO); | 652 | info->lba_to_pba = kmalloc(numblocks*sizeof(int), GFP_NOIO); |
657 | info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_NOIO); | 653 | info->pba_to_lba = kmalloc(numblocks*sizeof(int), GFP_NOIO); |
658 | 654 | ||
659 | if (info->lba_to_pba == NULL || info->pba_to_lba == NULL) { | 655 | if (info->lba_to_pba == NULL || info->pba_to_lba == NULL) { |
660 | if (info->lba_to_pba != NULL) | 656 | kfree(info->lba_to_pba); |
661 | kfree(info->lba_to_pba); | 657 | kfree(info->pba_to_lba); |
662 | if (info->pba_to_lba != NULL) | ||
663 | kfree(info->pba_to_lba); | ||
664 | info->lba_to_pba = NULL; | 658 | info->lba_to_pba = NULL; |
665 | info->pba_to_lba = NULL; | 659 | info->pba_to_lba = NULL; |
666 | kfree(buffer); | 660 | kfree(buffer); |
@@ -728,10 +722,8 @@ static void sddr55_card_info_destructor(void *extra) { | |||
728 | if (!extra) | 722 | if (!extra) |
729 | return; | 723 | return; |
730 | 724 | ||
731 | if (info->lba_to_pba) | 725 | kfree(info->lba_to_pba); |
732 | kfree(info->lba_to_pba); | 726 | kfree(info->pba_to_lba); |
733 | if (info->pba_to_lba) | ||
734 | kfree(info->pba_to_lba); | ||
735 | } | 727 | } |
736 | 728 | ||
737 | 729 | ||