data() too many times.
Signed-off-by: Dean Jenkins
---
drivers/net/usb/asix_common.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
index 7847436..6983b6b 100644
--- a/drivers/net/usb/asix_common.c
+++ b/
an unbind occurs part way through receiving
an Ethernet frame, the netdev buffer memory that is holding part
of the received Ethernet frame will now be freed.
Signed-off-by: Dean Jenkins
---
drivers/net/usb/asix.h | 1 +
drivers/net/usb/asix_common.c | 15 +++
drivers/net/usb
causes IPv4 fragmentation resulting in multiple
Ethernet frames per original IP packet.
Kernel debug within the ASIX driver was enabled to see whether any ASIX errors
were generated. The test was run for about 24 hours and no ASIX errors were
seen.
Patches
===
The 3 patches have b
processed from known initial conditions.
Signed-off-by: Dean Jenkins
---
drivers/net/usb/asix_common.c | 34 +-
1 file changed, 25 insertions(+), 9 deletions(-)
diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
index 6983b6b..fda74f3 100644
ug logic to check those offset calculation used
to find rx->header, the one in problematic code is always too
large by sizeof(u32).
Thus, this patch removes the incorrect " + sizeof(u32)" addition
in the problematic calculation, and resolves the issue.
Cc: Dean Jenkins
Cc: "David
of 1500 is not exceeded.
The commit only runs when Ethernet frames span URBs which typically
occurs when IP fragmentation happens or when there is a very high rate
of Ethernet frames per second.
At least, it is now clear why you see "988 remaining", that is because
you are using m
the suggestion but I hope USB high speed (480Mbps)
operation was the intended environment rather than the useless USB full
speed (12Mbps) operation.
Let's hope that not using the USB hub improves things.
Regards,
Dean
Andrew
--
Dean Jenkins
Embedded Software Engineer
Linux Transp
he
tests to see whether anything improved.
In other words, you need to eliminate the dmesg messages saying "not
running at top speed; connect to a high speed hub".
Best regards,
Dean
-Guodong Xu
--
Dean Jenkins
Embedded Software Engineer
Linux Transportation Solutions
Mentor Embedded Software Division
Mentor Graphics (UK) Ltd.
On 05/05/16 00:45, John Stultz wrote:
On Tue, May 3, 2016 at 3:54 AM, Dean Jenkins wrote:
On 03/05/16 11:04, Guodong Xu wrote:
did you test on ARM 64-bit system or ARM 32-bit? I ask because HiKey
is an ARM 64-bit system. I suggest we should be careful on that. I saw
similar issues when
a is not always aligned
to the start of the URB buffer.
I agree that your environment may never suffer from lost URBs so removal
of the patch would work OK.
I will try to find some time to setup a test environment.
Regards,
Dean
--
Dean Jenkins
Embedded Software Engineer
Linux Transportation
"ping -f -c 200 -s $packet_length $ip_address" to load up
the USB link.
Seems that I need kernel v4.4 or later to get a kernel with my patch in.
This will take me a few days to find time to rig something up to test...
Regards,
Dean
--
Dean Jenkins
Embedded Software Engineer
Linux Transportation Solutions
Mentor Embedded Software Division
Mentor Graphics (UK) Ltd.
On 03/05/16 11:04, Guodong Xu wrote:
On 3 May 2016 at 17:23, Dean Jenkins wrote:
On 03/05/16 05:55, John Stultz wrote:
In testing with HiKey, we found that since commit 3f30b158eba5c60
(asix: On RX avoid creating bad Ethernet frames), we're seeing lots of
noise during network tran
ave any
links to websites that sell your device ?
Are you using UDP or TCP connections ?
Regards,
Dean
--
Dean Jenkins
Embedded Software Engineer
Linux Transportation Solutions
Mentor Embedded Software Division
Mentor Graphics (UK) Ltd.
v3.14 for a commercial product.
Dean Jenkins (5):
asix: Rename remaining and size for clarity
asix: Tidy-up 32-bit header word synchronisation
asix: Simplify asix_rx_fixup_internal() netdev alloc
asix: On RX avoid creating bad Ethernet frames
asix: Continue processing URB if no RX netdev
-off-by: Dean Jenkins
Signed-off-by: Mark Craske
---
drivers/net/usb/asix_common.c | 28
1 file changed, 28 insertions(+)
diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
index 6a8eddf..1e4768d 100644
--- a/drivers/net/usb/asix_common.c
+++ b
is available for the socket buffer.
The patchset will apply cleanly to the net-next master branch but the
created kernel has not been tested. The driver was tested on ARM kernels
v3.8 and v3.14 for a commercial product.
Dean Jenkins (5):
asix: Rename remaining and size for clarity
asix: Tidy
ve
been found and that is not possible whilst checking for the first 16
bits. Therefore simplify the logic.
Signed-off-by: Dean Jenkins
Signed-off-by: Mark Craske
---
drivers/net/usb/asix_common.c | 28 +---
1 file changed, 13 insertions(+), 15 deletions(-)
diff --git
.
Signed-off-by: Dean Jenkins
Signed-off-by: Mark Craske
---
drivers/net/usb/asix_common.c | 31 +++
1 file changed, 19 insertions(+), 12 deletions(-)
diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
index 1e4768d..a186b0a 100644
--- a/drivers
it
the netdev socket buffer before allocating the netdev socket buffer.
This avoids grabbing memory and then deciding that the Ethernet frame
is too big and then freeing the memory.
Signed-off-by: Dean Jenkins
Signed-off-by: Mark Craske
---
drivers/net/usb/asix_common.c | 16 +++-
ber of the Ethernet frame
bytes (maybe a part of a full frame) that are to be copied
out of the socket buffer.
Signed-off-by: Dean Jenkins
Signed-off-by: Mark Craske
---
drivers/net/usb/asix.h|2 +-
drivers/net/usb/asix_common.c | 41 +
2 file
of the USB ASIX chipset). Therefore,
subsequent URBs with the remainder of the Ethernet frame need to be
handled when no netdev socket buffer exists.
We intend to release the patches within the next few days so please
watch out for them.
Regards,
Dean
--
Dean Jenkins
Embedded Software Engineer
L
21 matches
Mail list logo