diff mbox series

[net,v2] mpls: load mpls_gso after mpls_iptunnel

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

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");