summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/function/u_ether.c
diff options
context:
space:
mode:
authorDave Airlie2016-11-07 00:37:09 +0100
committerDave Airlie2016-11-07 00:37:09 +0100
commit7b624ad8fea1be7ff4c22643e212191aa6a2a3c2 (patch)
tree41d0357d3259868cd85521c3fb9578cd2fc13831 /drivers/usb/gadget/function/u_ether.c
parentMerge tag 'omapdrm-4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tom... (diff)
parentLinux 4.9-rc4 (diff)
downloadkernel-qcow2-linux-7b624ad8fea1be7ff4c22643e212191aa6a2a3c2.tar.gz
kernel-qcow2-linux-7b624ad8fea1be7ff4c22643e212191aa6a2a3c2.tar.xz
kernel-qcow2-linux-7b624ad8fea1be7ff4c22643e212191aa6a2a3c2.zip
Backmerge tag 'v4.9-rc4' into drm-next
Linux 4.9-rc4 This is needed for nouveau development.
Diffstat (limited to 'drivers/usb/gadget/function/u_ether.c')
-rw-r--r--drivers/usb/gadget/function/u_ether.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/gadget/function/u_ether.c b/drivers/usb/gadget/function/u_ether.c
index 9c8c9ed1dc9e..fe1811650dbc 100644
--- a/drivers/usb/gadget/function/u_ether.c
+++ b/drivers/usb/gadget/function/u_ether.c
@@ -590,8 +590,9 @@ static netdev_tx_t eth_start_xmit(struct sk_buff *skb,
/* throttle high/super speed IRQ rate back slightly */
if (gadget_is_dualspeed(dev->gadget))
- req->no_interrupt = (dev->gadget->speed == USB_SPEED_HIGH ||
- dev->gadget->speed == USB_SPEED_SUPER)
+ req->no_interrupt = (((dev->gadget->speed == USB_SPEED_HIGH ||
+ dev->gadget->speed == USB_SPEED_SUPER)) &&
+ !list_empty(&dev->tx_reqs))
? ((atomic_read(&dev->tx_qlen) % dev->qmult) != 0)
: 0;