Re: [PATCH net-next v4 02/15] net: build socket infrastructure for QUIC protocol
Stefan Metzmacher <[email protected]> Thu, 30 Oct 2025 12:29:19 +0100
| Newsgroups | dev.linux.lists.quic,dev.linux.lists.kernel-tls-handshake,org.kernel.vger.linux-cifs,org.kernel.vger.netdev |
|---|---|
| Message-ID | <[email protected]> |
Am 29.10.25 um 20:57 schrieb Xin Long: > On Wed, Oct 29, 2025 at 12:22 PM Stefan Metzmacher <[email protected]> wrote: >> >> Hi Xin, >> >>> This patch lays the groundwork for QUIC socket support in the kernel. >>> It defines the core structures and protocol hooks needed to create >>> QUIC sockets, without implementing any protocol behavior at this stage. >>> >>> Basic integration is included to allow building the module via >>> CONFIG_IP_QUIC=m. >>> >>> This provides the scaffolding necessary for adding actual QUIC socket >>> behavior in follow-up patches. >>> >>> Signed-off-by: Pengtao He <[email protected]> >>> Signed-off-by: Xin Long <[email protected]> >> >> ... >> >>> +module_init(quic_init); >>> +module_exit(quic_exit); >>> + >>> +MODULE_ALIAS("net-pf-" __stringify(PF_INET) "-proto-261"); >>> +MODULE_ALIAS("net-pf-" __stringify(PF_INET6) "-proto-261"); >> >> Shouldn't this use MODULE_ALIAS_NET_PF_PROTO(PF_INET, IPPROTO_QUIC) >> instead? >> > Hi, Stefan, > > If we switch to using MODULE_ALIAS_NET_PF_PROTO(), we still need to > keep using the numeric value 261: > > MODULE_ALIAS_NET_PF_PROTO(PF_INET, 261); > MODULE_ALIAS_NET_PF_PROTO(PF_INET6, 261); > > IPPROTO_QUIC is defined as an enum, not a macro. Since > MODULE_ALIAS_NET_PF_PROTO() relies on __stringify(proto), it can’t > stringify enum values correctly, and it would generate: > > alias: net-pf-10-proto-IPPROTO_QUIC > alias: net-pf-2-proto-IPPROTO_QUIC Yes, now I remember... Maybe we can use something like this: - IPPROTO_QUIC = 261, /* A UDP-Based Multiplexed and Secure Transport */ +#define __IPPROTO_QUIC 261 /* A UDP-Based Multiplexed and Secure Transport */ + IPPROTO_QUIC = __IPPROTO_QUIC, and then MODULE_ALIAS_NET_PF_PROTO(PF_INET, __IPPROTO_QUIC) In order to make things clearer. What do you think? metze