Hello,
This patch series adds "jump to" keys (similar to the cscope interface) to the
search results of "make menuconfig" so that we can go directly to the menu
entry for a config option after searching for it.
Patches 1-4 implement the basic functionnality.
Patches 5-6 are an optionnal improveme
Because end_reached is set to 0 before the loop, the test "!end_reached" is
always true and can be removed. This structure was perhaps copied from the
similar one in back_lines().
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c |8 +++-
1 files
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/dialog.h |3 ++-
scripts/kconfig/lxdialog/textbox.c | 31 +--
scripts/kconfig/mconf.c| 12 ++--
3 files changed, 33 insertions(+), 13 deletions(-)
diff --git a/scripts/kconfig
mp further in or
elsewhere.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/expr.h |2 +
scripts/kconfig/lkc_proto.h |6 +++-
scripts/kconfig/mconf.c | 64 +--
scripts/kconfig/menu.c | 55 +--
At the moment, keys 1-9 are assigned to the first 9 search results. This patch
makes them assigned to the first 9 results per-page instead. We are much less
likely to run out of keys that way.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/expr.h |9
scripts/kconfig
ned-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c | 55 +++
1 files changed, 11 insertions(+), 44 deletions(-)
diff --git a/scripts/kconfig/lxdialog/textbox.c
b/scripts/kconfig/lxdialog/textbox.c
index 506a095..3b3c5c4 100644
--- a/scripts/kconfi
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/dialog.h |2 +-
scripts/kconfig/lxdialog/textbox.c | 24 +++-
scripts/kconfig/mconf.c|8
3 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/scripts/kconfig/lxdialog
On 2012/07/30 21:58, Borislav Petkov wrote:
> On Mon, Jul 30, 2012 at 03:22:04PM -0400, Benjamin Poirier wrote:
> > Hello,
> >
> > This patch series adds "jump to" keys (similar to the cscope interface) to
> > the
> > search results of "make me
On 2012/07/31 09:57, Borislav Petkov wrote:
> On Mon, Jul 30, 2012 at 04:22:12PM -0400, Benjamin Poirier wrote:
> > It's against linux-next, which already contains some patches for
> > menuconfig.
>
> Ok, applying against the linux-next from today succeeds. And they se
On 2013/09/19 12:58, Madhavan Srinivasan wrote:
> In file included from scripts/kconfig/zconf.tab.c:2537:0:
> scripts/kconfig/menu.c: In function ‘get_symbol_str’:
> scripts/kconfig/menu.c:586:18: warning: ‘jump’ may be used uninitialized in
> this function [-Wmaybe-uninitialized]
On 2013/09/19 19:27, Yann E. MORIN wrote:
> Benjamin, Madhavan, All,
>
> On 2013-09-19 11:22 -0400, Benjamin Poirier spake thusly:
> > On 2013/09/19 12:58, Madhavan Srinivasan wrote:
> > > In file included from scripts/kconfig/zconf.tab.c:2537:0:
> > > sc
On 2013/09/20 08:05, Madhavan Srinivasan wrote:
> On Friday 20 September 2013 01:34 AM, Yann E. MORIN wrote:
> > Benjamin, All,
> >
> > On 2013-09-19 15:13 -0400, Benjamin Poirier spake thusly:
> >> On 2013/09/19 19:27, Yann E. MORIN wrote:
> >>> Benjamin
On 2013/10/03 19:25, Martin Walch wrote:
> From: Martin Walch
> Date: Thu, 3 Oct 2013 18:35:16 +0200
> Subject: [PATCH v2 5/5] kconfig: fix bug in search results string: use
> strlen(gstr->s), not gstr->len
>
Good catch, thank you.
Acked-by: Benjamin Poirier
--
To unsub
From: Benjamin Poirier
sys/queue.h and CIRCLEQ in particular have proven to cause portability
problems (reported on Debian Sarge, Cygwin and FreeBSD)
Reported-by: Tetsuo Handa
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/expr.h |5 +--
scripts/kconfig/list.h | 90
From: Benjamin Poirier
sys/queue.h and CIRCLEQ in particular have proven to cause portability
problems (reported on Debian Sarge, Cygwin and FreeBSD)
Reported-by: Tetsuo Handa
Tested-by: Tetsuo Handa
Tested-by: Yaakov Selkowitz
Signed-off-by: Benjamin Poirier
Signed-off-by: "Yann E.
] create_dir+0x80/0xfc
[<002eee38>] sysfs_create_dir+0xe8/0x118
[<003835a8>] kobject_add_internal+0x120/0x2d0
[<003839d6>] kobject_add+0x62/0x9c
[<003d9564>] device_add+0xcc/0x510
[<03e00212c7b4>] netiucv_register_device+0xc0/0x1ec [netiucv]
EFAULT via skb_copy_datagram_iovec().
Signed-off-by: Benjamin Poirier
---
net/core/datagram.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/datagram.c b/net/core/datagram.c
index 368f9c3..02398ae 100644
--- a/net/core/datagram.c
+++ b/net/core/datagram.c
@@ -187,7 +187,7
Currently, peeking on a unix stream socket with an offset larger than len of
the data in the sk receive queue returns immediately with bogus data.
This patch fixes this so that the behavior is the same as peeking with no
offset on an empty queue: the caller blocks.
Signed-off-by: Benjamin
et on an empty queue: the caller blocks.
Signed-off-by: Benjamin Poirier
---
net/core/datagram.c | 25 +++--
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/net/core/datagram.c b/net/core/datagram.c
index 02398ae..6c502b5 100644
--- a/net/core/datagram.c
+++
On 2013/04/25 11:48, Eric Dumazet wrote:
> On Thu, 2013-04-25 at 09:47 -0400, Benjamin Poirier wrote:
> > "77c1090 net: fix infinite loop in __skb_recv_datagram()" (v3.8) introduced
> > a
> > regression:
> > After that commit, recv can no longer peek b
Currently, peeking on a unix stream socket with an offset larger than len of
the data in the sk receive queue returns immediately with bogus data.
This patch fixes this so that the behavior is the same as peeking with no
offset on an empty queue: the caller blocks.
Signed-off-by: Benjamin
et on an empty queue: the caller blocks.
Signed-off-by: Benjamin Poirier
---
v2: address review feedback
net/core/datagram.c | 27 ---
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/net/core/datagram.c b/net/core/datagram.c
index 99c4f52..1985c9a 1
EFAULT via skb_copy_datagram_iovec().
When peeking at an offset with 0-sized skb(s), each one of those is received
only once, in sequence. The offset starts moving forward again after receiving
datagrams with len > 0.
Signed-off-by: Benjamin Poirier
---
* v1 fix the case when SO_PEEK_OFF i
Currently, peeking on a unix stream socket with an offset larger than len of
the data in the sk receive queue returns immediately with bogus data.
This patch fixes this so that the behavior is the same as peeking with no
offset on an empty queue: the caller blocks.
Signed-off-by: Benjamin
et on an empty queue: the caller blocks.
Signed-off-by: Benjamin Poirier
---
v2: address review feedback from Eric Dumazet
v3: address review feedback from Cong Wang
net/core/datagram.c | 21 +
1 file changed, 13 insertions(+), 8 deletions(-)
diff --git a/net/core/datag
Fixes the memory leak of struct jump_key allocated in get_prompt_str()
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/list.h | 13 +
scripts/kconfig/mconf.c |3 +++
2 files changed, 16 insertions(+)
diff --git a/scripts/kconfig/list.h b/scripts/kconfig/list.h
index
Displays a trail of the menu entries used to get to the current menu.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/list.h| 27 ++
scripts/kconfig/lxdialog/dialog.h |7
scripts/kconfig/lxdialog/util.c | 48 -
scripts/kconfig
Displays a trail of the menu entries used to get to the current menu.
Signed-off-by: Benjamin Poirier
Tested-by: "Yann E. MORIN"
[yann.morin.1...@free.fr: small, trivial code re-ordering]
Signed-off-by: "Yann E. MORIN"
---
Indeed Yann, we can even remove one wmov
On 2012/08/02 15:32, Borislav Petkov wrote:
> On Tue, Jul 31, 2012 at 09:17:51AM -0400, Benjamin Poirier wrote:
> > > * when searching for "DELAY" for example, I get results without numbers
> > > to which I can't jump to:
> > >
> > > ...
>
This patch series adds "jump to" keys (similar to the cscope interface) to the
search results of "make menuconfig" so that we can go directly to the menu
entry for a config option after searching for it.
Patches 1-4 implement the basic functionality.
Patches 5-6 are an optional improvement.
Chang
Because end_reached is set to 0 before the loop, the test "!end_reached" is
always true and can be removed. This structure was perhaps copied from the
similar one in back_lines().
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c |8 +++-
1 files
mp further in or
elsewhere.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/expr.h |2 +
scripts/kconfig/lkc_proto.h |6 +++-
scripts/kconfig/mconf.c | 64 +--
scripts/kconfig/menu.c | 55 +--
ned-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c | 55 +++
1 files changed, 11 insertions(+), 44 deletions(-)
diff --git a/scripts/kconfig/lxdialog/textbox.c
b/scripts/kconfig/lxdialog/textbox.c
index 506a095..3b3c5c4 100644
--- a/scripts/kconfi
At the moment, keys 1-9 are assigned to the first 9 search results. This patch
makes them assigned to the first 9 results per-page instead. We are much less
likely to run out of keys that way.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/expr.h |9
scripts/kconfig
We can now display other UI elements (menus) "on top" of a textbox and then
seemingly come back to it in the same state it was left.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/dialog.h |2 +-
scripts/kconfig/lxdialog/textbox.c | 24 +++
The caller will be able to perform actions based on hotkeys in the displayed
text.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/dialog.h |3 ++-
scripts/kconfig/lxdialog/textbox.c | 31 +--
scripts/kconfig/mconf.c| 12
On 2012/08/24 17:49, Borislav Petkov wrote:
> On Thu, Aug 23, 2012 at 02:55:02PM -0400, Benjamin Poirier wrote:
> > This patch series adds "jump to" keys (similar to the cscope interface) to
> > the
> > search results of "make menuconfig" so that we ca
... just like less(1) for example.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/scripts/kconfig/lxdialog/textbox.c
b/scripts/kconfig/lxdialog/textbox.c
index 154c2dd..805200f 100644
--- a
They function just like they do in less(1).
Also correct some discrepancy between the help text and the code wrt
function keys.
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/nconf.c |6 +++---
scripts/kconfig/nconf.gui.c |8 +---
2 files changed, 8 insertions(+), 6
They function just like they do in less(1).
Signed-off-by: Benjamin Poirier
---
scripts/kconfig/lxdialog/textbox.c |3 +++
scripts/kconfig/mconf.c|6 +++---
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/scripts/kconfig/lxdialog/textbox.c
b/scripts/kconfig
On 2016/07/26 11:16, Andreas Werner wrote:
[...]
> +
> + /* Lock for CTL_BTR register access.
> + * This register combines bittiming bits
> + * and the operation mode bits.
> + * It is also used for bit r/m/w access
> + * to all registers.
> + */
> + spinlock_t lock
On 2016/08/08 09:26, Andreas Werner wrote:
[...]
> > > +
> > > + if (cf->can_dlc > 0)
> > > + data[0] = be32_to_cpup((__be32 *)(cf->data));
> > > + if (cf->can_dlc > 3)
> > > + data[1] = be32_to_cpup((__be32 *)(cf->data + 4));
> > > +
> > > + writel(id, &cf_buf->can_id);
> > > + wri
Hi,
For this series:
Benjamin Poirier (2):
e1000e: remove unreachable code
e1000e: Fix msi-x interrupt automask
drivers/net/ethernet/intel/e1000e/netdev.c | 18 ++
1 file changed, 6 insertions(+), 12 deletions(-)
The first patch is a cleanup but the second one is the
t; interrupts. Since e1000_msix_other() reads ICR, all interrupts
must be rearmed in that function.
Reported-by: Frank Steiner
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/netdev.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/e
msi-x interrupts are not shared so there's no need to check if the
interrupt was really from this adapter.
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/netdev.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/netdev
On 2018/01/22 10:01, Alexander Duyck wrote:
[...]
> >
> > If the patch that I submitted for the current vmware issue is merged,
> > the significant commits that are left are:
> >
> > 0a8047ac68e5 e1000e: Fix msi-x interrupt automask (v4.5-rc1)
> > Fixes a problem in the irq disabling of the
quot;e1000e: Do not read ICR in Other interrupt", v4.5-rc1).
Fixes: 4aea7a5c5e94 ("e1000e: Avoid receiver overrun interrupt bursts")
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/netdev.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --gi
On 2018/01/30 11:46, Alexander Duyck wrote:
> On Wed, Jan 17, 2018 at 10:50 PM, Benjamin Poirier wrote:
> > It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> > 7526125 do not link up after commit 4aea7a5c5e94 ("e1000e: Avoid receiver
> > overrun in
On 2018/01/18 18:42, Shrikrishna Khare wrote:
>
>
> On Thu, 18 Jan 2018, Benjamin Poirier wrote:
>
> > On 2018/01/18 15:50, Benjamin Poirier wrote:
> > > It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> > > 7526125 do not link up after
On 2018/01/18 07:51, Alexander Duyck wrote:
> On Wed, Jan 17, 2018 at 10:50 PM, Benjamin Poirier wrote:
> > It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> > 7526125 do not link up after commit 4aea7a5c5e94 ("e1000e: Avoid receiver
> > overrun in
On 2018/01/19 17:59, Benjamin Poirier wrote:
> On 2018/01/18 07:51, Alexander Duyck wrote:
> > On Wed, Jan 17, 2018 at 10:50 PM, Benjamin Poirier
> > wrote:
> > > It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> > > 7526125 do not link up a
On 2018/01/19 08:22, Alexander Duyck wrote:
> On Fri, Jan 19, 2018 at 5:36 AM, Benjamin Poirier
> wrote:
> > On 2018/01/19 17:59, Benjamin Poirier wrote:
> >> On 2018/01/18 07:51, Alexander Duyck wrote:
> >> > On Wed, Jan 17, 2018 at 10:50 PM, Benjamin Poirie
On 2018/01/20 07:45, Benjamin Poirier wrote:
[...]
> >
> > I'm of the mind that we need to cut down on the code thrash. This
> > driver is supposed to have been in a "maintenance" mode for the last
> > year or so as there aren't being any new parts
On 2018/01/20 09:21, Alexander Duyck wrote:
> On Fri, Jan 19, 2018 at 2:55 PM, Benjamin Poirier
> wrote:
> > On 2018/01/20 07:45, Benjamin Poirier wrote:
> > [...]
> >> >
> >> > I'm of the mind that we need to cut down on the code thrash. T
uot;maintenance" mode and we want to avoid unforeseen fallout from
changes that are not strictly necessary.
Link: https://www.spinics.net/lists/netdev/msg480675.html
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/defines.h | 1 -
drivers/net/ethern
Other interrupt").
Fixes: 4aea7a5c5e94 ("e1000e: Avoid receiver overrun interrupt bursts")
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/netdev.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/netde
d reading icr in the Other handler.
As discussed, the driver should be in "maintenance mode". In the interest
of stability, revert to the original code as much as possible instead of a
half-baked solution.
Link: https://www.spinics.net/lists/netdev/msg479923.html
Signed-off-by: Benj
ot;e1000e: Fix msi-x interrupt
automask", v4.5-rc1) are preserved.
* we manually clear Other from icr in e1000_msix_other().
We try to go back to a long lost time when things were simple and drivers
ran smoothly.
--------
Benjamin Poirier (
On 2018/01/26 08:50, Alexander Duyck wrote:
> On Fri, Jan 26, 2018 at 1:12 AM, Benjamin Poirier wrote:
> > This reverts commit 4aea7a5c5e940c1723add439f4088844cd26196d.
> >
> > We keep the fix for the first part of the problem (1) described in the log
> > of tha
On 2018/01/26 13:01, Alexander Duyck wrote:
> On Fri, Jan 26, 2018 at 1:12 AM, Benjamin Poirier wrote:
> > This reverts commit 16ecba59bc333d6282ee057fb02339f77a880beb.
> >
> > It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> > 7526125
On 2018/01/26 09:03, Alexander Duyck wrote:
> On Fri, Jan 26, 2018 at 1:12 AM, Benjamin Poirier wrote:
> > This reverts commit 19110cfbb34d4af0cdfe14cd243f3b09dc95b013.
> > This reverts commit 4110e02eb45ea447ec6f5459c9934de0a273fb91.
> >
> > ... because they cause an
quot;e1000e: Do not read ICR in Other interrupt", v4.5-rc1).
Fixes: 4aea7a5c5e94 ("e1000e: Avoid receiver overrun interrupt bursts")
Signed-off-by: Benjamin Poirier
---
Jeff, I'm sending as RFC since it looks like a problem that should be fixed
in vmware. If you'd lik
On 2018/01/18 15:50, Benjamin Poirier wrote:
> It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> 7526125 do not link up after commit 4aea7a5c5e94 ("e1000e: Avoid receiver
> overrun interrupt bursts", v4.15-rc1). Some tracing shows that after
> e1000e_t
On 2018/01/18 15:50, Benjamin Poirier wrote:
> It was reported that emulated e1000e devices in vmware esxi 6.5 Build
> 7526125 do not link up after commit 4aea7a5c5e94 ("e1000e: Avoid receiver
> overrun interrupt bursts", v4.15-rc1). Some tracing shows that after
> e1000e_t
On 2018/01/10 01:29, rwar...@gmx.de wrote:
> hallo
>
> any chance to get this patch into stable and 4.15 ?
>
> https://marc.info/?l=linux-kernel&m=151297726823919&w=2
>
It was part of the last network pull request and should be included in
the next mainline release as
4110e02eb45e e1000e: Fix e
sed. The race may no longer be
triggered by RXO events because commit 4aea7a5c5e94 ("e1000e: Avoid
receiver overrun interrupt bursts") restored reading icr in the Other
handler.
Link: https://lkml.org/lkml/2018/3/1/789
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e100
ter having checked the link.
It seems this problem has been present since the introduction of e1000e.
Link: https://lkml.org/lkml/2018/1/29/338
Reported-by: Alexander Duyck
Signed-off-by: Benjamin Poirier
---
drivers/net/ethernet/intel/e1000e/ich8lan.c | 31 -
dr
Model call chain after should_failslab(). Likewise, we can now use a kprobe
to override the return value of should_fail_alloc_page() and inject
allocation failures into alloc_page*().
Signed-off-by: Benjamin Poirier
---
include/asm-generic/error-injection.h | 1 +
mm/page_alloc.c
For example, one could conceivably call
for_each_netdev_in_bond_rcu(condition ? bond1 : bond2, slave)
and get an unexpected result.
Signed-off-by: Benjamin Poirier
---
include/linux/netdevice.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/netdevice.h
On 2015/04/13 17:22, Benjamin Poirier wrote:
> On 2015/04/12 10:03, Ido Shamay wrote:
> > Hi Benjamin,
> >
> > On 4/10/2015 7:27 PM, Benjamin Poirier wrote:
> > >By default, the number of tx queues is limited by the number of online
> > >cpus in
> > &
>=
nr_cpu_ids.
Signed-off-by: Benjamin Poirier
Acked-by: Ido Shamay
Fixes: d03a68f ("net/mlx4_en: Configure the XPS queue mapping on driver load")
---
drivers/net/ethernet/mellanox/mlx4/en_tx.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethe
Signed-off-by: Benjamin Poirier
Fixes: 9e311e7 ("net/mlx4_en: Use affinity hint")
---
drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c
b/drivers/net/ethernet/mel
On 2015/04/12 10:03, Ido Shamay wrote:
> Hi Benjamin,
>
> On 4/10/2015 7:27 PM, Benjamin Poirier wrote:
> >By default, the number of tx queues is limited by the number of online cpus
> >in
> >mlx4_en_get_profile(). However, this limit no longer holds after the ethtool
On 2018/02/26 08:14, Alexander Duyck wrote:
[...]
>
> >
> > switch (hw->mac.type) {
> > case e1000_pch2lan:
> > ret_val = e1000_k1_workaround_lv(hw);
> > if (ret_val)
> > - return ret_val;
> > + goto out;
>
k is down. Since all
combinations of link up/down and error/no error are possible, do the same
thing as e1000e_phy_has_link_generic() and return the link status in a
separate variable.
Fixes: 19110cfbb34d ("e1000e: Separate signaling for link check/link up")
Signed-off-by: Benjamin Poirier
---
dri
On 2018/02/28 08:48, Alexander Duyck wrote:
> On Tue, Feb 27, 2018 at 9:20 PM, Benjamin Poirier wrote:
> > Before commit 19110cfbb34d ("e1000e: Separate signaling for link check/link
> > up"), errors which happen after "get_link_status = false" in the copper
&g
On 2020-05-29 17:17 +0200, Jil Rouceau wrote:
> Fixed the missing spaces before and after binary operators.
>
> Signed-off-by: Jil Rouceau
This patch does not apply cleanly. I think your base tree is missing
commit ec269f1250c6 ("staging: qlge: Remove unnecessary spaces in
qlge_main.c").
On 2020-11-20 12:39 -0600, Gustavo A. R. Silva wrote:
> In preparation to enable -Wimplicit-fallthrough for Clang, fix a warning
> by explicitly adding a break statement instead of letting the code fall
> through to the next case.
>
> Link: https://github.com/KSPP/linux/issues/115
> Signed-off-by:
2.94 stalled cycles per insn
[83.22%]
363,773,213 branches # 127.757 M/sec
[83.29%]
4,242,732 branch-misses #1.17% of all branches
[83.51%]
10.128449949 seconds time elapsed
CC: Tom Herbert
Signed-off-by: Benjamin Poirie
On 2014/07/29 21:07, Tetsuo Handa wrote:
> Luis R. Rodriguez wrote:
> > On Mon, Jul 28, 2014 at 5:35 PM, Greg KH wrote:
> > > On Mon, Jul 28, 2014 at 05:26:34PM -0700, Luis R. Rodriguez wrote:
> > >> To ignore SIGKILL ?
> > >
> > > Sorry, I thought this was a userspace change that caused this.
> >
There are many cases where this feature does not improve performance or even
reduces it. See the following discussion for example perf numbers:
http://thread.gmane.org/gmane.linux.network/298345
CC: Tom Herbert
Signed-off-by: Benjamin Poirier
---
net/core/dev.c | 5 -
1 file changed, 5
ess wakeups, the tx queue wake up
threshold is made dynamic. Likewise, usually the tx queue is stopped as soon
as an skb with max frags may overrun it. Since the skbs submitted from
tg3_tso_bug() use a controlled number of descriptors, the tx queue stop
threshold may be lowered.
Signed-off-b
return
NETDEV_TX_BUSY and print error messages. Fix the problem by putting a limit to
how low TG3_TX_WAKEUP_THRESH can go.
Signed-off-by: Benjamin Poirier
---
I noticed the problem in a 3.0 kernel when setting `ethtool eth0 -G tx 50` and
running a netperf TCP_STREAM test. The console fills up
The rest of the driver assumes at least one free descriptor in the tx ring.
Therefore, since an skb with max frags takes up (MAX_SKB_FRAGS + 1)
descriptors, tx_pending must be > (MAX_SKB_FRAGS + 1).
Signed-off-by: Benjamin Poirier
---
Changes v1->v2
Moved ahead in the series from 3/3 to 2
On 2014/08/21 02:51, Michael Chan wrote:
> On Wed, 2014-08-20 at 18:23 -0700, Benjamin Poirier wrote:
> > On 2014/08/19 16:10, Michael Chan wrote:
> > > On Tue, 2014-08-19 at 11:52 -0700, Benjamin Poirier wrote:
> > > > @@ -7838,11 +7838,14 @@ static int tg3_
On 2014/08/19 15:00, Michael Chan wrote:
> On Tue, 2014-08-19 at 11:52 -0700, Benjamin Poirier wrote:
> > diff --git a/drivers/net/ethernet/broadcom/tg3.c
> > b/drivers/net/ethernet/broadcom/tg3.c
> > index 3ac5d23..b11c0fd 100644
> > --- a/drivers/net/ethernet/broad
On 2014/08/21 15:32, Michael Chan wrote:
> On Thu, 2014-08-21 at 15:04 -0700, Benjamin Poirier wrote:
> > On 2014/08/19 15:00, Michael Chan wrote:
> > > On Tue, 2014-08-19 at 11:52 -0700, Benjamin Poirier wrote:
> > > > diff --git a/drivers/net/ethernet/broadco
On 2014/08/22 16:17, Prashant Sreedharan wrote:
> Benjamin, thanks for the patch. Broadcom QA will be testing the changes.
> Couple of comments below.
> > segs = skb_gso_segment(skb, tp->dev->features &
> > ~(NETIF_F_TSO | NETIF_F_TSO6));
> > - if (IS_ERR(segs)
return
NETDEV_TX_BUSY and print error messages. Fix the problem by putting a limit to
how low TG3_TX_WAKEUP_THRESH can go.
Signed-off-by: Benjamin Poirier
---
I noticed the problem in a 3.0 kernel when setting `ethtool eth0 -G tx 50` and
running a netperf TCP_STREAM test. The console fills up
ess wakeups, the tx queue wake up
threshold is made dynamic. Likewise, usually the tx queue is stopped as soon
as an skb with max frags may overrun it. Since the skbs submitted from
tg3_tso_bug() use a controlled number of descriptors, the tx queue stop
threshold may be lowered.
Signed-off-b
The rest of the driver assumes at least one free descriptor in the tx ring.
Therefore, since an skb with max frags takes up (MAX_SKB_FRAGS + 1)
descriptors, tx_pending must be > (MAX_SKB_FRAGS + 1).
Signed-off-by: Benjamin Poirier
---
Changes v1->v2
Moved ahead in the series from 3/3 to 2
ons =
smp_mb
if queue_stopped and tx_avail, NO
if !queue_stopped
stop queue
return NETDEV_TX_BUSY
... tx queue stopped forever
Signed-off-by: Benjamin Poirier
---
Changes v2->v3
return
NETDEV_TX_BUSY and print error messages. Fix the problem by putting a limit to
how low TG3_TX_WAKEUP_THRESH can go.
Signed-off-by: Benjamin Poirier
---
I noticed the problem in a 3.0 kernel when setting `ethtool eth0 -G tx 50` and
running a netperf TCP_STREAM test. The console fills up
The rest of the driver assumes at least one free descriptor in the tx ring.
Therefore, since an skb with max frags takes up (MAX_SKB_FRAGS + 1)
descriptors, tx_pending must be > (MAX_SKB_FRAGS + 1).
Signed-off-by: Benjamin Poirier
---
Changes v1->v2
Moved ahead in the series from 3/3 to 2
ess wakeups, the tx queue wake up
threshold is made dynamic. Likewise, usually the tx queue is stopped as soon
as an skb with max frags may overrun it. Since the skbs submitted from
tg3_tso_bug() use a controlled number of descriptors, the tx queue stop
threshold may be lowered.
Signed-off-b
ons =
smp_mb
if queue_stopped and tx_avail, NO
if !queue_stopped
stop queue
return NETDEV_TX_BUSY
... tx queue stopped forever
Signed-off-by: Benjamin Poirier
---
Changes v2->v3
The rest of the driver assumes at least one free descriptor in the tx ring.
Therefore, since an skb with max frags takes up (MAX_SKB_FRAGS + 1)
descriptors, tx_pending must be > (MAX_SKB_FRAGS + 1).
Signed-off-by: Benjamin Poirier
---
Currently, it is possible to set tx_pending = MAX_SKB_FR
return
NETDEV_TX_BUSY and print error messages. Fix the problem by putting a limit to
how low TG3_TX_WAKEUP_THRESH can go.
Signed-off-by: Benjamin Poirier
---
I noticed the problem in a 3.0 kernel when setting `ethtool eth0 -G tx 50` and
running a netperf TCP_STREAM test. The console fills up
ess wakeups, the tx queue wake up
threshold is made dynamic.
Signed-off-by: Benjamin Poirier
---
I reproduced this bug using the same approach explained in patch 1.
The bug reproduces with tx_pending <= 135
---
drivers/net/ethernet/broadcom/tg3.c | 31 ---
drivers
On 2014/08/19 11:52, Benjamin Poirier wrote:
> + trace_printk("stopping queue, %d <= %d\n",
> + tg3_tx_avail(tnapi), skb_shinfo(skb)->gso_segs);
> netif_tx_stop_queue(txq);
> + trace_printk("stopp
1 - 100 of 216 matches
Mail list logo