Robert Dobrowolski <robert.dobrowolski@xxxxxxxxxxxxxxx> writes: > From: Rafal Redzimski <rafal.f.redzimski@xxxxxxxxx> > > Current implementation updates the mtu size and notify cdc_ncm > device using USB_CDC_SET_MAX_DATAGRAM_SIZE request about datagram > size change instead of changing rx_urb_size. > > Whenever mtu is being changed, datagram size should also be > updated. Definitely! Thanks for this. But looking at the code I believe you need to fix the calculation of maxmtu too. It is currently: int maxmtu = ctx->max_datagram_size - cdc_ncm_eth_hlen(dev); And cdc_ncm_set_dgram_size() updates ctx->max_datagram_size with the new mtu, meaning that you can only reduce the mtu. We should probably use cdc_ncm_max_dgram_size() instead here. And cdc_ncm_set_dgram_size() takes the datagram size with header as input (ref the above maxmtu calucalution), so it probably needs to called as cdc_ncm_set_dgram_size(dev, new_mtu + cdc_ncm_eth_hlen(dev)); to get it right. I think. None of this is tested on an actual device yet... Care to test if I'm right, and do a v2 if necessry? > Cc: <stable@xxxxxxxxxxxxxxx> This should be dropped for net. Ask David to queue it for stable instead. I usually do that by using a subject prefix like [PATCH net,stable v1] ... Bjørn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html