[PATCH V1 2/3] asix: Ensure asix_rx_fixup_info members are all reset

2017-08-07 Thread Dean Jenkins
essed from known initial conditions. Signed-off-by: Dean Jenkins <dean_jenk...@mentor.com> --- 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

[PATCH V1 1/3] asix: Add rx->ax_skb = NULL after usbnet_skb_return()

2017-08-07 Thread Dean Jenkins
data() too many times. Signed-off-by: Dean Jenkins <dean_jenk...@mentor.com> --- 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/us

[PATCH V1 3/3] asix: Fix small memory leak in ax88772_unbind()

2017-08-07 Thread Dean Jenkins
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 <dean_jenk...@mentor.com> --- drivers/net/usb/asix.h | 1 + drivers/net/usb/asix_common.c

[PATCH V1 0/3] asix: Improve robustness

2017-08-07 Thread Dean Jenkins
agmentation 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 been rebased

Re: [PATCH] asix: Fix offset calculation in asix_rx_fixup() causing slow transmissions

2016-05-17 Thread Dean Jenkins
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 <dean_jenk...@ment

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-11 Thread Dean Jenkins
e 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 maximum length Ethernet frames

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-06 Thread Dean Jenkins
tion 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 Transportation Soluti

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-06 Thread Dean Jenkins
ther 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

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-05 Thread Dean Jenkins
On 05/05/16 00:45, John Stultz wrote: On Tue, May 3, 2016 at 3:54 AM, Dean Jenkins <dean_jenk...@mentor.com> 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.

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-04 Thread Dean Jenkins
ata 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 Solu

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-03 Thread Dean Jenkins
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 Transportati

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-03 Thread Dean Jenkins
On 03/05/16 11:04, Guodong Xu wrote: On 3 May 2016 at 17:23, Dean Jenkins <dean_jenk...@mentor.com> 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

Re: [REGRESSION] asix: Lots of asix_rx_fixup() errors and slow transmissions

2016-05-03 Thread Dean Jenkins
ny 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. -- To unsubscribe from this list: send the line "unsubs

Re: [PATCH 2/2] usb: no locking for reading descriptors in sysfs

2016-01-21 Thread Dean Jenkins
if (cfgno < 0) { @@ -870,7 +867,6 @@ read_descriptors(struct file *filp, struct kobject *kobj, off -= srclen; } } - usb_unlock_device(udev); return count - nleft; } -- Dean Jenkins Embedded Software Engineer Linux Transporta

[PATCH v1 3/5] asix: Simplify asix_rx_fixup_internal() netdev alloc

2015-10-02 Thread Dean Jenkins
ll fit 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 <dean_jenk...@mentor.com> Signed-off-by: Mark Craske <mark_cra...@mentor.com>

[PATCH v1 1/5] asix: Rename remaining and size for clarity

2015-10-02 Thread Dean Jenkins
e number 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 <dean_jenk...@mentor.com> Signed-off-by: Mark Craske <mark_cra...@mentor.com> --- drivers/net/usb/asix.h|2 +- drivers/net/usb/asix_comm

[PATCH v1 4/5] asix: On RX avoid creating bad Ethernet frames

2015-10-02 Thread Dean Jenkins
-off-by: Dean Jenkins <dean_jenk...@mentor.com> Signed-off-by: Mark Craske <mark_cra...@mentor.com> --- 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 6a8e

[PATCH v2 0/5] Improve ASIX RX memory allocation error handling

2015-10-02 Thread Dean Jenkins
avoid a crash when no memory 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 an

[PATCH v1 5/5] asix: Continue processing URB if no RX netdev buffer

2015-10-02 Thread Dean Jenkins
. Signed-off-by: Dean Jenkins <dean_jenk...@mentor.com> Signed-off-by: Mark Craske <mark_cra...@mentor.com> --- drivers/net/usb/asix_common.c | 31 +++ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/drivers/net/usb/asix_common.c b/dri

[PATCH v1 2/5] asix: Tidy-up 32-bit header word synchronisation

2015-10-02 Thread Dean Jenkins
s have been found and that is not possible whilst checking for the first 16 bits. Therefore simplify the logic. Signed-off-by: Dean Jenkins <dean_jenk...@mentor.com> Signed-off-by: Mark Craske <mark_cra...@mentor.com> --- drivers/net/usb/asix_common.c | 28 +---

[PATCH v1 0/5] Improve ASIX RX memory allocation error handling

2015-10-02 Thread Dean Jenkins
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-up 32-bit header word synchronisation asix: Simplify asix_rx_fixup_internal() netdev alloc asix: On RX avoid creating bad Ethernet frames asix: Co