[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20151223.225240.1999351612611929837.davem@davemloft.net>
Date: Wed, 23 Dec 2015 22:52:40 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: bjorn@...k.no
Cc: netdev@...r.kernel.org, linux-usb@...r.kernel.org,
mrkiko.rs@...il.com
Subject: Re: [PATCH net,stable] net: cdc_ncm: avoid changing RX/TX buffers
on MTU changes
From: Bjørn Mork <bjorn@...k.no>
Date: Wed, 23 Dec 2015 13:42:43 +0100
> NCM buffer sizes are negotiated with the device independently of
> the network device MTU. The RX buffers are allocated by the
> usbnet framework based on the rx_urb_size value set by cdc_ncm. A
> single RX buffer can hold a number of MTU sized packets.
>
> The default usbnet change_mtu ndo only modifies rx_urb_size if it
> is equal to hard_mtu. And the cdc_ncm driver will set rx_urb_size
> and hard_mtu independently of each other, based on dwNtbInMaxSize
> and dwNtbOutMaxSize respectively. It was therefore assumed that
> usbnet_change_mtu() would never touch rx_urb_size. This failed to
> consider the case where dwNtbInMaxSize and dwNtbOutMaxSize happens
> to be equal.
>
> Fix by implementing an NCM specific change_mtu ndo, modifying the
> netdev MTU without touching the buffer size settings.
>
> Signed-off-by: Bjørn Mork <bjorn@...k.no>
Applied and queued up for -stable, thanks!
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists