Message ID | 20230330095442.363201-1-andrea.righi@canonical.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 154e07c164859fc90bf4e8143f2f6c1af9f3a35e |
Headers | show |
Series | l2tp: generate correct module alias strings | expand |
> -----Original Message----- > From: Andrea Righi <andrea.righi@canonical.com> > Sent: czwartek, 30 marca 2023 11:55 > To: David Miller <davem@davemloft.net>; Eric Dumazet <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni > <pabeni@redhat.com> > Cc: Shuah Khan <shuah@kernel.org>; Drewek, Wojciech <wojciech.drewek@intel.com>; netdev@vger.kernel.org; linux- > kselftest@vger.kernel.org; linux-kernel@vger.kernel.org > Subject: [PATCH] l2tp: generate correct module alias strings > > Commit 65b32f801bfb ("uapi: move IPPROTO_L2TP to in.h") moved the > definition of IPPROTO_L2TP from a define to an enum, but since > __stringify doesn't work properly with enums, we ended up breaking the > modalias strings for the l2tp modules: > > $ modinfo l2tp_ip l2tp_ip6 | grep alias > alias: net-pf-2-proto-IPPROTO_L2TP > alias: net-pf-2-proto-2-type-IPPROTO_L2TP > alias: net-pf-10-proto-IPPROTO_L2TP > alias: net-pf-10-proto-2-type-IPPROTO_L2TP > > Use the resolved number directly in MODULE_ALIAS_*() macros (as we > already do with SOCK_DGRAM) to fix the alias strings: > > $ modinfo l2tp_ip l2tp_ip6 | grep alias > alias: net-pf-2-proto-115 > alias: net-pf-2-proto-115-type-2 > alias: net-pf-10-proto-115 > alias: net-pf-10-proto-115-type-2 > > Moreover, fix the ordering of the parameters passed to > MODULE_ALIAS_NET_PF_PROTO_TYPE() by switching proto and type. > > Fixes: 65b32f801bfb ("uapi: move IPPROTO_L2TP to in.h") > Link: https://lore.kernel.org/lkml/ZCQt7hmodtUaBlCP@righiandr-XPS-13-7390 > Signed-off-by: Guillaume Nault <gnault@redhat.com> > Signed-off-by: Andrea Righi <andrea.righi@canonical.com> Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com> Tested-by: Wojciech Drewek <wojciech.drewek@intel.com> > --- > net/l2tp/l2tp_ip.c | 8 ++++---- > net/l2tp/l2tp_ip6.c | 8 ++++---- > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c > index 4db5a554bdbd..41a74fc84ca1 100644 > --- a/net/l2tp/l2tp_ip.c > +++ b/net/l2tp/l2tp_ip.c > @@ -677,8 +677,8 @@ MODULE_AUTHOR("James Chapman <jchapman@katalix.com>"); > MODULE_DESCRIPTION("L2TP over IP"); > MODULE_VERSION("1.0"); > > -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like > - * enums > +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, > + * because __stringify doesn't like enums > */ > -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 2, IPPROTO_L2TP); > -MODULE_ALIAS_NET_PF_PROTO(PF_INET, IPPROTO_L2TP); > +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 115, 2); > +MODULE_ALIAS_NET_PF_PROTO(PF_INET, 115); > diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c > index 2478aa60145f..5137ea1861ce 100644 > --- a/net/l2tp/l2tp_ip6.c > +++ b/net/l2tp/l2tp_ip6.c > @@ -806,8 +806,8 @@ MODULE_AUTHOR("Chris Elston <celston@katalix.com>"); > MODULE_DESCRIPTION("L2TP IP encapsulation for IPv6"); > MODULE_VERSION("1.0"); > > -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like > - * enums > +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, > + * because __stringify doesn't like enums > */ > -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 2, IPPROTO_L2TP); > -MODULE_ALIAS_NET_PF_PROTO(PF_INET6, IPPROTO_L2TP); > +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 115, 2); > +MODULE_ALIAS_NET_PF_PROTO(PF_INET6, 115); > -- > 2.39.2
On Thu, Mar 30, 2023 at 11:54:42AM +0200, Andrea Righi wrote: > Commit 65b32f801bfb ("uapi: move IPPROTO_L2TP to in.h") moved the > definition of IPPROTO_L2TP from a define to an enum, but since > __stringify doesn't work properly with enums, we ended up breaking the > modalias strings for the l2tp modules: > > $ modinfo l2tp_ip l2tp_ip6 | grep alias > alias: net-pf-2-proto-IPPROTO_L2TP > alias: net-pf-2-proto-2-type-IPPROTO_L2TP > alias: net-pf-10-proto-IPPROTO_L2TP > alias: net-pf-10-proto-2-type-IPPROTO_L2TP > > Use the resolved number directly in MODULE_ALIAS_*() macros (as we > already do with SOCK_DGRAM) to fix the alias strings: > > $ modinfo l2tp_ip l2tp_ip6 | grep alias > alias: net-pf-2-proto-115 > alias: net-pf-2-proto-115-type-2 > alias: net-pf-10-proto-115 > alias: net-pf-10-proto-115-type-2 > > Moreover, fix the ordering of the parameters passed to > MODULE_ALIAS_NET_PF_PROTO_TYPE() by switching proto and type. Thanks! Just to be explicit to the maintainers, this patch is for the net tree (next time, you can use [PATCH net] to make that clear). > Fixes: 65b32f801bfb ("uapi: move IPPROTO_L2TP to in.h") > Link: https://lore.kernel.org/lkml/ZCQt7hmodtUaBlCP@righiandr-XPS-13-7390 > Signed-off-by: Guillaume Nault <gnault@redhat.com> > Signed-off-by: Andrea Righi <andrea.righi@canonical.com> > --- > net/l2tp/l2tp_ip.c | 8 ++++---- > net/l2tp/l2tp_ip6.c | 8 ++++---- > 2 files changed, 8 insertions(+), 8 deletions(-) > > diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c > index 4db5a554bdbd..41a74fc84ca1 100644 > --- a/net/l2tp/l2tp_ip.c > +++ b/net/l2tp/l2tp_ip.c > @@ -677,8 +677,8 @@ MODULE_AUTHOR("James Chapman <jchapman@katalix.com>"); > MODULE_DESCRIPTION("L2TP over IP"); > MODULE_VERSION("1.0"); > > -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like > - * enums > +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, > + * because __stringify doesn't like enums > */ > -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 2, IPPROTO_L2TP); > -MODULE_ALIAS_NET_PF_PROTO(PF_INET, IPPROTO_L2TP); > +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 115, 2); > +MODULE_ALIAS_NET_PF_PROTO(PF_INET, 115); > diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c > index 2478aa60145f..5137ea1861ce 100644 > --- a/net/l2tp/l2tp_ip6.c > +++ b/net/l2tp/l2tp_ip6.c > @@ -806,8 +806,8 @@ MODULE_AUTHOR("Chris Elston <celston@katalix.com>"); > MODULE_DESCRIPTION("L2TP IP encapsulation for IPv6"); > MODULE_VERSION("1.0"); > > -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like > - * enums > +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, > + * because __stringify doesn't like enums > */ > -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 2, IPPROTO_L2TP); > -MODULE_ALIAS_NET_PF_PROTO(PF_INET6, IPPROTO_L2TP); > +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 115, 2); > +MODULE_ALIAS_NET_PF_PROTO(PF_INET6, 115); > -- > 2.39.2 >
Hello: This patch was applied to netdev/net.git (main) by David S. Miller <davem@davemloft.net>: On Thu, 30 Mar 2023 11:54:42 +0200 you wrote: > Commit 65b32f801bfb ("uapi: move IPPROTO_L2TP to in.h") moved the > definition of IPPROTO_L2TP from a define to an enum, but since > __stringify doesn't work properly with enums, we ended up breaking the > modalias strings for the l2tp modules: > > $ modinfo l2tp_ip l2tp_ip6 | grep alias > alias: net-pf-2-proto-IPPROTO_L2TP > alias: net-pf-2-proto-2-type-IPPROTO_L2TP > alias: net-pf-10-proto-IPPROTO_L2TP > alias: net-pf-10-proto-2-type-IPPROTO_L2TP > > [...] Here is the summary with links: - l2tp: generate correct module alias strings https://git.kernel.org/netdev/net/c/154e07c16485 You are awesome, thank you!
diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c index 4db5a554bdbd..41a74fc84ca1 100644 --- a/net/l2tp/l2tp_ip.c +++ b/net/l2tp/l2tp_ip.c @@ -677,8 +677,8 @@ MODULE_AUTHOR("James Chapman <jchapman@katalix.com>"); MODULE_DESCRIPTION("L2TP over IP"); MODULE_VERSION("1.0"); -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like - * enums +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, + * because __stringify doesn't like enums */ -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 2, IPPROTO_L2TP); -MODULE_ALIAS_NET_PF_PROTO(PF_INET, IPPROTO_L2TP); +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 115, 2); +MODULE_ALIAS_NET_PF_PROTO(PF_INET, 115); diff --git a/net/l2tp/l2tp_ip6.c b/net/l2tp/l2tp_ip6.c index 2478aa60145f..5137ea1861ce 100644 --- a/net/l2tp/l2tp_ip6.c +++ b/net/l2tp/l2tp_ip6.c @@ -806,8 +806,8 @@ MODULE_AUTHOR("Chris Elston <celston@katalix.com>"); MODULE_DESCRIPTION("L2TP IP encapsulation for IPv6"); MODULE_VERSION("1.0"); -/* Use the value of SOCK_DGRAM (2) directory, because __stringify doesn't like - * enums +/* Use the values of SOCK_DGRAM (2) as type and IPPROTO_L2TP (115) as protocol, + * because __stringify doesn't like enums */ -MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 2, IPPROTO_L2TP); -MODULE_ALIAS_NET_PF_PROTO(PF_INET6, IPPROTO_L2TP); +MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 115, 2); +MODULE_ALIAS_NET_PF_PROTO(PF_INET6, 115);