[PATCH mips-next 2/2] MIPS: pgtable: fix -Wshadow in asm/pgtable.h

2021-01-14 Thread Alexander Lobakin
: in expansion of macro ‘htw_stop’ 162 | htw_stop(); | ^~~~ In file included from kernel/fork.c:102: ./arch/mips/include/asm/mmu_context.h:159:16: note: shadowed declaration is here 159 | unsigned long flags; |^ Signed-off-by: Alexander Lobakin --- arch

[PATCH net] skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too

2021-01-14 Thread Alexander Lobakin
ed manually via __netdev_alloc_skb(), where the check for size hasn't been changed. Mirror the condition from __napi_alloc_skb() to prevent from that. Fixes: 3226b158e67c ("net: avoid 32 x truesize under-estimation for tiny skbs") Signed-off-by: Alexander Lobakin --- net/core/skbuff.c | 6 +-

Re: [PATCH net] udp: ipv4: manipulate network header of NATed UDP GRO fraglist

2021-01-15 Thread Alexander Lobakin
From: Steffen Klassert Date: Fri, 15 Jan 2021 10:27:52 +0100 > On Fri, Jan 15, 2021 at 05:55:22PM +0900, Dongseok Yi wrote: >> On 2021-01-15 17:12, Steffen Klassert wrote: >>> On Fri, Jan 15, 2021 at 02:58:24PM +0900, Dongseok Yi wrote: UDP/IP header of UDP GROed frag_skbs are not updated ev

Re: [PATCH RESEND] PCI: dwc: put struct dw_pcie::{ep,pp} into a union to reduce its size

2021-03-24 Thread Alexander Lobakin
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,

Re: [PATCH net-next 0/6] page_pool: recycle buffers

2021-03-24 Thread Alexander Lobakin
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

Re: [PATCH 9/9] net: page_pool: use alloc_pages_bulk in refill code path

2021-03-25 Thread Alexander Lobakin
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

[PATCH net-next 0/4] net: avoid retpoline overhead on VLAN and TEB GRO

2021-03-18 Thread Alexander Lobakin
(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

[PATCH net-next 2/4] gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper

2021-03-18 Thread Alexander Lobakin
d to avoid 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 +++

[PATCH net-next 1/4] gro: make net/gro.h self-contained

2021-03-18 Thread Alexander Lobakin
00ab2275f ("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.

[PATCH net-next 4/4] ethernet: avoid retpoline overhead on TEB (GENEVE, NvGRE, VxLAN) GRO

2021-03-18 Thread Alexander Lobakin
.) 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 --- a

[PATCH net-next 3/4] vlan/8021q: avoid retpoline overhead on GRO

2021-03-18 Thread Alexander Lobakin
(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

Re: [PATCH net-next 2/4] gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper

2021-03-19 Thread Alexander Lobakin
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 combine

Re: [PATCH net-next 2/4] gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper

2021-03-19 Thread Alexander Lobakin
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 limit GRO

Re: [PATCH net-next 2/4] gro: add combined call_gro_receive() + INDIRECT_CALL_INET() helper

2021-03-19 Thread Alexander Lobakin
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

[PATCH net-next] dsa: simplify Kconfig symbols and dependencies

2021-03-19 Thread Alexander Lobakin
A is y or m. This is safe since no objects 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

[PATCH 0/2] kconfig: fence choices and menuconfigs with comments in .config too

2021-03-19 Thread Alexander Lobakin
ments 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

[PATCH 1/2] kconfig: fence choices and menuconfigs with comments in .config too

2021-03-19 Thread Alexander Lobakin
=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

[PATCH 2/2] kconfig: mention submenu type in comment blocks in .config

2021-03-19 Thread Alexander Lobakin
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 --- a

[PATCH RESEND 0/2] kconfig: fence choices and menuconfigs with comments in .config too

2021-03-19 Thread Alexander Lobakin
ments 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

[PATCH RESEND 1/2] kconfig: fence choices and menuconfigs with comments in .config too

2021-03-19 Thread Alexander Lobakin
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

[PATCH RESEND 2/2] kconfig: mention submenu type in comment blocks in .config

2021-03-19 Thread Alexander Lobakin
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

Re: [PATCH net-next 0/6] page_pool: recycle buffers

2021-03-23 Thread Alexander Lobakin
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 2

Re: [PATCH net-next] page_pool: let the compiler optimize and inline core functions

2021-03-23 Thread Alexander Lobakin
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 >

Re: [PATCH net-next 0/6] page_pool: recycle buffers

2021-03-23 Thread Alexander Lobakin
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

[PATCH mtd/fixes] mtd: spinand: core: add missing MODULE_DEVICE_TABLE()

2021-03-23 Thread Alexander Lobakin
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

[PATCH v2 mtd/fixes] mtd: spinand: core: add missing MODULE_DEVICE_TABLE()

2021-03-23 Thread Alexander Lobakin
;) 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/

Re: [PATCH net-next 0/6] page_pool: recycle buffers

2021-03-23 Thread Alexander Lobakin
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! > > > > &

[PATCH bpf-next 1/2] xsk: speed-up generic full-copy xmit

2021-03-30 Thread Alexander Lobakin
()) 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/

[PATCH bpf-next 2/2] xsk: introduce generic almost-zerocopy xmit

2021-03-30 Thread Alexander Lobakin
e 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

[PATCH bpf-next 0/2] xsk: introduce generic almost-zerocopy xmit

2021-03-30 Thread Alexander Lobakin
. 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 a

[PATCH v2 bpf-next 0/2] xsk: introduce generic almost-zerocopy xmit

2021-03-31 Thread Alexander Lobakin
e size. [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(-) --

[PATCH v2 bpf-next 2/2] xsk: introduce generic almost-zerocopy xmit

2021-03-31 Thread Alexander Lobakin
e 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

[PATCH v2 bpf-next 1/2] xsk: speed-up generic full-copy xmit

2021-03-31 Thread Alexander Lobakin
()) 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/

Re: [PATCH bpf-next 0/2] xsk: introduce generic almost-zerocopy xmit

2021-03-31 Thread Alexander Lobakin
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

[PATCH] MIPS: generic: Support linking with LLVM ld.lld

2021-03-22 Thread Alexander Lobakin
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

[PATCH net-next] page_pool: let the compiler optimize and inline core functions

2021-03-22 Thread Alexander Lobakin
rmful for performance. 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/c

Re: [PATCH] kbuild: merge module sections under CONFIG_LD_DEAD_CODE_DATA_ELIMINATION too

2021-04-06 Thread Alexander Lobakin
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

[PATCH] kbuild: merge module sections under CONFIG_LD_DEAD_CODE_DATA_ELIMINATION too

2021-04-02 Thread Alexander Lobakin
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 ---

[PATCH net] gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check

2021-04-18 Thread Alexander Lobakin
st 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

Re: [PATCH v2 bpf-next 0/2] xsk: introduce generic almost-zerocopy xmit

2021-04-18 Thread Alexander Lobakin
2021 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 extend

Re: [PATCH net] gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check

2021-04-19 Thread Alexander Lobakin
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 napi_g

[PATCH v2 net] gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check

2021-04-19 Thread Alexander Lobakin
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(+

Re: [PATCH v3 net-next 4/6] linux/etherdevice.h: misc trailing whitespace cleanup

2021-03-17 Thread Alexander Lobakin
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

Re: [PATCH 0/7 v4] Introduce a bulk order-0 page allocator with two in-tree users

2021-03-17 Thread Alexander Lobakin
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 git

Re: [PATCH 0/7 v4] Introduce a bulk order-0 page allocator with two in-tree users

2021-03-17 Thread Alexander Lobakin
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

Re: [PATCH 0/7 v4] Introduce a bulk order-0 page allocator with two in-tree users

2021-03-17 Thread Alexander Lobakin
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

[PATCH pci-next] pci: remap: keep both device name and resource name for config space

2020-11-19 Thread Alexander Lobakin
I Bus :01 1900-1900 : :01:00.0 1910-191f : PCI Bus :01 1a00-1aff : pci@18b2 1a00-1a0f : PCI Bus 0001:01 1a00-1a00 : 0001:01:00.0 1a10-1a1f : PCI Bus 0001:01 Signed-off-by: Alexander Lobakin --- drivers/pci/pci.c | 9 ++

[PATCH v2 pci-next] PCI: Keep both device name and resource name for config space remaps

2020-11-19 Thread Alexander Lobakin
age (Bjorn); - no functional changes. [0] https://lore.kernel.org/lkml/jvyozv8k8n5ccdp1xflodowh4abfrxdmmoeexr6...@cp4-web-036.plabs.ch Cc: Bjorn Helgaas Signed-off-by: Alexander Lobakin --- drivers/pci/pci.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/p

Re: [PATCH v3] net/core/skbuff: fix passing wrong size to __alloc_skb

2021-02-28 Thread Alexander Lobakin
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 __alloc_pag

Re: [PATCH v3] net/core/skbuff: fix passing wrong size to __alloc_skb

2021-02-28 Thread Alexander Lobakin
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

Re: [PATCH v3] net/core/skbuff: fix passing wrong size to __alloc_skb

2021-02-28 Thread Alexander Lobakin
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 __netdev_alloc_s

Re: [PATCH v4] net/qrtr: fix __netdev_alloc_skb call

2021-02-28 Thread Alexander Lobakin
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 &

Re: [PATCH 5.4 00/24] 5.4.105-rc1 review

2021-03-12 Thread Alexander Lobakin
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: > >>

[PATCH RESEND] PCI: dwc: put struct dw_pcie::{ep,pp} into a union to reduce its size

2021-03-12 Thread Alexander Lobakin
ff-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/driver

[PATCH net-next 1/4] gro: give 'hash' variable in dev_gro_receive() a less confusing name

2021-03-12 Thread Alexander Lobakin
'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, &napi->gro_bitmask)'. Signed-off-by: Alexander Lobakin --- net/core/dev.c | 18

[PATCH net-next 2/4] gro: don't dereference napi->gro_hash[x] multiple times in dev_gro_receive()

2021-03-12 Thread Alexander Lobakin
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 dele

[PATCH net-next 3/4] gro: simplify gro_list_prepare()

2021-03-12 Thread Alexander Lobakin
ket list. Signed-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

[PATCH net-next 4/4] gro: improve flow distribution across GRO buckets in dev_gro_receive()

2021-03-12 Thread Alexander Lobakin
flow dispersion 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,

[PATCH net-next 0/4] gro: micro-optimize dev_gro_receive()

2021-03-12 Thread Alexander Lobakin
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_g

Re: [PATCH net-next 4/4] gro: improve flow distribution across GRO buckets in dev_gro_receive()

2021-03-12 Thread Alexander Lobakin
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 > > re

Re: [PATCH net-next 2/4] gro: don't dereference napi->gro_hash[x] multiple times in dev_gro_receive()

2021-03-12 Thread Alexander Lobakin
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 > > i

[PATCH net-next 0/6] skbuff: micro-optimize flow dissection

2021-03-12 Thread Alexander Lobakin
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/eth

[PATCH net-next 1/6] flow_dissector: constify bpf_flow_dissector's data pointers

2021-03-12 Thread Alexander Lobakin
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(

[PATCH net-next 3/6] flow_dissector: constify raw input @data argument

2021-03-12 Thread Alexander Lobakin
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

[PATCH net-next 4/6] linux/etherdevice.h: misc trailing whitespace cleanup

2021-03-12 Thread Alexander Lobakin
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

[PATCH net-next 2/6] skbuff: make __skb_header_pointer()'s data argument const

2021-03-12 Thread Alexander Lobakin
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

[PATCH net-next 6/6] skbuff: micro-optimize {,__}skb_header_pointer()

2021-03-12 Thread Alexander Lobakin
Dissector pass on every 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 787

[PATCH net-next 5/6] ethernet: constify eth_get_headlen()'s @data argument

2021-03-12 Thread 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/

[PATCH net] flow_dissector: fix byteorder of dissected ICMP ID

2021-03-12 Thread Alexander Lobakin
. 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

[PATCH v2 net-next 0/6] skbuff: micro-optimize flow dissection

2021-03-13 Thread Alexander Lobakin
https://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

[PATCH v2 net-next 1/6] flow_dissector: constify bpf_flow_dissector's data pointers

2021-03-13 Thread Alexander Lobakin
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(

[PATCH v2 net-next 3/6] flow_dissector: constify raw input @data argument

2021-03-13 Thread Alexander Lobakin
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

[PATCH v2 net-next 5/6] ethernet: constify eth_get_headlen()'s @data argument

2021-03-13 Thread 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/

[PATCH v2 net-next 4/6] linux/etherdevice.h: misc trailing whitespace cleanup

2021-03-13 Thread Alexander Lobakin
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

[PATCH v2 net-next 2/6] skbuff: make __skb_header_pointer()'s data argument const

2021-03-13 Thread Alexander Lobakin
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

[PATCH v2 net-next 6/6] skbuff: micro-optimize {,__}skb_header_pointer()

2021-03-13 Thread Alexander Lobakin
Dissector pass on every 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 46c

Re: [PATCH v2 net-next 0/6] skbuff: micro-optimize flow dissection

2021-03-13 Thread Alexander Lobakin
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

[PATCH v2 net-next 1/3] gro: simplify gro_list_prepare()

2021-03-13 Thread Alexander Lobakin
ket list. Signed-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

[PATCH v2 net-next 0/3] gro: micro-optimize dev_gro_receive()

2021-03-13 Thread Alexander Lobakin
/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/co

[PATCH v2 net-next 2/3] gro: consistentify napi->gro_hash[x] access in dev_gro_receive()

2021-03-13 Thread Alexander Lobakin
ine branches. Signed-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 @@

[PATCH v2 net-next 3/3] gro: give 'hash' variable in dev_gro_receive() a less confusing name

2021-03-13 Thread Alexander Lobakin
'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, &napi->gro_bitmask)'. Signed-off-by: Alexander Lobakin --- net/core/dev.c

Re: [PATCH v2 net-next 0/6] skbuff: micro-optimize flow dissection

2021-03-14 Thread Alexander Lobakin
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 con

[PATCH v3 net-next 2/6] skbuff: make __skb_header_pointer()'s data argument const

2021-03-14 Thread Alexander Lobakin
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

[PATCH v3 net-next 0/6] skbuff: micro-optimize flow dissection

2021-03-14 Thread Alexander Lobakin
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_

[PATCH v3 net-next 1/6] flow_dissector: constify bpf_flow_dissector's data pointers

2021-03-14 Thread Alexander Lobakin
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 ch

[PATCH v3 net-next 3/6] flow_dissector: constify raw input data argument

2021-03-14 Thread Alexander Lobakin
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 |

[PATCH v3 net-next 5/6] ethernet: constify eth_get_headlen()'s data argument

2021-03-14 Thread 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/

[PATCH v3 net-next 4/6] linux/etherdevice.h: misc trailing whitespace cleanup

2021-03-14 Thread Alexander Lobakin
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

[PATCH v3 net-next 6/6] skbuff: micro-optimize {,__}skb_header_pointer()

2021-03-14 Thread Alexander Lobakin
Dissector pass on every 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 46c

Re: [PATCH v3 net-next 4/6] linux/etherdevice.h: misc trailing whitespace cleanup

2021-03-15 Thread Alexander Lobakin
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 > > --- > >

Re: [PATCH v2] MIPS: Check __clang__ to avoid performance influence with GCC in csum_tcpudp_nofold()

2021-03-15 Thread Alexander Lobakin
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 in

Re: [PATCH net-next v2 3/3] xsk: build skb by page

2021-01-20 Thread Alexander Lobakin
From: Xuan Zhuo Date: Wed, 20 Jan 2021 16:30:56 +0800 > 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 card priv_flags supports IFF_TX_SKB_NO_LINEAR will use page to > directly c

Re: [PATCH bpf-next v3 1/3] net: add priv_flags for allow tx skb without linear

2021-01-21 Thread Alexander Lobakin
0 00 00 00 00 00 00 00 00 > mlx5_core :3b:00.1 eth1: ERR CQE on SQ: 0x1dbb > > So a priv_flag is added here to indicate whether the network card > supports this feature. > > Signed-off-by: Xuan Zhuo > Suggested-by: Alexander Lobakin Acked-by: Alexander Lobakin

[PATCH kspp-next] kbuild: prevent CC_FLAGS_LTO self-bloating on recursive rebuilds

2021-01-21 Thread Alexander Lobakin
:= to fix this. Fixes: dc5723b02e52 ("kbuild: add support for Clang LTO") Signed-off-by: Alexander Lobakin --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 668909e7a460..2233951666f7 100644 --- a/Makefile +++ b/Makefile

Re: [PATCH net-next 2/2] udp: allow forwarding of plain (non-fraglisted) UDP GRO packets

2021-01-22 Thread Alexander Lobakin
From: Willem de Bruijn Date: Thu, 21 Jan 2021 21:47:47 -0500 > On Mon, Jan 18, 2021 at 2:33 PM Alexander Lobakin wrote: > > > > Commit 9fd1ff5d2ac7 ("udp: Support UDP fraglist GRO/GSO.") actually > > not only added a support for fraglisted UDP GRO, but also tweak

Re: [PATCH bpf-next v3 3/3] xsk: build skb by page

2021-01-22 Thread Alexander Lobakin
From: Eric Dumazet Date: Thu, 21 Jan 2021 16:41:33 +0100 > On 1/21/21 2:47 PM, Xuan Zhuo wrote: > > 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 card priv_flags support

Re: [PATCH bpf-next v3 3/3] xsk: build skb by page

2021-01-22 Thread Alexander Lobakin
From: Alexander Lobakin Date: Fri, 22 Jan 2021 11:47:45 + > From: Eric Dumazet > Date: Thu, 21 Jan 2021 16:41:33 +0100 > > > On 1/21/21 2:47 PM, Xuan Zhuo wrote: > > > This patch is used to construct skb based on page to save memory copy > > > overhe

Re: [PATCH bpf-next v3 3/3] xsk: build skb by page

2021-01-22 Thread Alexander Lobakin
From: Alexander Lobakin Date: Fri, 22 Jan 2021 11:55:35 + > From: Alexander Lobakin > Date: Fri, 22 Jan 2021 11:47:45 + > > > From: Eric Dumazet > > Date: Thu, 21 Jan 2021 16:41:33 +0100 > > > > > On 1/21/21 2:47 PM, Xuan Zhuo wrote: > > >

Re: [PATCH bpf-next v3 3/3] xsk: build skb by page

2021-01-22 Thread Alexander Lobakin
From: Magnus Karlsson Date: Fri, 22 Jan 2021 13:18:47 +0100 > On Fri, Jan 22, 2021 at 12:57 PM Alexander Lobakin wrote: > > > > From: Alexander Lobakin > > Date: Fri, 22 Jan 2021 11:47:45 + > > > > > From: Eric Dumazet > > > Date: Thu, 21 Jan 2

Re: [PATCH bpf-next v3 3/3] xsk: build skb by page

2021-01-22 Thread Alexander Lobakin
From: Xuan Zhuo Date: Fri, 22 Jan 2021 23:36:29 +0800 > On Fri, 22 Jan 2021 12:08:00 +0000, Alexander Lobakin wrote: > > From: Alexander Lobakin > > Date: Fri, 22 Jan 2021 11:55:35 + > > > > > From: Alexander Lobakin > > > Date: Fri, 22 Jan 2021

<    1   2   3   4   5   6   >