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
>>
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 DWAR
SAN
instrumentation can emit.
Catch these into .data with the wildcard as well.
[0] https://lore.kernel.org/linux-mm/202102160741.k57gcnsr-...@intel.com
Fixes: f41b233de0ae ("vmlinux.lds.h: catch UBSAN's "unnamed data" into data")
Reported-by: kernel test robot
Signed-o
This is harmless for now, but comes fatal for the subsequent patch.
Fixes: 871b642adebe3 ("netdev: introduce ndo_set_rx_headroom")
Signed-off-by: Alexander Lobakin
---
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/linux/netdevice.h b/inc
ver.1611236588.git.xuanz...@linux.alibaba.com
Alexander Lobakin (3):
netdev_priv_flags: add missing IFF_PHONY_HEADROOM self-definition
netdevice: check for net_device::priv_flags bitfield overflow
xsk: respect device's headroom and tailroom on generic xmit path
Xuan Zhuo (3):
net: ad
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
---
drivers/net/virtio_net.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a
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
---
include/linux/netdevice.h | 4
1 file changed, 4 insertions(+)
diff --git a/include/linux
but in fact need it (not so rare case).
Fixes: 35fcde7f8deb ("xsk: support for Tx")
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 4faabd1ecfd1..143979ea4165 100644
-
We almost ran out of unsigned int bitwidth. Define priv flags and
check for potential overflow in the fashion of netdev_features_t.
Defined this way, priv_flags can be easily expanded later with
just changing its typedef.
Signed-off-by: Alexander Lobakin
---
include/linux/netdevice.h | 135
ear ]
Signed-off-by: Alexander Lobakin
---
net/xdp/xsk.c | 119 --
1 file changed, 95 insertions(+), 24 deletions(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 143979ea4165..ff7bd06e1241 100644
--- a/net/xdp/xsk.c
+++ b/net/xdp/xsk.c
@@ -445,6 +445
From: Magnus Karlsson
Date: Tue, 16 Feb 2021 15:08:26 +0100
> On Tue, Feb 16, 2021 at 12:44 PM Alexander Lobakin wrote:
> >
> > From: Xuan Zhuo
> >
> > This patch is used to construct skb based on page to save memory copy
> > overhead.
> >
&g
ivers to avoid potential reallocations;
- fix skb->truesize accounting;
- misc comment rewords.
[0]
https://lore.kernel.org/netdev/cover.1611236588.git.xuanz...@linux.alibaba.com
[1] https://lore.kernel.org/netdev/20210216113740.62041-1-aloba...@pm.me
Alexander Lobakin (3):
netdev_priv_flags: add
We almost ran out of unsigned int bitwidth. Define priv flags and
check for potential overflow in the fashion of netdev_features_t.
Defined this way, priv_flags can be easily expanded later with
just changing its typedef.
Signed-off-by: Alexander Lobakin
Reported-by: kernel test robot
This is harmless for now, but comes fatal for the subsequent patch.
Fixes: 871b642adebe3 ("netdev: introduce ndo_set_rx_headroom")
Signed-off-by: Alexander Lobakin
---
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/linux/netdevice.h b/inc
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
---
include/linux/netdevice.h | 4
1 file changed, 4 insertions(+)
diff --git a/include/linux
but in fact need it (not so rare case).
Fixes: 35fcde7f8deb ("xsk: support for Tx")
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
net/xdp/xsk.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 4faabd1ec
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
---
drivers/net/virtio_net.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a
ear ]
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
net/xdp/xsk.c | 119 --
1 file changed, 95 insertions(+), 24 deletions(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 143979ea4165..ff7bd06e1241 100644
--- a/net/xdp/xsk.c
+++ b/
From: Alexander Lobakin
Date: Tue, 16 Feb 2021 14:35:02 +
> From: Xuan Zhuo
>
> This patch is used to construct skb based on page to save memory copy
> overhead.
>
> This function is implemented based on IFF_TX_SKB_NO_LINEAR. Only the
> network car
041-1-aloba...@pm.me
[2] https://lore.kernel.org/netdev/2021021614.5861-1-aloba...@pm.me
Alexander Lobakin (3):
netdev_priv_flags: add missing IFF_PHONY_HEADROOM self-definition
netdevice: check for net_device::priv_flags bitfield overflow
xsk: respect device's headroom and tailroom
This is harmless for now, but comes fatal for the subsequent patch.
Fixes: 871b642adebe3 ("netdev: introduce ndo_set_rx_headroom")
Signed-off-by: Alexander Lobakin
---
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/linux/netdevice.h b/inc
We almost ran out of unsigned int bitwidth. Define priv flags and
check for potential overflow in the fashion of netdev_features_t.
Defined this way, priv_flags can be easily expanded later with
just changing its typedef.
Signed-off-by: Alexander Lobakin
Reported-by: kernel test robot
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
---
include/linux/netdevice.h | 4
1 file changed, 4 insertions(+)
diff --git a/include/linux
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
---
drivers/net/virtio_net.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a
but in fact need it (not so rare case).
Fixes: 35fcde7f8deb ("xsk: support for Tx")
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
net/xdp/xsk.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 4faabd1ec
ear ]
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
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 100644
--- a/net/xdp/xsk.c
+++ b/
From: Nick Desaulniers
Date: Tue, 16 Feb 2021 09:56:32 -0800
> On Tue, Feb 16, 2021 at 12:55 AM Alexander Lobakin wrote:
> >
> > LKP triggered lots of LD orphan warnings [0]:
>
> Thanks for the patch, just some questions.
>
> With which linker? Was there a parti
From: Kees Cook
Date: Tue, 16 Feb 2021 12:34:37 -0800
> Hi Linus,
>
> Please pull this Clang Link Time Optimization series for v5.12-rc1. This
> has been in linux-next for the entire last development cycle, and is
> built on the work done preparing[0] for LTO by arm64 folks, tracing folks,
> etc
Hi Edward,
Seems like I've found another poisoned skb->next crash with
netif_receive_skb_list().
This is similar to the one than has been already fixed in 22f6bbb7bcfc
("net: use skb_list_del_init() to remove from RX sublists"). This one
however
applies only to non-standard ptypes (in my case -
From: Paolo Abeni
Date: Thu, 11 Feb 2021 15:55:04 +0100
> On Thu, 2021-02-11 at 14:28 +0000, Alexander Lobakin wrote:
> > From: Paolo Abeni on Thu, 11 Feb 2021 11:16:40 +0100
> > wrote:
> > > What about changing __napi_alloc_skb() to always use
> > > the __n
360-1-aloba...@pm.me
[3] https://lore.kernel.org/netdev/20210210162732.80467-1-aloba...@pm.me
Alexander Lobakin (11):
skbuff: move __alloc_skb() next to the other skb allocation functions
skbuff: simplify kmalloc_reserve()
skbuff: make __build_skb_around() return void
skbuff: simplify __a
In preparation before reusing several functions in all three skb
allocation variants, move __alloc_skb() next to the
__netdev_alloc_skb() and __napi_alloc_skb().
No functional changes.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 284 +++---
1
Eversince the introduction of __kmalloc_reserve(), "ip" argument
hasn't been used. _RET_IP_ is embedded inside
kmalloc_node_track_caller().
Remove the redundant macro and rename the function after it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 7 ++-
1
Just call __build_skb_around() instead of open-coding it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 18 +-
1 file changed, 1 insertion(+), 17 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 88566de26cd1..1c6f6ef70339 100644
--- a/net/core
__build_skb_around() can never fail and always returns passed skb.
Make it return void to simplify and optimize the code.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/net/core/skbuff.c b/net/core
ggested-by: Eric Dumazet
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 -
net/core/dev.c | 7 +--
net/core/skbuff.c | 12
3 files changed, 1 insertion(+), 19 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 0a
Use unlikely() annotations for skbuff_head and data similarly to the
two other allocation functions and remove totally redundant goto.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/net/core/skbuff.c b/net
NAPI cache structures will be used for allocating skbuff_heads,
so move their declarations a bit upper.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 90 +++
1 file changed, 45 insertions(+), 45 deletions(-)
diff --git a/net/core/skbuff.c
, 32}).
Suggested-by: Edward Cree # Divide on two halves
Suggested-by: Eric Dumazet# KASAN poisoning
Cc: Dmitry Vyukov # Help with KASAN
Cc: Paolo Abeni # Reduced batch size
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 2 +
net/core/skbuff.c
: Alexander Lobakin
---
net/core/skbuff.c | 13 +
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 9e1a8ded4acc..a0b457ae87c2 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -397,15 +397,20 @@ struct sk_buff *__alloc_skb
kmalloc and page
frag paths.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index a0b457ae87c2..c8f3ea1d9fbb 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -563,7
() to skbuff.c, so it can drop skbs
to NAPI cache.
As many drivers call napi_alloc_skb()/napi_get_frags() on their
receive path, this becomes especially useful.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 +
net/core/dev.c | 9 +
net/core/skbuff.c | 12
From: Alexander Duyck
Date: Thu, 11 Feb 2021 19:18:45 -0800
> On Thu, Feb 11, 2021 at 11:00 AM Alexander Lobakin wrote:
> >
> > Reuse the old and forgotten SKB_ALLOC_NAPI to add an option to get
> > an skbuff_head from the NAPI cache instead of inplace allocation
&
From: Alexander Duyck
Date: Thu, 11 Feb 2021 19:28:52 -0800
> On Thu, Feb 11, 2021 at 10:57 AM Alexander Lobakin wrote:
> >
> > This function isn't much needed as NAPI skb queue gets bulk-freed
> > anyway when there's no more room, and even may reduce the ef
https://lore.kernel.org/netdev/20210113133523.39205-1-aloba...@pm.me
[2] https://lore.kernel.org/netdev/20210209204533.327360-1-aloba...@pm.me
[3] https://lore.kernel.org/netdev/20210210162732.80467-1-aloba...@pm.me
[4] https://lore.kernel.org/netdev/20210211185220.9753-1-aloba...@pm.me
Alexande
Eversince the introduction of __kmalloc_reserve(), "ip" argument
hasn't been used. _RET_IP_ is embedded inside
kmalloc_node_track_caller().
Remove the redundant macro and rename the function after it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 7 ++-
1
__build_skb_around() can never fail and always returns passed skb.
Make it return void to simplify and optimize the code.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/net/core/skbuff.c b/net/core
In preparation before reusing several functions in all three skb
allocation variants, move __alloc_skb() next to the
__netdev_alloc_skb() and __napi_alloc_skb().
No functional changes.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 284 +++---
1
Use unlikely() annotations for skbuff_head and data similarly to the
two other allocation functions and remove totally redundant goto.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/net/core/skbuff.c b/net
Just call __build_skb_around() instead of open-coding it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 18 +-
1 file changed, 1 insertion(+), 17 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 88566de26cd1..1c6f6ef70339 100644
--- a/net/core
NAPI cache structures will be used for allocating skbuff_heads,
so move their declarations a bit upper.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 90 +++
1 file changed, 45 insertions(+), 45 deletions(-)
diff --git a/net/core/skbuff.c
ggested-by: Eric Dumazet
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 -
net/core/dev.c | 7 +--
net/core/skbuff.c | 12
3 files changed, 1 insertion(+), 19 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 0a
, 32}).
Suggested-by: Edward Cree # Divide on two halves
Suggested-by: Eric Dumazet# KASAN poisoning
Cc: Dmitry Vyukov # Help with KASAN
Cc: Paolo Abeni # Reduced batch size
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 2 +
net/core/skbuff.c
# Simplified flags check
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 9e1a8ded4acc..a80581eed7fc 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -405,7 +405,11
() to skbuff.c, so it can drop skbs
to NAPI cache.
As many drivers call napi_alloc_skb()/napi_get_frags() on their
receive path, this becomes especially useful.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 +
net/core/dev.c | 9 +
net/core/skbuff.c | 12
kmalloc and page
frag paths.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index a80581eed7fc..875e1a453f7e 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -562,7
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:
> > >
> >
1' from
`init/calibrate.o' being placed in section `.data.$LPBX1'
mipsel-linux-ld: warning: orphan section `.data.$LPBX0' 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:
ection `.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
> ---
> includ
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.$
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 a
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: Paolo Abeni
Date: Wed, 10 Feb 2021 11:21:06 +0100
> Hello,
Hi!
> I'm sorry for the late feedback, I could not step-in before.
>
> Also adding Jesper for awareness, as he introduced the bulk free
> infrastructure.
>
> On Tue, 2021-02-09 at 20:48 +000
159-1-aloba...@pm.me
[1] https://lore.kernel.org/netdev/20210113133523.39205-1-aloba...@pm.me
[2] https://lore.kernel.org/netdev/20210209204533.327360-1-aloba...@pm.me
Alexander Lobakin (11):
skbuff: move __alloc_skb() next to the other skb allocation functions
skbuff: simplify kmalloc_reserve()
skbuff: ma
In preparation before reusing several functions in all three skb
allocation variants, move __alloc_skb() next to the
__netdev_alloc_skb() and __napi_alloc_skb().
No functional changes.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 284 +++---
1
Eversince the introduction of __kmalloc_reserve(), "ip" argument
hasn't been used. _RET_IP_ is embedded inside
kmalloc_node_track_caller().
Remove the redundant macro and rename the function after it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 7 ++-
1
__build_skb_around() can never fail and always returns passed skb.
Make it return void to simplify and optimize the code.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/net/core/skbuff.c b/net/core
ggested-by: Eric Dumazet
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 -
net/core/dev.c | 6 +-
net/core/skbuff.c | 12
3 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 0a
Use unlikely() annotations for skbuff_head and data similarly to the
two other allocation functions and remove totally redundant goto.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/net/core/skbuff.c b/net
, 32}).
Suggested-by: Edward Cree # Divide on two halves
Suggested-by: Eric Dumazet# KASAN poisoning
Cc: Dmitry Vyukov # Help with KASAN
Cc: Paolo Abeni # Reduced batch size
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 2 +
net/core/skbuff.c
NAPI cache structures will be used for allocating skbuff_heads,
so move their declarations a bit upper.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 90 +++
1 file changed, 45 insertions(+), 45 deletions(-)
diff --git a/net/core/skbuff.c
: Alexander Lobakin
---
net/core/skbuff.c | 13 +
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 9e1a8ded4acc..750fa1825b28 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -397,15 +397,20 @@ struct sk_buff *__alloc_skb
Just call __build_skb_around() instead of open-coding it.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 18 +-
1 file changed, 1 insertion(+), 17 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 88566de26cd1..1c6f6ef70339 100644
--- a/net/core
() to skbuff.c, so it can drop skbs
to NAPI cache.
As many drivers call napi_alloc_skb()/napi_get_frags() on their
receive path, this becomes especially useful.
Signed-off-by: Alexander Lobakin
---
include/linux/skbuff.h | 1 +
net/core/dev.c | 9 +
net/core/skbuff.c | 12
kmalloc and page
frag paths.
Signed-off-by: Alexander Lobakin
---
net/core/skbuff.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 750fa1825b28..ac6e0172f206 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -563,7
From: Paolo Abeni
Date: Thu, 11 Feb 2021 11:16:40 +0100
> On Wed, 2021-02-10 at 16:30 +0000, Alexander Lobakin wrote:
> > Reuse the old and forgotten SKB_ALLOC_NAPI to add an option to get
> > an skbuff_head from the NAPI cache instead of inplace allocation
> > inside __
From: Jesper Dangaard Brouer
Date: Thu, 11 Feb 2021 13:54:59 +0100
> On Wed, 10 Feb 2021 16:30:23 +
> Alexander Lobakin wrote:
>
> > Instead of just bulk-flushing skbuff_heads queued up through
> > napi_consume_skb() or __kfree_skb_defer(), try to reuse them
&
netdev/cover.1611236588.git.xuanz...@linux.alibaba.com
[1] https://lore.kernel.org/netdev/20210216113740.62041-1-aloba...@pm.me
[2] https://lore.kernel.org/netdev/2021021614.5861-1-aloba...@pm.me
[3] https://lore.kernel.org/netdev/20210216172640.374487-1-aloba...@pm.me
Alexander Lobakin (3):
This is harmless for now, but comes fatal for the subsequent patch.
Fixes: 871b642adebe3 ("netdev: introduce ndo_set_rx_headroom")
Signed-off-by: Alexander Lobakin
---
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/linux/netdevice.h b/inc
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
---
drivers/net/virtio_net.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a
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
---
include/linux/netdevice.h | 4
1 file changed, 4 insertions(+)
diff --git a/include/linux
We almost ran out of unsigned int bitwidth. Define priv flags and
check for potential overflow in the fashion of netdev_features_t.
Defined this way, priv_flags can be easily expanded later with
just changing its typedef.
Signed-off-by: Alexander Lobakin
Reported-by: kernel test robot
ear ]
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
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 100644
--- a/net/xdp/xsk.c
+++ b/
but in fact need it (not so rare case).
Fixes: 35fcde7f8deb ("xsk: support for Tx")
Signed-off-by: Alexander Lobakin
Acked-by: Magnus Karlsson
---
net/xdp/xsk.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c
index 4faabd1ec
1-aloba...@pm.me
[4] https://lore.kernel.org/netdev/20210217120003.7938-1-aloba...@pm.me
Alexander Lobakin (2):
netdevice: add missing IFF_PHONY_HEADROOM self-definition
xsk: respect device's headroom and tailroom on generic xmit path
Xuan Zhuo (3):
net: add priv_flags for allow tx skb without
This is harmless for now, but can be fatal for future refactors.
Fixes: 871b642adebe3 ("netdev: introduce ndo_set_rx_headroom")
Signed-off-by: Alexander Lobakin
Acked-by: John Fastabend
---
include/linux/netdevice.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/linux/n
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
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
but in fact 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/xs
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
From: Dongseok Yi
Date: Sat, 30 Jan 2021 08:13:27 +0900
> UDP/IP header of UDP GROed frag_skbs are not updated even after NAT
> forwarding. Only the header of head_skb from ip_finish_output_gso ->
> skb_gso_segment is updated but following frag_skbs are not updated.
>
> A call path skb_mac_gso_s
From: Jakub Kicinski
Date: Fri, 29 Jan 2021 18:39:07 -0800
> On Wed, 27 Jan 2021 20:11:23 +0000 Alexander Lobakin wrote:
> > + * dev_page_is_reserved - check whether a page can be reused for network Rx
> > + * @page: the page to test
> > + *
> > + * A page shouldn&
From: Jakub Kicinski
Date: Sat, 30 Jan 2021 11:07:07 -0800
> On Sat, 30 Jan 2021 15:42:29 +0000 Alexander Lobakin wrote:
> > > On Wed, 27 Jan 2021 20:11:23 +0000 Alexander Lobakin wrote:
> > > > + * dev_page_is_reserved - check whether a page can be reused
The function doesn't write anything to the page struct itself,
so this argument can be const.
Misc: align second argument to the brace while at it.
Signed-off-by: Alexander Lobakin
Reviewed-by: Jesse Brandeburg
Acked-by: David Rientjes
---
include/linux/skbuff.h | 4 ++--
1 file chang
Jakub Kicinski
Cc: John Hubbard
Signed-off-by: Alexander Lobakin
---
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c | 17 ++---
drivers/net/ethernet/intel/fm10k/fm10k_main.c | 13 -
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 15 +--
drivers/net/ethernet/
pool_page_reusable() is a leftover from pre-NUMA-aware times. For now,
this function is just a redundant wrapper over page_is_pfmemalloc(),
so inline it into its sole call site.
Signed-off-by: Alexander Lobakin
Acked-by: Jesper Dangaard Brouer
Reviewed-by: Ilias Apalodimas
Reviewed-by: Jesse
From: Matthew Wilcox
Date: Sun, 31 Jan 2021 12:23:48 +
> On Sun, Jan 31, 2021 at 12:12:11PM +0000, Alexander Lobakin wrote:
> > pool_page_reusable() is a leftover from pre-NUMA-aware times. For now,
> > this function is just a redundant wrapper over page_is_pfmemalloc(),
&
From: Matthew Wilcox
Date: Sun, 31 Jan 2021 12:22:05 +
> On Sun, Jan 31, 2021 at 12:11:52PM +0000, Alexander Lobakin wrote:
> > A bunch of drivers test the page before reusing/recycling for two
> > common conditions:
> > - if a page was allocated under memory pres
a...@pm.me
[1] https://lore.kernel.org/netdev/20210127201031.98544-1-aloba...@pm.me
Alexander Lobakin (5):
mm: constify page_is_pfmemalloc() argument
skbuff: constify skb_propagate_pfmemalloc() "page" argument
net: introduce common dev_page_is_reusable()
net: use the new dev_page_is_reusable
The function only tests for page->index, so its argument should be
const.
Signed-off-by: Alexander Lobakin
Reviewed-by: Jesse Brandeburg
Acked-by: David Rientjes
---
include/linux/mm.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/mm.h b/include/linux/m
1 - 100 of 554 matches
Mail list logo