usbnet use the hard_mtu value for sizing the tx queue and nothing
else.  We will be transmitting buffers of up to tx_max size, so
that's the proper value to give usbnet.

The individual datagram size is completely irrelevant here.

Cc: Alexey Orishko <alexey.oris...@gmail.com>
Signed-off-by: Bjørn Mork <bj...@mork.no>
---
 drivers/net/usb/cdc_ncm.c |    9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
index 8fc1a06..c40f742 100644
--- a/drivers/net/usb/cdc_ncm.c
+++ b/drivers/net/usb/cdc_ncm.c
@@ -404,13 +404,6 @@ int cdc_ncm_bind_common(struct usbnet *dev, struct 
usb_interface *intf, u8 data_
 
                        ctx->ether_desc =
                                        (const struct usb_cdc_ether_desc *)buf;
-                       dev->hard_mtu =
-                               le16_to_cpu(ctx->ether_desc->wMaxSegmentSize);
-
-                       if (dev->hard_mtu < CDC_NCM_MIN_DATAGRAM_SIZE)
-                               dev->hard_mtu = CDC_NCM_MIN_DATAGRAM_SIZE;
-                       else if (dev->hard_mtu > CDC_NCM_MAX_DATAGRAM_SIZE)
-                               dev->hard_mtu = CDC_NCM_MAX_DATAGRAM_SIZE;
                        break;
 
                case USB_CDC_NCM_TYPE:
@@ -485,6 +478,8 @@ advance:
                dev_info(&dev->udev->dev, "MAC-Address: %pM\n", 
dev->net->dev_addr);
        }
 
+       /* usbnet use these values for sizing tx/rx queues */
+       dev->hard_mtu = ctx->tx_max;
        dev->rx_urb_size = ctx->rx_max;
 
        return 0;
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to