Message ID | B60B8A4B-92A0-49B3-805D-809A2433B46C@abv.bg |
---|---|
State | New |
Headers | show |
Series | ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback | expand |
On Tue, Jul 20, 2021 at 12:37:43PM +0300, Georgi Valkov wrote: > ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback > https://github.com/openwrt/openwrt/pull/4084 > > > From dd109ded2b526636fff438d33433ab64ffd21583 Mon Sep 17 00:00:00 2001 > From: Georgi Valkov <gvalkov@abv.bg> > Date: Fri, 16 Apr 2021 20:44:36 +0300 > Subject: [PATCH] ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback > > When rx_buf is allocated we need to account for IPHETH_IP_ALIGN, > which reduces the usable size by 2 bytes. Otherwise we have 1512 > bytes usable instead of 1514, and if we receive more than 1512 > bytes, ipheth_rcvbulk_callback is called with status -EOVERFLOW, > after which the driver malfunctiones and all communication stops. > > Fixes: ipheth 2-1:4.2: ipheth_rcvbulk_callback: urb status: -75 > > Signed-off-by: Georgi Valkov <gvalkov@abv.bg> > --- > drivers/net/usb/ipheth.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) <formletter> This is not the correct way to submit patches for inclusion in the stable kernel tree. Please read: https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html for how to do this properly. </formletter>
I am doing this for the first time, so any help would be appreciated!
What is to rebase on the netdev/net tree? The patch from my previous e-mail was
generated by `git format-patch -1`. I can’t notice any difference when compared to
to the newly generated patch, which I rebased on the latest master.
According to the description from the link below, I ran the following commands:
https://www.kernel.org/doc/html/latest/process/submitting-patches.html#providing-base-tree-information
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux
git checkout -t -b ipheth-fix-RX-EOVERFLOW master
git am --signoff < 0001-ipheth-fix-EOVERFLOW-in-ipheth_rcvbulk_callback.patch
git format-patch --base=auto --cover-letter -o drivers/net/ master
drivers/net/0000-cover-letter.patch
From cd18496373e28af570dc382f618edd442d705252 Mon Sep 17 00:00:00 2001
From: Georgi Valkov <gvalkov@abv.bg>
Date: Tue, 20 Jul 2021 14:15:58 +0300
Subject: [PATCH 0/1] *** SUBJECT HERE ***
*** BLURB HERE ***
Georgi Valkov (1):
ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback
drivers/net/usb/ipheth.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
base-commit: 2734d6c1b1a089fb593ef6a23d4b70903526fe0c
diff --git a/drivers/net/usb/ipheth.c b/drivers/net/usb/ipheth.c index 207e59e74935..06d9f19ca142 100644 --- a/drivers/net/usb/ipheth.c +++ b/drivers/net/usb/ipheth.c @@ -121,7 +121,7 @@ static int ipheth_alloc_urbs(struct ipheth_device *iphone) if (tx_buf == NULL) goto free_rx_urb; - rx_buf = usb_alloc_coherent(iphone->udev, IPHETH_BUF_SIZE, + rx_buf = usb_alloc_coherent(iphone->udev, IPHETH_BUF_SIZE + IPHETH_IP_ALIGN, GFP_KERNEL, &rx_urb->transfer_dma); if (rx_buf == NULL) goto free_tx_buf; @@ -146,7 +146,7 @@ static int ipheth_alloc_urbs(struct ipheth_device *iphone) static void ipheth_free_urbs(struct ipheth_device *iphone) { - usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->rx_buf, + usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE + IPHETH_IP_ALIGN, iphone->rx_buf, iphone->rx_urb->transfer_dma); usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->tx_buf, iphone->tx_urb->transfer_dma); @@ -317,7 +317,7 @@ static int ipheth_rx_submit(struct ipheth_device *dev, gfp_t mem_flags) usb_fill_bulk_urb(dev->rx_urb, udev, usb_rcvbulkpipe(udev, dev->bulk_in), - dev->rx_buf, IPHETH_BUF_SIZE, + dev->rx_buf, IPHETH_BUF_SIZE + IPHETH_IP_ALIGN, ipheth_rcvbulk_callback, dev); dev->rx_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;