Commit a69228de authored by Matthias Kaehlcke's avatar Matthias Kaehlcke Committed by Greg Kroah-Hartman

USB: drivers/block/ub.c: use list_for_each_entry()

Low performance USB storage driver: Use list_for_each_entry() instead
of list_for_each()
Signed-off-by: default avatarMatthias Kaehlcke <matthias.kaehlcke@gmail.com>
Cc: Pete Zaitcev <zaitcev@redhat.com>
Cc: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent acb11c8b
...@@ -1547,10 +1547,8 @@ static void ub_reset_enter(struct ub_dev *sc, int try) ...@@ -1547,10 +1547,8 @@ static void ub_reset_enter(struct ub_dev *sc, int try)
#endif #endif
#if 0 /* We let them stop themselves. */ #if 0 /* We let them stop themselves. */
struct list_head *p;
struct ub_lun *lun; struct ub_lun *lun;
list_for_each(p, &sc->luns) { list_for_each_entry(lun, &sc->luns, link) {
lun = list_entry(p, struct ub_lun, link);
blk_stop_queue(lun->disk->queue); blk_stop_queue(lun->disk->queue);
} }
#endif #endif
...@@ -1562,7 +1560,6 @@ static void ub_reset_task(struct work_struct *work) ...@@ -1562,7 +1560,6 @@ static void ub_reset_task(struct work_struct *work)
{ {
struct ub_dev *sc = container_of(work, struct ub_dev, reset_work); struct ub_dev *sc = container_of(work, struct ub_dev, reset_work);
unsigned long flags; unsigned long flags;
struct list_head *p;
struct ub_lun *lun; struct ub_lun *lun;
int lkr, rc; int lkr, rc;
...@@ -1608,8 +1605,7 @@ static void ub_reset_task(struct work_struct *work) ...@@ -1608,8 +1605,7 @@ static void ub_reset_task(struct work_struct *work)
spin_lock_irqsave(sc->lock, flags); spin_lock_irqsave(sc->lock, flags);
sc->reset = 0; sc->reset = 0;
tasklet_schedule(&sc->tasklet); tasklet_schedule(&sc->tasklet);
list_for_each(p, &sc->luns) { list_for_each_entry(lun, &sc->luns, link) {
lun = list_entry(p, struct ub_lun, link);
blk_start_queue(lun->disk->queue); blk_start_queue(lun->disk->queue);
} }
wake_up(&sc->reset_wait); wake_up(&sc->reset_wait);
...@@ -2348,7 +2344,6 @@ static int ub_probe_lun(struct ub_dev *sc, int lnum) ...@@ -2348,7 +2344,6 @@ static int ub_probe_lun(struct ub_dev *sc, int lnum)
static void ub_disconnect(struct usb_interface *intf) static void ub_disconnect(struct usb_interface *intf)
{ {
struct ub_dev *sc = usb_get_intfdata(intf); struct ub_dev *sc = usb_get_intfdata(intf);
struct list_head *p;
struct ub_lun *lun; struct ub_lun *lun;
unsigned long flags; unsigned long flags;
...@@ -2403,8 +2398,7 @@ static void ub_disconnect(struct usb_interface *intf) ...@@ -2403,8 +2398,7 @@ static void ub_disconnect(struct usb_interface *intf)
/* /*
* Unregister the upper layer. * Unregister the upper layer.
*/ */
list_for_each (p, &sc->luns) { list_for_each_entry(lun, &sc->luns, link) {
lun = list_entry(p, struct ub_lun, link);
del_gendisk(lun->disk); del_gendisk(lun->disk);
/* /*
* I wish I could do: * I wish I could do:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment