usb: dwc3: gadget: avoid while (1) loop on completion
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 11 Aug 2016 11:38:37 +0000 (14:38 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Mon, 22 Aug 2016 07:45:37 +0000 (10:45 +0300)
commit31162af447d7afba6820e42ed9cf968ed74c64cd
tree4e2fe894f171787949b4139f46e323ba988625e0
parent08a36b543803b7fe39b66ca0529bea34a88dc77f
usb: dwc3: gadget: avoid while (1) loop on completion

We know that we have to iterate over the list of
started requests. Instead of looping forever, we can
rely on list_for_each_entry(). Likewise, instead of
a do {} while loop over all, maybe available,
scatterlist entries, we can detect if $this request
uses scatterlist and rely on for_each_sg().

This makes the code easier to follow while making
sure that we will *always* break out of the loop.

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/gadget.c