From: Alessandro Carminati (Red Hat)
Date: Mon, 28 Aug 2023 08:04:23 +
> From: Alessandro Carminati
>
> It is not uncommon for drivers or modules related to similar peripherals
> to have symbols with the exact same name.
[...]
> Changes from v2:
> - Alias tags are created by querying
From: Yury Norov
Date: Sun, 10 Sep 2023 07:07:16 -0700
> On Wed, Sep 06, 2023 at 05:54:26PM +0300, Andy Shevchenko wrote:
>> On Wed, Sep 06, 2023 at 04:40:39PM +0200, Alexander Lobakin wrote:
>>> From: Andy Shevchenko
>>> Date: Thu, 31 Aug 2023 16:21:30 +0300
>>
iewed-by from Eric.
[0] https://lore.kernel.org/netdev/20210418114200.5839-1-aloba...@pm.me
Fixes: 38ec4944b593 ("gro: ensure frag0 meets IP header alignment")
Reviewed-by: Eric Dumazet
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 8
1 file changed, 4 insertions(+
From: Eric Dumazet
Date: Mon, 19 Apr 2021 13:05:16 +0200
> On Sun, Apr 18, 2021 at 1:43 PM Alexander Lobakin wrote:
> >
> > Commit 38ec4944b593 ("gro: ensure frag0 meets IP header alignment")
> > did the right thing, but missed the fact that na
16:13:12 +0200, Magnus Karlsson
> > wrote:
> > > On Wed, Mar 31, 2021 at 2:27 PM Alexander Lobakin wrote:
> > > >
> > > > This series is based on the exceptional generic zerocopy xmit logics
> > > > initially introduced by Xuan Zhuo. It extends it
s Fast GRO for napi_gro_frags() that became very slow
after the mentioned commit, and preserves the introduced check to
avoid silent unaligned accesses.
Fixes: 38ec4944b593 ("gro: ensure frag0 meets IP header alignment")
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 8
1 file changed
On Friday, 2 April 2021, 18:09, Sami
Tolvanen wrote:
> On Fri, Apr 2, 2021 at 5:40 AM Alexander Lobakin aloba...@pm.me wrote:
>
> > When building with CONFIG_LD_DEAD_CODE_DATA_ELIMINATION,
> > -fdata-sections and -ffunction-sections are being enabled by the
> > top-le
odule sections if and only if
CONFIG_LTO_CLANG is enabled")
Signed-off-by: Alexander Lobakin
---
scripts/module.lds.S | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/scripts/module.lds.S b/scripts/module.lds.S
index 2c52535f9b56..d6bbdfc55e08 100644
---
From: Magnus Karlsson
Date: Wed, 31 Mar 2021 11:44:45 +0200
> On Wed, Mar 31, 2021 at 1:17 AM Alexander Lobakin wrote:
> >
> > This series is based on the exceptional generic zerocopy xmit logics
> > initially introduced by Xuan Zhuo. It extends it the way that it
> &g
n be found in lots
of drivers and places of core code and it is believed that 256
bytes are enough to store any headers of any frame.
Cc: Xuan Zhuo
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 25 +
1 file changed, 21 insertions(+), 4 deletions(-)
diff --git a/net
()) with
no loss.
Also align memcpy()'s len to sizeof(long) to improve its performance.
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 7 +--
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index a71ed664da0a..41f8f21b3348 100644
--- a/net/xdp/xsk.c
e.
[0] https://lore.kernel.org/netdev/20210330231528.546284-1-aloba...@pm.me
Alexander Lobakin (2):
xsk: speed-up generic full-copy xmit
xsk: introduce generic almost-zerocopy xmit
net/xdp/xsk.c | 32 ++--
1 file changed, 22 insertions(+), 10 deletions(-)
-
n be found in lots
of drivers and places of core code and it is believed that 256
bytes are enough to store any headers of any frame.
Cc: Xuan Zhuo
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 26 ++
1 file changed, 22 insertions(+), 4 deletions(-)
diff --git
.
Alexander Lobakin (2):
xsk: speed-up generic full-copy xmit
xsk: introduce generic almost-zerocopy xmit
net/xdp/xsk.c | 33 +++--
1 file changed, 23 insertions(+), 10 deletions(-)
--
Well, this is untested. I currently don't have an access to my setup
()) with
no loss.
Also align memcpy()'s len to sizeof(long) to improve its performance.
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 7 +--
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index a71ed664da0a..41f8f21b3348 100644
--- a/net/xdp/xsk.c
satisfied with
the results, especially the new array-based version.
Haven't had a chance to test this particular set yet, but still.
Reviewed-by: Alexander Lobakin
Great work, thank you all guys!
> ---
> include/net/page_pool.h | 2 +-
> net/core/page_pool.c| 82 ++
From: Ilias Apalodimas
Date: Wed, 24 Mar 2021 09:50:38 +0200
> Hi Alexander,
Hi!
> On Tue, Mar 23, 2021 at 08:03:46PM +, Alexander Lobakin wrote:
> > From: Ilias Apalodimas
> > Date: Tue, 23 Mar 2021 19:01:52 +0200
> >
> > > On Tue, Mar 23, 2021 at 04
From: Krzysztof WilczyĆski
Date: Wed, 24 Mar 2021 02:31:42 +0100
> Hi Alexander,
Hi!
> Thank you for sending the patch over!
>
> > A single dw_pcie entity can't be a root complex and an endpoint at
> > the same time.
>
> Nice catch!
>
> A small nitpick: this would be Root Complex and Endpoint,
From: Ilias Apalodimas
Date: Tue, 23 Mar 2021 19:01:52 +0200
> On Tue, Mar 23, 2021 at 04:55:31PM +0000, Alexander Lobakin wrote:
> > > > > > >
>
> [...]
>
> > > > > >
> > > > > > Thanks for the testing!
> > > > &
;)
Cc: sta...@vger.kernel.org # 4.19+
Signed-off-by: Alexander Lobakin
---
drivers/mtd/nand/spi/core.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
index 61d932c1b718..17f63f95f4a2 100644
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/
The module misses MODULE_DEVICE_TABLE() for both SPI and OF ID tables
and thus never autoloads on ID matches.
Add the missing declarations.
Present since day-0 of spinand framework introduction.
Cc: sta...@vger.kernel.org # 4.19+
Signed-off-by: Alexander Lobakin
---
drivers/mtd/nand/spi/core.c
as wrote:
> > >
> > > > On Tue, Mar 23, 2021 at 03:41:23PM +, Alexander Lobakin wrote:
> > > > > From: Matteo Croce
> > > > > Date: Mon, 22 Mar 2021 18:02:55 +0100
> > > > >
> > > > > > From: Matteo C
From: Jesper Dangaard Brouer
Date: Tue, 23 Mar 2021 10:01:38 +0100
> On Mon, 22 Mar 2021 18:30:55 +
> Alexander Lobakin wrote:
>
> > As per disscussion in Page Pool bulk allocator thread [0],
> > there are two functions in Page Pool core code that are marked as
>
From: Matteo Croce
Date: Mon, 22 Mar 2021 18:02:55 +0100
> From: Matteo Croce
>
> This series enables recycling of the buffers allocated with the page_pool API.
> The first two patches are just prerequisite to save space in a struct and
> avoid recycling pages allocated with other API.
> Patch
nce.
This simple removal of 'noinline' keywords bumps the throughput
on XDP_PASS + napi_build_skb() + napi_gro_receive() on 25+ Mbps
for 1G embedded NIC.
[0] https://lore.kernel.org/netdev/20210317222506.1266004-1-aloba...@pm.me
Signed-off-by: Alexander Lobakin
---
net/core/page_pool.c | 2 --
1 file chan
From: Paul Cercueil
Date: Sun, 21 Mar 2021 13:18:05 +
> LLVM's ld.lld chokes on the 64-bit sign-extended load addresses. Use
> 32-bit addresses if the linker is LLVM's ld.lld.
>
> Signed-off-by: Paul Cercueil
> ---
> arch/mips/generic/Platform | 4 ++--
> 1 file changed, 2 insertions(+), 2
themselves a
bit to let know if they belong to choice or menu{,config} block.
Alexander Lobakin (2):
kconfig: fence choices and menuconfigs with comments in .config too
kconfig: mention submenu type in comment blocks in .config
scripts/kconfig/confdata.c | 43
x
CONFIG_RESET_CONTROLLER=y
x CONFIG_RESET_BRCMSTB_RESCAL is not set
x CONFIG_RESET_INTEL_GW is not set
x CONFIG_RESET_TI_SYSCON is not set
x end of Reset Controller Support
Signed-off-by: Alexander Lobakin
---
scripts/kconfig/confdata.c | 25 ++---
1 file changed, 14
choice
x CONFIG_NO_HZ is not set
CONFIG_HIGH_RES_TIMERS=y
x end of Timers subsystem menu
Signed-off-by: Alexander Lobakin
---
scripts/kconfig/confdata.c | 18 +++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
themselves a
bit to let know if they belong to choice or menu{,config} block.
Alexander Lobakin (2):
kconfig: fence choices and menuconfigs with comments in .config too
kconfig: mention submenu type in comment blocks in .config
scripts/kconfig/confdata.c | 43
=y
CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y
Menuconfigs before:
CONFIG_RESET_CONTROLLER=y
Menuconfigs after:
CONFIG_RESET_CONTROLLER=y
Signed-off-by: Alexander Lobakin
---
scripts/kconfig/confdata.c | 25 ++---
1 file changed, 14 insertions(+), 11 deletions(-)
diff
CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
Signed-off-by: Alexander Lobakin
---
scripts/kconfig/confdata.c | 18 +++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index e4f0a21fd469..3f50d8b82a54 100644
cts inside this folder can be built without
DSA core, as well as when CONFIG_NET_DSA=m, no objects can be
built-in.
Signed-off-by: Alexander Lobakin
---
drivers/net/Makefile| 2 +-
drivers/net/dsa/Kconfig | 17 -
net/dsa/Kconfig | 10 +++---
3 files changed, 8 inserti
From: Paolo Abeni
Date: Fri, 19 Mar 2021 13:35:41 +0100
> On Fri, 2021-03-19 at 11:43 +0000, Alexander Lobakin wrote:
> > I'm not sure if you did it on purpose in commit aaa5d90b395a7
> > ("net: use indirect call wrappers at GRO network layer").
> > Was that inten
From: Alexander Lobakin
Date: Fri, 19 Mar 2021 11:13:25 +
> From: Paolo Abeni
> Date: Fri, 19 Mar 2021 11:53:42 +0100
>
> > Hello,
>
> Hi!
>
> > On Thu, 2021-03-18 at 18:42 +, Alexander Lobakin wrote:
> > > call_gro_receive() is used to
From: Paolo Abeni
Date: Fri, 19 Mar 2021 11:53:42 +0100
> Hello,
Hi!
> On Thu, 2021-03-18 at 18:42 +, Alexander Lobakin wrote:
> > call_gro_receive() is used to limit GRO recursion, but it works only
> > with callback pointers.
> > There's a combined ver
(when hardware stripping is
off or not available).
Signed-off-by: Alexander Lobakin
---
net/8021q/vlan_core.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/net/8021q/vlan_core.c b/net/8021q/vlan_core.c
index 78ec2e1b14d1..59bc13b5f14f 100644
--- a/net/8021q
.) GRO receive code to reduce the
penalty when processing the inner headers.
Signed-off-by: Alexander Lobakin
---
net/ethernet/eth.c | 11 ---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c
index e01cf766d2c5..933b427122be 100644
retpoline overhead when IP header lies behind another
offloaded proto.
Signed-off-by: Alexander Lobakin
---
include/net/gro.h | 8
1 file changed, 8 insertions(+)
diff --git a/include/net/gro.h b/include/net/gro.h
index 27c38b36df16..01edaf3fdda0 100644
--- a/include/net/gro.h
+++ b/include
t;net/core: move gro function declarations to separate
header ")
Signed-off-by: Alexander Lobakin
---
include/net/gro.h | 5 +
1 file changed, 5 insertions(+)
diff --git a/include/net/gro.h b/include/net/gro.h
index 8a6eb5303cc4..27c38b36df16 100644
--- a/include/net/gro.h
+++ b/include
(GENEVE, NvGRE, VxLAN)
for retpolined kernels.
Alexander Lobakin (4):
gro: make net/gro.h self-contained
gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper
vlan/8021q: avoid retpoline overhead on GRO
ethernet: avoid retpoline overhead on TEB (GENEVE, NvGRE, VxLAN) GRO
From: Jesper Dangaard Brouer
Date: Wed, 17 Mar 2021 18:19:43 +0100
> On Wed, 17 Mar 2021 16:52:32 +
> Alexander Lobakin wrote:
>
> > From: Jesper Dangaard Brouer
> > Date: Wed, 17 Mar 2021 17:38:44 +0100
> >
> > > On Wed, 17 Mar 2021 16:31:07
From: Jesper Dangaard Brouer
Date: Wed, 17 Mar 2021 17:38:44 +0100
> On Wed, 17 Mar 2021 16:31:07 +
> Alexander Lobakin wrote:
>
> > From: Mel Gorman
> > Date: Fri, 12 Mar 2021 15:43:24 +
> >
> > Hi there,
> >
> > > This series is base
From: Mel Gorman
Date: Fri, 12 Mar 2021 15:43:24 +
Hi there,
> This series is based on top of Matthew Wilcox's series "Rationalise
> __alloc_pages wrapper" and does not apply to 5.12-rc2. If you want to
> test and are not using Andrew's tree as a baseline, I suggest using the
> following
From: Jakub Kicinski
Date: Mon, 15 Mar 2021 12:00:39 -0700
> On Mon, 15 Mar 2021 09:38:57 +0000 Alexander Lobakin wrote:
> > From: Vladimir Oltean
> > Date: Sun, 14 Mar 2021 23:04:53 +0200
> >
> > > On Sun, Mar 14, 2021 at 11:11:32AM +, Alexander Lobakin wro
From: Tiezhu Yang
Date: Tue, 9 Mar 2021 12:18:13 +0800
> The asm code in csum_tcpudp_nofold() is performance-critical, I am sorry
> for the poorly considered implementation about the performance influence
> with GCC in the commit 198688edbf77 ("MIPS: Fix inline asm input/output
> type mismatch
From: Vladimir Oltean
Date: Sun, 14 Mar 2021 23:04:53 +0200
> On Sun, Mar 14, 2021 at 11:11:32AM +0000, Alexander Lobakin wrote:
> > Caught by the text editor. Fix it separately from the actual changes.
> >
> > Signed-off-by: Alexander Lobakin
> > ---
> >
It's used only for flow dissection, which now takes constant data
pointers.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
net/ethernet/eth.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/etherdevice.h b/include/linux
Caught by the text editor. Fix it separately from the actual changes.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 2e5debc0373c..bcb2f81baafb
ery packet (e.g. with RPS or driver that uses eth_get_headlen())
on 20 Mbps per flow/core.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 46c61e127e9f..ecc029674
Flow Dissector code never modifies the input buffer, neither skb nor
raw data.
Make 'data' argument const for all of the Flow dissector's functions.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 15 ++---
include/net/flow_dissector.h | 2 +-
net/core
The function never modifies the input buffer, so 'data' argument
can be marked as const.
This implies one harmless cast-away.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include
series applies with no conflicts, and
then on Patchwork it didn't;
- no other changes.
[0] https://lore.kernel.org/netdev/20210312194538.337504-1-aloba...@pm.me
[1] https://lore.kernel.org/netdev/20210313113645.5949-1-aloba...@pm.me
Alexander Lobakin (6):
flow_dissector: constify bpf_flow_disse
BPF Flow dissection programs are read-only and don't touch input
buffers.
Mark 'data' and 'data_end' in struct bpf_flow_dissector as const
in preparation for global input constifying.
Signed-off-by: Alexander Lobakin
---
include/net/flow_dissector.h | 4 ++--
1 file changed, 2 insertions(+), 2
From: David Miller
Date: Sat, 13 Mar 2021 18:10:00 -0800 (PST)
> None of these apply to net-next as per the patchwork automated checks. Any
> idea why?
No unfortunately. That'why I sent a follow-up mail. All of them
successfully apply to pure net-next on my machine.
Can it be a Git version
ned-off-by: Alexander Lobakin
---
net/core/dev.c | 22 +++---
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 1317e6b6758a..b635467087f3 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5953,7 +5953,7 @@ static v
'hash' stores not the flow hash, but the index of the GRO bucket
corresponding to it.
Change its name to 'bucket' to avoid confusion while reading lines
like '__set_bit(hash, >gro_bitmask)'.
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 12 ++--
1 file changed, 6 inserti
/netdev/20210312162127.239795-1-aloba...@pm.me
Alexander Lobakin (3):
gro: simplify gro_list_prepare()
gro: consistentify napi->gro_hash[x] access in dev_gro_receive()
gro: give 'hash' variable in dev_gro_receive() a less confusing name
net/core/dev.c |
off-by: Alexander Lobakin
---
net/core/dev.c | 12
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 2bfdd528c7c3..1317e6b6758a 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5858,15 +5858,13 @@ void napi_gro_flush(struct napi_str
From: Alexander Lobakin
Date: Sat, 13 Mar 2021 11:37:03 +
> This little number makes all of the flow dissection functions take
> raw input data pointer as const (1-5) and shuffles the branches in
> __skb_header_pointer() according to their hit probability.
>
> The result is +2
ery packet (e.g. with RPS or driver that uses eth_get_headlen())
on 20 Mbps per flow/core.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 46c61e127e9f..ecc029674
It's used only for flow dissection, which now takes constant data
pointers.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
net/ethernet/eth.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/etherdevice.h b/include/linux
Caught by the text editor. Fix it separately from the actual changes.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 2e5debc0373c..bcb2f81baafb
The function never modifies the input buffer, so @data argument
can be marked as const.
This implies one harmless cast-away.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include
Flow Dissector code never modifies the input buffer, neither skb nor
raw data.
Make @data argument const for all of the Flow dissector's functions.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 15 ++---
include/net/flow_dissector.h | 2 +-
net/core
BPF Flow dissection programs are read-only and don't touch input
buffers.
Mark @data and @data_end in struct bpf_flow_dissector as const in
preparation for global input constifying.
Signed-off-by: Alexander Lobakin
---
include/net/flow_dissector.h | 4 ++--
1 file changed, 2 insertions(+), 2
://lore.kernel.org/netdev/20210312194538.337504-1-aloba...@pm.me
Alexander Lobakin (6):
flow_dissector: constify bpf_flow_dissector's data pointers
skbuff: make __skb_header_pointer()'s data argument const
flow_dissector: constify raw input @data argument
linux/etherdevice.h: misc trailing
.
Fixes: 5dec597e5cd0 ("flow_dissector: extract more ICMP information")
Signed-off-by: Alexander Lobakin
---
net/core/flow_dissector.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/flow_dissector.c b/net/core/flow_dissector.c
index 2ef2224b3bff..a96a4f5de
It's used only for flow dissection, which now takes constant data
pointers.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
net/ethernet/eth.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/etherdevice.h b/include/linux
ery packet (e.g. with RPS or driver that uses eth_get_headlen())
on 20 Mbps per flow/core.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 7873f24c0ae5..71f4d6098
Caught by the text editor. Fix it separately from the actual changes.
Signed-off-by: Alexander Lobakin
---
include/linux/etherdevice.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 2e5debc0373c..bcb2f81baafb
Flow Dissector code never modifies the input buffer, neither skb nor
raw data.
Make @data argument const for all of the Flow dissector's functions.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 15 ++---
include/net/flow_dissector.h | 2 +-
net/core
The function never modifies the input buffer, so @data argument
can be marked as const.
This implies one harmless cast-away.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/linux/skbuff.h b/include
(with software hashing), drivers that
use eth_get_headlen() on their Rx path and so on.
Alexander Lobakin (6):
flow_dissector: constify bpf_flow_dissector's data pointers
skbuff: make __skb_header_pointer()'s data argument const
flow_dissector: constify raw input @data argument
linux/etherdevice.h
BPF Flow dissection programs are read-only and don't touch input
buffers.
Mark @data and @data_end in struct bpf_flow_dissector as const in
preparation for global input constifying.
Signed-off-by: Alexander Lobakin
---
include/net/flow_dissector.h | 4 ++--
1 file changed, 2 insertions(+), 2
From: Eric Dumazet
Date: Fri, 12 Mar 2021 17:47:04 +0100
> On Fri, Mar 12, 2021 at 5:22 PM Alexander Lobakin wrote:
> >
> > GRO bucket index doesn't change through the entire function.
> > Store a pointer to the corresponding bucket on stack once and use
> > it lat
From: Eric Dumazet
Date: Fri, 12 Mar 2021 17:33:53 +0100
> On Fri, Mar 12, 2021 at 5:22 PM Alexander Lobakin wrote:
> >
> > Most of the functions that "convert" hash value into an index
> > (when RPS is configured / XPS is not configured / etc.) set
> >
ersion between GRO hash buckets.
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 65d9e7d9d1e8..bd7c9ba54623 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5952,7 +5952,7
GRO bucket index doesn't change through the entire function.
Store a pointer to the corresponding bucket on stack once and use
it later instead of dereferencing again and again.
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 9 +
1 file changed, 5 insertions(+), 4 deletions
off-by: Alexander Lobakin
---
net/core/dev.c | 12
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index ee124aecb8a2..65d9e7d9d1e8 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -5858,15 +5858,13 @@ void napi_gro_flush(struct napi_str
'hash' stores not the flow hash, but the index of the GRO bucket
corresponding to it.
Change its name to 'bucket' to avoid confusion while reading lines
like '__set_bit(hash, >gro_bitmask)'.
Signed-off-by: Alexander Lobakin
---
net/core/dev.c | 18 +-
1 file changed
function and a number of Rx flows per single NAPI instance. I got
something like +10-15 Mbps on 4-8 flows NATing.
Alexander Lobakin (4):
gro: give 'hash' variable in dev_gro_receive() a less confusing name
gro: don't dereference napi->gro_hash[x] multiple times in
dev_gro_receive()
-by: Alexander Lobakin
---
drivers/pci/controller/dwc/pcie-designware.h | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/pci/controller/dwc/pcie-designware.h
b/drivers/pci/controller/dwc/pcie-designware.h
index 7247c8b01f04..ca8aeba548ab 100644
--- a/drivers/pci
From: Florian Fainelli
Date: Thu, 11 Mar 2021 09:41:27 -0800
Hi Florian,
> On 3/11/21 9:40 AM, Greg KH wrote:
> > On Thu, Mar 11, 2021 at 09:23:56AM -0800, Florian Fainelli wrote:
> >> On 3/11/21 5:08 AM, Greg KH wrote:
> >>> On Wed, Mar 10, 2021 at 08:19:45PM -0800, Florian Fainelli wrote:
>
0 fs/read_write.c:518
> vfs_write+0x791/0xa30 fs/read_write.c:605
> ksys_write+0x12d/0x250 fs/read_write.c:658
> do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
> entry_SYSCALL_64_after_hwframe+0x44/0xa9
>
> Reported-by: syzbot+80dccaee7c6630fa9...@syzkaller.appspotmail.com
&
From: Pavel Skripkin
Date: Sun, 28 Feb 2021 22:28:13 +0300
> Hi, thanks for reply!
>
> > From: Pavel Skripkin
> > Date: Sat, 27 Feb 2021 20:51:14 +0300
> >
> > Hi,
> >
> > > syzbot found WARNING in __alloc_pages_nodemask()[1] when order >=
> > > MAX_ORDER.
> > > It was caused by
From: Jakub Kicinski
Date: Sun, 28 Feb 2021 10:55:52 -0800
> On Sun, 28 Feb 2021 18:14:46 +0000 Alexander Lobakin wrote:
> > > [1] WARNING in __alloc_pages_nodemask+0x5f8/0x730 mm/page_alloc.c:5014
> > > Call Trace:
> > > __alloc_pages include/linux/gfp.h:511 [inl
From: Pavel Skripkin
Date: Sat, 27 Feb 2021 20:51:14 +0300
Hi,
> syzbot found WARNING in __alloc_pages_nodemask()[1] when order >= MAX_ORDER.
> It was caused by __netdev_alloc_skb(), which doesn't check len value after
> adding NET_SKB_PAD.
> Order will be >= MAX_ORDER and passed to
From: Pavel Skripkin
Date: Fri, 26 Feb 2021 22:11:06 +0300
Hi,
> syzbot found WARNING in __alloc_pages_nodemask()[1] when order >= MAX_ORDER.
> It was caused by __netdev_alloc_skb(), which doesn't check len value after
> adding NET_SKB_PAD.
> Order will be >= MAX_ORDER and passed to
From: Yury Norov
Date: Wed, 24 Feb 2021 07:44:16 -0800
> On Wed, Feb 24, 2021 at 11:52:55AM +0000, Alexander Lobakin wrote:
> > From: Yury Norov
> > Date: Sat, 5 Dec 2020 08:54:06 -0800
> >
> > Hi,
> >
> > > ARM64 doesn't implement find_first_{zero}
From: Yury Norov
Date: Sat, 5 Dec 2020 08:54:06 -0800
Hi,
> ARM64 doesn't implement find_first_{zero}_bit in arch code and doesn't
> enable it in config. It leads to using find_next_bit() which is less
> efficient:
>
> :
>0: aa0003e4mov x4, x0
>4: aa0103e0
From: Linus Torvalds
Date: Tue, 23 Feb 2021 12:33:05 -0800
> On Tue, Feb 23, 2021 at 9:49 AM Linus Torvalds
> wrote:
> >
> > On Mon, Feb 22, 2021 at 3:11 PM Kees Cook wrote:
> > >
> > > While x86 LTO enablement is done[1], it depends on some objtool
> > > clean-ups[2], though it appears those
From: Thomas Bogendoerfer
Date: Tue, 23 Feb 2021 13:21:44 +0100
> On Tue, Feb 23, 2021 at 11:36:41AM +0000, Alexander Lobakin wrote:
> > > LKP caught another bunch of orphaned instrumentation symbols [0]:
> > >
> > > mipsel-linux-ld: warning: orphan section `.data.$
rnel.org/lkml/202102231519.lwplpvev-...@intel.com
>
> Reported-by: kernel test robot
> Signed-off-by: Alexander Lobakin
> ---
> include/asm-generic/vmlinux.lds.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Hi Thomas,
This applies on top of mips-next or Linu
' from
`init/calibrate.o' being placed in section `.data.$LPBX0'
[...]
Soften the wildcard to .data.$L* to grab these ones into .data too.
[0] https://lore.kernel.org/lkml/202102231519.lwplpvev-...@intel.com
Reported-by: kernel test robot
Signed-off-by: Alexander Lobakin
---
include/asm-generic
From: Stephen Rothwell
Date: Tue, 23 Feb 2021 10:49:50 +1100
> Hi all,
Hi,
> On Mon, 15 Feb 2021 07:47:26 +1100 Stephen Rothwell
> wrote:
> >
> > On Mon, 18 Jan 2021 15:08:04 +1100 Stephen Rothwell
> > wrote:
> > >
> > > Today's linux-next merge of the kspp tree got a conflict in:
> > >
>
ear ]
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
Acked-by: John Fastabend
---
net/xdp/xsk.c | 120 --
1 file changed, 96 insertions(+), 24 deletions(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 143979ea4165..a71ed664da0a 100
ct need it (not so rare case).
Fixes: 35fcde7f8deb ("xsk: support for Tx")
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
Acked-by: John Fastabend
---
net/xdp/xsk.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xsk.c b/net/
From: Xuan Zhuo
Virtio net supports the case where the skb linear space is empty, so add
priv_flags.
Signed-off-by: Xuan Zhuo
Acked-by: Michael S. Tsirkin
Signed-off-by: Alexander Lobakin
Acked-by: John Fastabend
---
drivers/net/virtio_net.c | 3 ++-
1 file changed, 2 insertions(+), 1
whether the network card
supports this feature.
Signed-off-by: Xuan Zhuo
Suggested-by: Alexander Lobakin
[ alobakin: give a new flag more detailed description ]
Signed-off-by: Alexander Lobakin
Acked-by: John Fastabend
---
include/linux/netdevice.h | 4
1 file changed, 4 insertions(+)
diff
1 - 100 of 552 matches
Mail list logo