diff options
author | Bjørn Mork <bjorn@mork.no> | 2014-05-16 23:48:24 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-05-17 06:39:01 +0400 |
commit | 43e4c6dfc0fd781e68f20caf563a06f5c6ece995 (patch) | |
tree | a93b3046f1204521f36dba8c57c7ca8e0c3d8d83 /include | |
parent | 70559b8970e52aa9962dc823fd4498af06809544 (diff) | |
download | linux-43e4c6dfc0fd781e68f20caf563a06f5c6ece995.tar.xz |
net: cdc_ncm: set reasonable padding limits
We pad frames larger than X to maximum size for devices which
don't need a ZLP after maximum sized frames. This allows the
device to optimize its transfers for one fixed buffer size.
X was arbitrarily set at 512 bytes regardless of real buffer
maximum, causing extreme overheads due to excessive padding of
larger tx buffers. Limit the padding to at most 3 full USB
packets, still allowing the overhead to payload ratio of 3/1.
Signed-off-by: Bjørn Mork <bjorn@mork.no>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/usb/cdc_ncm.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/usb/cdc_ncm.h b/include/linux/usb/cdc_ncm.h index 60a44b8a464e..79de6724d398 100644 --- a/include/linux/usb/cdc_ncm.h +++ b/include/linux/usb/cdc_ncm.h @@ -115,6 +115,7 @@ struct cdc_ncm_ctx { u16 tx_seq; u16 rx_seq; u16 connected; + u16 min_tx_pkt; }; u8 cdc_ncm_select_altsetting(struct usb_interface *intf); |