* [PATCH net-next 0/2] net: enable udp v6 sockets receiving v4 packets with UDP GRO
@ 2021-01-11 12:38 Xin Long
2021-01-11 12:38 ` [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap Xin Long
2021-01-11 12:38 ` [PATCH net-next 2/2] Revert "bareudp: Fixed bareudp receive handling" Xin Long
0 siblings, 2 replies; 7+ messages in thread
From: Xin Long @ 2021-01-11 12:38 UTC (permalink / raw)
To: network dev, linux-sctp
Cc: davem, Jakub Kicinski, pabeni, Willem de Bruijn, Martin Varghese
Currently, udp v6 socket can not process v4 packets with UDP GRO, as
udp_encap_needed_key is not increased when udp_tunnel_encap_enable()
is called for v6 socket. This patchset is to increase it and remove
the unnecessary code in bareudp.
Xin Long (2):
udp: call udp_encap_enable for v6 sockets when enabling encap
Revert "bareudp: Fixed bareudp receive handling"
drivers/net/bareudp.c | 6 ------
include/net/udp_tunnel.h | 3 +--
net/ipv6/udp.c | 4 +++-
3 files changed, 4 insertions(+), 9 deletions(-)
--
2.1.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap
2021-01-11 12:38 [PATCH net-next 0/2] net: enable udp v6 sockets receiving v4 packets with UDP GRO Xin Long
@ 2021-01-11 12:38 ` Xin Long
2021-01-11 18:01 ` kernel test robot
2021-01-11 12:38 ` [PATCH net-next 2/2] Revert "bareudp: Fixed bareudp receive handling" Xin Long
1 sibling, 1 reply; 7+ messages in thread
From: Xin Long @ 2021-01-11 12:38 UTC (permalink / raw)
To: network dev, linux-sctp
Cc: davem, Jakub Kicinski, pabeni, Willem de Bruijn, Martin Varghese
When enabling encap for a ipv6 socket without udp_encap_needed_key
increased, UDP GRO won't work for v4 mapped v6 address packets as
sk will be NULL in udp4_gro_receive().
This patch is to enable it by increasing udp_encap_needed_key for
v6 sockets in udp_tunnel_encap_enable(), and correspondingly
decrease udp_encap_needed_key in udpv6_destroy_sock().
Reported-by: Chen Yi <yiche@redhat.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
---
include/net/udp_tunnel.h | 3 +--
net/ipv6/udp.c | 4 +++-
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/include/net/udp_tunnel.h b/include/net/udp_tunnel.h
index 282d10e..afc7ce7 100644
--- a/include/net/udp_tunnel.h
+++ b/include/net/udp_tunnel.h
@@ -181,9 +181,8 @@ static inline void udp_tunnel_encap_enable(struct socket *sock)
#if IS_ENABLED(CONFIG_IPV6)
if (sock->sk->sk_family == PF_INET6)
ipv6_stub->udpv6_encap_enable();
- else
#endif
- udp_encap_enable();
+ udp_encap_enable();
}
#define UDP_TUNNEL_NIC_MAX_TABLES 4
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
index b9f3dfd..265b6a0 100644
--- a/net/ipv6/udp.c
+++ b/net/ipv6/udp.c
@@ -1608,8 +1608,10 @@ void udpv6_destroy_sock(struct sock *sk)
if (encap_destroy)
encap_destroy(sk);
}
- if (up->encap_enabled)
+ if (up->encap_enabled) {
static_branch_dec(&udpv6_encap_needed_key);
+ static_branch_dec(&udp_encap_needed_key);
+ }
}
inet6_destroy_sock(sk);
--
2.1.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next 2/2] Revert "bareudp: Fixed bareudp receive handling"
2021-01-11 12:38 [PATCH net-next 0/2] net: enable udp v6 sockets receiving v4 packets with UDP GRO Xin Long
2021-01-11 12:38 ` [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap Xin Long
@ 2021-01-11 12:38 ` Xin Long
1 sibling, 0 replies; 7+ messages in thread
From: Xin Long @ 2021-01-11 12:38 UTC (permalink / raw)
To: network dev, linux-sctp
Cc: davem, Jakub Kicinski, pabeni, Willem de Bruijn, Martin Varghese
As udp_encap_enable() is already called in udp_tunnel_encap_enable()
since the last patch, and we don't need it any more. So remove it by
reverting commit 81f954a44567567c7d74a97b1db78fb43afc253d.
---
drivers/net/bareudp.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/net/bareudp.c b/drivers/net/bareudp.c
index 85de5f9..aed5049 100644
--- a/drivers/net/bareudp.c
+++ b/drivers/net/bareudp.c
@@ -240,12 +240,6 @@ static int bareudp_socket_create(struct bareudp_dev *bareudp, __be16 port)
tunnel_cfg.encap_destroy = NULL;
setup_udp_tunnel_sock(bareudp->net, sock, &tunnel_cfg);
- /* As the setup_udp_tunnel_sock does not call udp_encap_enable if the
- * socket type is v6 an explicit call to udp_encap_enable is needed.
- */
- if (sock->sk->sk_family == AF_INET6)
- udp_encap_enable();
-
rcu_assign_pointer(bareudp->sock, sock);
return 0;
}
--
2.1.0
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap
2021-01-11 12:38 ` [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap Xin Long
@ 2021-01-11 18:01 ` kernel test robot
0 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2021-01-11 18:01 UTC (permalink / raw)
To: Xin Long, network dev, linux-sctp
Cc: kbuild-all, davem, Jakub Kicinski, pabeni, Willem de Bruijn,
Martin Varghese
[-- Attachment #1: Type: text/plain, Size: 1457 bytes --]
Hi Xin,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url: https://github.com/0day-ci/linux/commits/Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 73b7a6047971aa6ce4a70fc4901964d14f077171
config: m68k-defconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/62229592b4c3e929eeafea82e758dacb2953fbde
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
git checkout 62229592b4c3e929eeafea82e758dacb2953fbde
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> ERROR: modpost: "udp_encap_needed_key" [net/ipv6/ipv6.ko] undefined!
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 17029 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap
@ 2021-01-11 18:01 ` kernel test robot
0 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2021-01-11 18:01 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 1489 bytes --]
Hi Xin,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url: https://github.com/0day-ci/linux/commits/Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 73b7a6047971aa6ce4a70fc4901964d14f077171
config: m68k-defconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/62229592b4c3e929eeafea82e758dacb2953fbde
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
git checkout 62229592b4c3e929eeafea82e758dacb2953fbde
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> ERROR: modpost: "udp_encap_needed_key" [net/ipv6/ipv6.ko] undefined!
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 17029 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap
2021-01-11 18:01 ` kernel test robot
@ 2021-01-12 7:53 ` Xin Long
-1 siblings, 0 replies; 7+ messages in thread
From: Xin Long @ 2021-01-12 7:53 UTC (permalink / raw)
To: kernel test robot
Cc: network dev, linux-sctp @ vger . kernel . org, kbuild-all, davem,
Jakub Kicinski, Paolo Abeni, Willem de Bruijn, Martin Varghese
On Tue, Jan 12, 2021 at 2:02 AM kernel test robot <lkp@intel.com> wrote:
>
> Hi Xin,
>
> Thank you for the patch! Yet something to improve:
>
> [auto build test ERROR on net-next/master]
>
> url: https://github.com/0day-ci/linux/commits/Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
> base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 73b7a6047971aa6ce4a70fc4901964d14f077171
> config: m68k-defconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 9.3.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://github.com/0day-ci/linux/commit/62229592b4c3e929eeafea82e758dacb2953fbde
> git remote add linux-review https://github.com/0day-ci/linux
> git fetch --no-tags linux-review Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
> git checkout 62229592b4c3e929eeafea82e758dacb2953fbde
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All errors (new ones prefixed by >>, old ones prefixed by <<):
>
> >> ERROR: modpost: "udp_encap_needed_key" [net/ipv6/ipv6.ko] undefined!
I will add udp_encap_disable() and export, thanks.
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap
@ 2021-01-12 7:53 ` Xin Long
0 siblings, 0 replies; 7+ messages in thread
From: Xin Long @ 2021-01-12 7:53 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 1668 bytes --]
On Tue, Jan 12, 2021 at 2:02 AM kernel test robot <lkp@intel.com> wrote:
>
> Hi Xin,
>
> Thank you for the patch! Yet something to improve:
>
> [auto build test ERROR on net-next/master]
>
> url: https://github.com/0day-ci/linux/commits/Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
> base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 73b7a6047971aa6ce4a70fc4901964d14f077171
> config: m68k-defconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 9.3.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://github.com/0day-ci/linux/commit/62229592b4c3e929eeafea82e758dacb2953fbde
> git remote add linux-review https://github.com/0day-ci/linux
> git fetch --no-tags linux-review Xin-Long/net-enable-udp-v6-sockets-receiving-v4-packets-with-UDP-GRO/20210111-205115
> git checkout 62229592b4c3e929eeafea82e758dacb2953fbde
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All errors (new ones prefixed by >>, old ones prefixed by <<):
>
> >> ERROR: modpost: "udp_encap_needed_key" [net/ipv6/ipv6.ko] undefined!
I will add udp_encap_disable() and export, thanks.
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-01-12 7:54 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-11 12:38 [PATCH net-next 0/2] net: enable udp v6 sockets receiving v4 packets with UDP GRO Xin Long
2021-01-11 12:38 ` [PATCH net-next 1/2] udp: call udp_encap_enable for v6 sockets when enabling encap Xin Long
2021-01-11 18:01 ` kernel test robot
2021-01-11 18:01 ` kernel test robot
2021-01-12 7:53 ` Xin Long
2021-01-12 7:53 ` Xin Long
2021-01-11 12:38 ` [PATCH net-next 2/2] Revert "bareudp: Fixed bareudp receive handling" Xin Long
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.