--- zzzz-none-000/linux-3.10.107/drivers/net/usb/rndis_host.c 2017-06-27 09:49:32.000000000 +0000 +++ vr9-7490-729/linux-3.10.107/drivers/net/usb/rndis_host.c 2021-11-10 11:53:55.000000000 +0000 @@ -383,6 +383,21 @@ net->mtu = dev->hard_mtu - net->hard_header_len; } + /* == 20150325 AVM/WK - FIX from 2.6.32: Adjust Rx Buffer Size == */ +#if 1 + if (tmp > dev->rx_urb_size) { + dev->rx_urb_size = 4096; + while (tmp > dev->rx_urb_size) { + dev->rx_urb_size += 4096; + if (dev->rx_urb_size >= (4*4096)) { + break; + } + } + dev_warn(&intf->dev, + "dev needs rx_urb_size %d, adjusting to %d\n", tmp, dev->rx_urb_size); + } +#endif + /* REVISIT: peripheral "alignment" request is ignored ... */ dev_dbg(&intf->dev, "hard mtu %u (%u from dev), rx buflen %Zu, align %d\n",