|
@@ -401,12 +401,12 @@ done:
|
|
|
static void rx_fill(struct eth_dev *dev, gfp_t gfp_flags)
|
|
|
{
|
|
|
struct usb_request *req;
|
|
|
- struct usb_request *tmp;
|
|
|
unsigned long flags;
|
|
|
|
|
|
/* fill unused rxq slots with some skb */
|
|
|
spin_lock_irqsave(&dev->req_lock, flags);
|
|
|
- list_for_each_entry_safe(req, tmp, &dev->rx_reqs, list) {
|
|
|
+ while (!list_empty(&dev->rx_reqs)) {
|
|
|
+ req = list_first_entry(&dev->rx_reqs, struct usb_request, list);
|
|
|
list_del_init(&req->list);
|
|
|
spin_unlock_irqrestore(&dev->req_lock, flags);
|
|
|
|
|
@@ -1125,7 +1125,6 @@ void gether_disconnect(struct gether *link)
|
|
|
{
|
|
|
struct eth_dev *dev = link->ioport;
|
|
|
struct usb_request *req;
|
|
|
- struct usb_request *tmp;
|
|
|
|
|
|
WARN_ON(!dev);
|
|
|
if (!dev)
|
|
@@ -1142,7 +1141,8 @@ void gether_disconnect(struct gether *link)
|
|
|
*/
|
|
|
usb_ep_disable(link->in_ep);
|
|
|
spin_lock(&dev->req_lock);
|
|
|
- list_for_each_entry_safe(req, tmp, &dev->tx_reqs, list) {
|
|
|
+ while (!list_empty(&dev->tx_reqs)) {
|
|
|
+ req = list_first_entry(&dev->tx_reqs, struct usb_request, list);
|
|
|
list_del(&req->list);
|
|
|
|
|
|
spin_unlock(&dev->req_lock);
|
|
@@ -1154,7 +1154,8 @@ void gether_disconnect(struct gether *link)
|
|
|
|
|
|
usb_ep_disable(link->out_ep);
|
|
|
spin_lock(&dev->req_lock);
|
|
|
- list_for_each_entry_safe(req, tmp, &dev->rx_reqs, list) {
|
|
|
+ while (!list_empty(&dev->rx_reqs)) {
|
|
|
+ req = list_first_entry(&dev->rx_reqs, struct usb_request, list);
|
|
|
list_del(&req->list);
|
|
|
|
|
|
spin_unlock(&dev->req_lock);
|