) ' Building modules, stage 2.';
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
Thank you for any help or advice,
Jim Baxter
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at http
-by: Jim Baxter jim_bax...@mentor.com
---
Makefile |6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index 29339b4..1acd69f 100644
--- a/Makefile
+++ b/Makefile
@@ -772,9 +772,6 @@ vmlinux: scripts/link-vmlinux.sh $(vmlinux-deps) FORCE
ifdef
On 16/07/13 20:37, Sam Ravnborg wrote:
On Tue, Jul 16, 2013 at 07:29:50PM +0100, Jim Baxter wrote:
If CONFIG_SAMPLES is enabled with any of the sample
modules enabled, they are only built if the make command
includes uImage and modules (i.e. make uImage modules).
With the current location
On 30/05/14 12:25, Jim Baxter wrote:
On 29/05/14 20:04, Eric Dumazet wrote:
On Thu, 2014-05-29 at 18:12 +0100, Jim Baxter wrote:
Note the patch is OK, but changelog a bit misleading ;)
Kernel was not running out of memory, because truesize was correct.
The problem here is that a frame
it is contained within should it be
updated during the call to skb_trim?
3) Why does the truesize default to 32960?
Thank you for any help,
Jim Baxter.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info
On 22/05/14 20:25, Vlad Yasevich wrote:
On 05/22/2014 03:07 PM, Jim Baxter wrote:
skb2 = skb_clone(skb, GFP_ATOMIC);
if (skb2 == NULL)
goto err;
if (!skb_pull(skb2, index)) {
ret = -EOVERFLOW;
goto err;
}
This assumes that you original 16K
On 22/05/14 20:59, Eric Dumazet wrote:
On Thu, 2014-05-22 at 20:39 +0100, Jim Baxter wrote:
I now think that the correct solution here is to create a new smaller
skb and copy the data from the sub packets into it.
For low speed devices, this is indeed the best way.
(this is called
On 22/05/14 20:21, David Miller wrote:
From: Jim Baxter jim_bax...@mentor.com
Date: Thu, 22 May 2014 20:07:41 +0100
My questions are:
1) Which buffer size does truesize represent, is it the total buffer or
just the data related to the relevant skb?
2) If truesize is for the skb
But although the problem is the same, I believe the driver in question
isn't the one I have been looking at recently. The posted code snippet
was from the NCM gadget driver (drivers/usb/gadget/f_ncm.c), isn't that
right Jim?
Yes this is the NCM Gadget driver.
Yes, judging by this
On 22/05/14 21:58, David Miller wrote:
From: Jim Baxter jim_bax...@mentor.com
Date: Thu, 22 May 2014 21:21:55 +0100
If there are multiple clones for an skb all pointing at the same data,
will that distort the memory used when they all have the same truesize?
What is distorted about
On 23/05/14 11:45, David Laight wrote:
From: Bjørn Mork [mailto:bj...@mork.no]
David Laight david.lai...@aculab.com writes:
...
Note that some of the usb ethernet drivers allocate large skb then
lie about the truesize.
Hmm, which drivers are these?
$ grep truesize linux/drivers/net/usb/*
of memory earlier then it should.
Signed-off-by: Jim Baxter jim_bax...@mentor.com
---
drivers/usb/gadget/f_ncm.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index 5452fb6..bcdc882 100644
--- a/drivers/usb
The NDP was ignoring the wNextNdpIndex in the NDP which
means that NTBs containing multiple NDPs would have missed
frames.
Signed-off-by: Jim Baxter jim_bax...@mentor.com
---
drivers/usb/gadget/f_ncm.c | 146 +++-
1 file changed, 78 insertions(+), 68
packet to fix the
issue of the truesize being far to big and causing packets to be
dropped incorrectly.
Jim Baxter (3):
usb: gadget: NCM: RX function support multiple NDPs
usb: gadget: NCM: Add transmit multi-frame.
usb: gadget: NCM: Stop RX TCP Bursts getting dropped.
drivers/usb/gadget/f_ncm.c
:
netperf -H 192.168.1.101 -v2 -l 50 -t TCP_RR -- -r 16384,16384
Trans. RoundTrip Throughput
Rate Latency10^6bits/s
per sec usec/Tran Outbound
156.80 6377.730 20.552
Signed-off-by: Jim Baxter jim_bax...@mentor.com
---
drivers/usb/gadget/f_ncm.c | 335
On 29/05/14 20:04, Eric Dumazet wrote:
On Thu, 2014-05-29 at 18:12 +0100, Jim Baxter wrote:
This fixes a problem with dropped packets over 16k CDC-NCM
when the connection is being heavily used.
The issue was that the skb truesize for the unpacked NCM
packets was too high after they were
On 29/05/14 19:55, Bjørn Mork wrote:
Jim Baxter jim_bax...@mentor.com writes:
The NDP was ignoring the wNextNdpIndex in the NDP which
means that NTBs containing multiple NDPs would have missed
frames.
Well, just for the record: I believe this field was meant to be reserved
and always 0
On 23/05/14 14:47, Eric Dumazet wrote:
On Fri, 2014-05-23 at 12:13 +0100, Jim Baxter wrote:
What are the side effects of changing the truesize, if the original
uncloned skb has the full truesize then isn't the potential memory usage
still counted for the avoidance of OOM?
Nope. This can
chance of reaching the sk_rcvbuf
limit.
Signed-off-by: Jim Baxter jim_bax...@mentor.com
Acked-by: Eric Dumazet eduma...@google.com
---
Updated the commit message to accurately describe the issue.
drivers/usb/gadget/f_ncm.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions
:
netperf -H 192.168.1.101 -v2 -l 50 -t TCP_RR -- -r 16384,16384
Trans. RoundTrip Throughput
Rate Latency10^6bits/s
per sec usec/Tran Outbound
156.80 6377.730 20.552
Signed-off-by: Jim Baxter jim_bax...@mentor.com
---
drivers/usb/gadget/f_ncm.c | 335
The NDP was ignoring the wNextNdpIndex in the NDP which
means that NTBs containing multiple NDPs would have missed
frames.
Signed-off-by: Jim Baxter jim_bax...@mentor.com
---
This patch originally came about because I read the CDC-NCM specification
Figures 3-1, 3-2 and table 3-4 which specifies
packet to fix the
issue of the truesize being far to big and causing packets to be
dropped incorrectly.
Jim Baxter (3):
usb: gadget: NCM: RX function support multiple NDPs
usb: gadget: NCM: Add transmit multi-frame.
usb: gadget: NCM: Stop RX TCP Bursts getting dropped.
drivers/usb/gadget/f_ncm.c
x->tx_low_mem_max_cnt;
> + }
> + }
84a116
> + ctx->tx_low_mem_val--;
-- File: include/linux/usb/cdc_ncm.h
130a163,164
> + u32 tx_low_mem_max_cnt;
> + u32 tx_low_mem_val;
Jim Baxter (1):
net: cdc_ncm: Reduce memory use
requesting a full size one to not
put additional pressure on a low memory system.
Once the memory is compacted the CDC-NCM data can resume transmitting
at the normal tx_max rate once again.
Signed-off-by: Jim Baxter <jim_bax...@mentor.com>
---
V1: Sent to linux-usb for review.
V2: Adde
that will attempt to
use a 2048 Byte minimum size NTB if the allocation of the maximum size NTB
fails.
This allows the connection to limp along until the memory has been recovered
which was usually between 1 and 4 NTBS on our heavy traffic system.
Jim Baxter (1):
net: cdc_ncm: Reduce memory use when kernel
again.
Signed-off-by: Jim Baxter <jim_bax...@mentor.com>
---
drivers/net/usb/cdc_ncm.c | 39 +++
include/linux/usb/cdc_ncm.h | 1 +
2 files changed, 28 insertions(+), 12 deletions(-)
diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
rror.
Solution
To resolve this I have cached the value of
ctx->tx_max - skb_out->len before the memset operation.
V1: Sent to linux-use for review.
V2: Added netdev mailing list as it was missed for V1.
Jim Baxter (1):
net: cdc_ncm: Fix TX zero padding
drivers/n
the size of
the memory to be zeroed before the skb_put
and using this in the memset call.
Signed-off-by: Jim Baxter <jim_bax...@mentor.com>
Reviewed-by: Bjørn Mork <bj...@mork.no>
---
V1: Sent to linux-use for review.
V2: Added netdev mailing list as it was missed for V1.
drivers/n
the size of
the memory to be zeroed before the skb_put
and using this in the memset call.
Signed-off-by: Jim Baxter <jim_bax...@mentor.com>
---
drivers/net/usb/cdc_ncm.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.
rror.
Solution
To resolve this I have cached the value of
ctx->tx_max - skb_out->len before the memset operation.
Jim Baxter (1):
net: cdc_ncm: Fix TX zero padding
drivers/net/usb/cdc_ncm.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
--
1.9.1
-by: Jim Baxter
---
Makefile |6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index 29339b4..1acd69f 100644
--- a/Makefile
+++ b/Makefile
@@ -772,9 +772,6 @@ vmlinux: scripts/link-vmlinux.sh $(vmlinux-deps) FORCE
ifdef CONFIG_HEADERS_CHECK
On 16/07/13 20:37, Sam Ravnborg wrote:
> On Tue, Jul 16, 2013 at 07:29:50PM +0100, Jim Baxter wrote:
>> If CONFIG_SAMPLES is enabled with any of the sample
>> modules enabled, they are only built if the make command
>> includes uImage and modules (i.e. make uImage modules).
On 30/05/14 12:25, Jim Baxter wrote:
> On 29/05/14 20:04, Eric Dumazet wrote:
>> On Thu, 2014-05-29 at 18:12 +0100, Jim Baxter wrote:
>>
>> Note the patch is OK, but changelog a bit misleading ;)
>>
>> Kernel was not running out of memory, because truesize wa
he skb it is contained within should it be
updated during the call to skb_trim?
3) Why does the truesize default to 32960?
Thank you for any help,
Jim Baxter.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.or
On 22/05/14 20:25, Vlad Yasevich wrote:
> On 05/22/2014 03:07 PM, Jim Baxter wrote:
>>
>> skb2 = skb_clone(skb, GFP_ATOMIC);
>> if (skb2 == NULL)
>> goto err;
>>
>> if (!skb_pull(skb2, index)) {
>> ret = -EOVERFLOW;
&g
On 22/05/14 20:59, Eric Dumazet wrote:
> On Thu, 2014-05-22 at 20:39 +0100, Jim Baxter wrote:
>
>> I now think that the correct solution here is to create a new smaller
>> skb and copy the data from the sub packets into it.
>
> For low speed devices, thi
On 22/05/14 20:21, David Miller wrote:
> From: Jim Baxter
> Date: Thu, 22 May 2014 20:07:41 +0100
>
>> My questions are:
>>
>> 1) Which buffer size does truesize represent, is it the total buffer or
>> just the data related to the relevant skb?
>>
>>
> But although the problem is the same, I believe the driver in question
> isn't the one I have been looking at recently. The posted code snippet
> was from the NCM gadget driver (drivers/usb/gadget/f_ncm.c), isn't that
> right Jim?
Yes this is the NCM Gadget driver.
>
> Yes, judging by this
On 22/05/14 21:58, David Miller wrote:
> From: Jim Baxter
> Date: Thu, 22 May 2014 21:21:55 +0100
>
>> If there are multiple clones for an skb all pointing at the same data,
>> will that distort the memory used when they all have the same truesize?
>
> What is di
On 23/05/14 11:45, David Laight wrote:
> From: Bjørn Mork [mailto:bj...@mork.no]
>> David Laight writes:
> ...
>>> Note that some of the usb ethernet drivers allocate large skb then
>>> lie about the truesize.
>>
>> Hmm, which drivers are these?
>
> $ grep truesize linux/drivers/net/usb/*
>
>
On 23/05/14 14:47, Eric Dumazet wrote:
> On Fri, 2014-05-23 at 12:13 +0100, Jim Baxter wrote:
>
>> What are the side effects of changing the truesize, if the original
>> uncloned skb has the full truesize then isn't the potential memory usage
>> still counted for the avo
of memory earlier then it should.
Signed-off-by: Jim Baxter
---
drivers/usb/gadget/f_ncm.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/gadget/f_ncm.c b/drivers/usb/gadget/f_ncm.c
index 5452fb6..bcdc882 100644
--- a/drivers/usb/gadget/f_ncm.c
+++ b
The NDP was ignoring the wNextNdpIndex in the NDP which
means that NTBs containing multiple NDPs would have missed
frames.
Signed-off-by: Jim Baxter
---
drivers/usb/gadget/f_ncm.c | 146 +++-
1 file changed, 78 insertions(+), 68 deletions(-)
diff --git
packet to fix the
issue of the truesize being far to big and causing packets to be
dropped incorrectly.
Jim Baxter (3):
usb: gadget: NCM: RX function support multiple NDPs
usb: gadget: NCM: Add transmit multi-frame.
usb: gadget: NCM: Stop RX TCP Bursts getting dropped.
drivers/usb/gadget/f_ncm.c
:
netperf -H 192.168.1.101 -v2 -l 50 -t TCP_RR -- -r 16384,16384
Trans. RoundTrip Throughput
Rate Latency10^6bits/s
per sec usec/Tran Outbound
156.80 6377.730 20.552
Signed-off-by: Jim Baxter
---
drivers/usb/gadget/f_ncm.c | 335 --
drivers
On 29/05/14 20:04, Eric Dumazet wrote:
> On Thu, 2014-05-29 at 18:12 +0100, Jim Baxter wrote:
>> This fixes a problem with dropped packets over 16k CDC-NCM
>> when the connection is being heavily used.
>>
>> The issue was that the skb truesize for the unpacked NCM
&g
On 29/05/14 19:55, Bjørn Mork wrote:
> Jim Baxter writes:
>
>> The NDP was ignoring the wNextNdpIndex in the NDP which
>> means that NTBs containing multiple NDPs would have missed
>> frames.
>
> Well, just for the record: I believe this field was meant to be rese
chance of reaching the sk_rcvbuf
limit.
Signed-off-by: Jim Baxter
Acked-by: Eric Dumazet
---
Updated the commit message to accurately describe the issue.
drivers/usb/gadget/f_ncm.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/gadget/f_ncm.c
:
netperf -H 192.168.1.101 -v2 -l 50 -t TCP_RR -- -r 16384,16384
Trans. RoundTrip Throughput
Rate Latency10^6bits/s
per sec usec/Tran Outbound
156.80 6377.730 20.552
Signed-off-by: Jim Baxter
---
drivers/usb/gadget/f_ncm.c | 335 --
drivers
The NDP was ignoring the wNextNdpIndex in the NDP which
means that NTBs containing multiple NDPs would have missed
frames.
Signed-off-by: Jim Baxter
---
This patch originally came about because I read the CDC-NCM specification
Figures 3-1, 3-2 and table 3-4 which specifies 32bit NDPs as a link
packet to fix the
issue of the truesize being far to big and causing packets to be
dropped incorrectly.
Jim Baxter (3):
usb: gadget: NCM: RX function support multiple NDPs
usb: gadget: NCM: Add transmit multi-frame.
usb: gadget: NCM: Stop RX TCP Bursts getting dropped.
drivers/usb/gadget/f_ncm.c
x->tx_low_mem_max_cnt;
> + }
> + }
84a116
> + ctx->tx_low_mem_val--;
-- File: include/linux/usb/cdc_ncm.h
130a163,164
> + u32 tx_low_mem_max_cnt;
> + u32 tx_low_mem_val;
Jim Baxter (1):
net: cdc_ncm: Reduce memory use
requesting a full size one to not
put additional pressure on a low memory system.
Once the memory is compacted the CDC-NCM data can resume transmitting
at the normal tx_max rate once again.
Signed-off-by: Jim Baxter
---
V1: Sent to linux-usb for review.
V2: Added code to increase amount of time
%--__remove_mapping
| ||
| | --21.90%--arch_local_irq_restore
| |
| |--22.44%--arch_local_irq_enable
Best regards,
Jim
Original Message
Subject: Re: PROBLEM: Long Workqueue delays V2
From: Jim Baxter
Added linux-block List which may also be relevant to this issue.
Original Message
Subject: PROBLEM: Long Workqueue delays V2
From: Jim Baxter
To: linux-fsde...@vger.kernel.org, linux-kernel@vger.kernel.org,
linux...@kvack.org
CC: "Resch Carsten (CM/ESO6)" , "
On 17/08/2020 12:57, Greg KH wrote:
> On Mon, Aug 17, 2020 at 12:40:03PM +0100, Jim Baxter wrote:
>> We have issues with the workqueue of the kernel overloading the CPU 0
>> when we we disconnect a USB stick.
>>
>> This results in other items on the shared workqueue bei
eant for that device is immediately cancelled;
> there are no timeouts.
>
> (Okay, not strictly true; there is a fraction-of-a-second timeout during
> which the system waits to see whether the disconnect was permanent or
> just a temporary glitch. But you're talking about 6-second lo
ost of its
time.
I am aware there will be delays on the shared workqueue, are the delays
we are seeing considered normal?
Is there any way to mitigate or identify where the delay is?
I am unsure if this is a memory or filesystem subsystem issue.
Thank you for you help.
Thanks,
Jim Baxter
[1] T
Added linux-block List which may also be relevant to this issue.
On 18 Aug 2020 12:58, Jim Baxter wrote:
> I am asking this question again to include the fs-devel list.
>
>
> We have issues with the workqueue of the kernel overloading the CPU 0
> when we we disconn
in
8388607+1 records out
- Disconnect the USB stick:
[ 1551.796792] usb 2-1: USB disconnect, device number 2
[ 1558.625517] DELAY: 6782
The Delay output 6782 is in milliseconds.
Thank you for you help.
Jim Baxter
[1] Test Module:
// SPDX-License-Identifier: GPL-2.0
/*
* Simple WQ latency
that will attempt to
use a 2048 Byte minimum size NTB if the allocation of the maximum size NTB
fails.
This allows the connection to limp along until the memory has been recovered
which was usually between 1 and 4 NTBS on our heavy traffic system.
Jim Baxter (1):
net: cdc_ncm: Reduce memory use when kernel
again.
Signed-off-by: Jim Baxter
---
drivers/net/usb/cdc_ncm.c | 39 +++
include/linux/usb/cdc_ncm.h | 1 +
2 files changed, 28 insertions(+), 12 deletions(-)
diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
index b5cec18..c06d20f 100644
the size of
the memory to be zeroed before the skb_put
and using this in the memset call.
Signed-off-by: Jim Baxter
---
drivers/net/usb/cdc_ncm.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c
index f317984..e2a48
rror.
Solution
To resolve this I have cached the value of
ctx->tx_max - skb_out->len before the memset operation.
Jim Baxter (1):
net: cdc_ncm: Fix TX zero padding
drivers/net/usb/cdc_ncm.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
--
1.9.1
rror.
Solution
To resolve this I have cached the value of
ctx->tx_max - skb_out->len before the memset operation.
V1: Sent to linux-use for review.
V2: Added netdev mailing list as it was missed for V1.
Jim Baxter (1):
net: cdc_ncm: Fix TX zero padding
drivers/n
the size of
the memory to be zeroed before the skb_put
and using this in the memset call.
Signed-off-by: Jim Baxter
Reviewed-by: Bjørn Mork
---
V1: Sent to linux-use for review.
V2: Added netdev mailing list as it was missed for V1.
drivers/net/usb/cdc_ncm.c | 11 +++
1 file changed, 7 inserti
cho) ' Building modules, stage 2.';
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
Thank you for any help or advice,
Jim Baxter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo
67 matches
Mail list logo