diff mbox series

[net,v2] mpls: load mpls_gso after mpls_iptunnel

Message ID 20201020114333.26866-1-ovov@yandex-team.ru
State Accepted
Delegated to: David Miller
Headers show
Series [net,v2] mpls: load mpls_gso after mpls_iptunnel | expand

Checks

Context Check Description
jkicinski/cover_letter success Link
jkicinski/fixes_present fail Series targets non-next tree, but doesn't contain any Fixes tags
jkicinski/patch_count success Link
jkicinski/tree_selection success Clearly marked for net
jkicinski/subject_prefix success Link
jkicinski/source_inline success Was 0 now: 0
jkicinski/verify_signedoff success Link
jkicinski/module_param success Was 0 now: 0
jkicinski/build_32bit success Errors and warnings before: 0 this patch: 0
jkicinski/kdoc success Errors and warnings before: 0 this patch: 0
jkicinski/verify_fixes success Link
jkicinski/checkpatch success total: 0 errors, 0 warnings, 0 checks, 6 lines checked
jkicinski/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
jkicinski/header_inline success Link
jkicinski/stable success Stable not CCed

Commit Message

Alexander Ovechkin Oct. 20, 2020, 11:43 a.m. UTC
mpls_iptunnel is used only for mpls encapsuation, and if encaplusated
packet is larger than MTU we need mpls_gso for segmentation.

Signed-off-by: Alexander Ovechkin <ovov@yandex-team.ru>
Acked-by: Dmitry Yakunin <zeil@yandex-team.ru>
---
 net/mpls/mpls_iptunnel.c | 1 +
 1 file changed, 1 insertion(+)

Comments

David Ahern Oct. 21, 2020, 2:28 a.m. UTC | #1
On 10/20/20 5:43 AM, Alexander Ovechkin wrote:
> mpls_iptunnel is used only for mpls encapsuation, and if encaplusated
> packet is larger than MTU we need mpls_gso for segmentation.
> 
> Signed-off-by: Alexander Ovechkin <ovov@yandex-team.ru>
> Acked-by: Dmitry Yakunin <zeil@yandex-team.ru>
> ---
>  net/mpls/mpls_iptunnel.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/net/mpls/mpls_iptunnel.c b/net/mpls/mpls_iptunnel.c
> index 2def85718d94..ef59e25dc482 100644
> --- a/net/mpls/mpls_iptunnel.c
> +++ b/net/mpls/mpls_iptunnel.c
> @@ -300,5 +300,6 @@ static void __exit mpls_iptunnel_exit(void)
>  module_exit(mpls_iptunnel_exit);
>  
>  MODULE_ALIAS_RTNL_LWT(MPLS);
> +MODULE_SOFTDEP("post: mpls_gso");
>  MODULE_DESCRIPTION("MultiProtocol Label Switching IP Tunnels");
>  MODULE_LICENSE("GPL v2");
> 

Reviewed-by: David Ahern <dsahern@gmail.com>
Jakub Kicinski Oct. 21, 2020, 4:18 a.m. UTC | #2
On Tue, 20 Oct 2020 20:28:25 -0600 David Ahern wrote:
> On 10/20/20 5:43 AM, Alexander Ovechkin wrote:
> > mpls_iptunnel is used only for mpls encapsuation, and if encaplusated
> > packet is larger than MTU we need mpls_gso for segmentation.
> > 
> > Signed-off-by: Alexander Ovechkin <ovov@yandex-team.ru>
> > Acked-by: Dmitry Yakunin <zeil@yandex-team.ru>
> 
> Reviewed-by: David Ahern <dsahern@gmail.com>

Applied, thank you!
Guillaume Nault Oct. 21, 2020, 9:30 a.m. UTC | #3
On Tue, Oct 20, 2020 at 02:43:33PM +0300, Alexander Ovechkin wrote:
> mpls_iptunnel is used only for mpls encapsuation, and if encaplusated
> packet is larger than MTU we need mpls_gso for segmentation.
> 
> Signed-off-by: Alexander Ovechkin <ovov@yandex-team.ru>
> Acked-by: Dmitry Yakunin <zeil@yandex-team.ru>
> ---
>  net/mpls/mpls_iptunnel.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/net/mpls/mpls_iptunnel.c b/net/mpls/mpls_iptunnel.c
> index 2def85718d94..ef59e25dc482 100644
> --- a/net/mpls/mpls_iptunnel.c
> +++ b/net/mpls/mpls_iptunnel.c
> @@ -300,5 +300,6 @@ static void __exit mpls_iptunnel_exit(void)
>  module_exit(mpls_iptunnel_exit);
>  
>  MODULE_ALIAS_RTNL_LWT(MPLS);
> +MODULE_SOFTDEP("post: mpls_gso");
>  MODULE_DESCRIPTION("MultiProtocol Label Switching IP Tunnels");
>  MODULE_LICENSE("GPL v2");

Then CONFIG_MPLS_IPTUNNEL should probably select CONFIG_NET_MPLS_GSO.
Currently, one can build mpls_iptunnel.ko without mpls_gso.ko.

Also, MPLS encapsulation can also be done with act_mpls.ko. So this
module should probably have this softdep too (and the Kconfig
dependency).
diff mbox series

Patch

diff --git a/net/mpls/mpls_iptunnel.c b/net/mpls/mpls_iptunnel.c
index 2def85718d94..ef59e25dc482 100644
--- a/net/mpls/mpls_iptunnel.c
+++ b/net/mpls/mpls_iptunnel.c
@@ -300,5 +300,6 @@  static void __exit mpls_iptunnel_exit(void)
 module_exit(mpls_iptunnel_exit);
 
 MODULE_ALIAS_RTNL_LWT(MPLS);
+MODULE_SOFTDEP("post: mpls_gso");
 MODULE_DESCRIPTION("MultiProtocol Label Switching IP Tunnels");
 MODULE_LICENSE("GPL v2");