Subject: Re: [PATCH net-next] tcp: Fix build break when CONFIG_IPV6=n

From: Saeed Mahameed <[email-masked]>
Date: Tue, 22 Nov 2022 10:30:05 -0800

On 22 Nov 08:42, Eric Dumazet wrote:
>On Tue, Nov 22, 2022 at 1:37 AM Geert Uytterhoeven <[email-masked]> wrote:
>>
>> Hi Saeed,
>>
>> On Tue, Nov 22, 2022 at 10:31 AM Saeed Mahameed <[email-masked]> wrote:
>> > From: Saeed Mahameed <[email-masked]>
>> >
>> > The cited commit caused the following build break when CONFIG_IPV6 was
>> > disabled
>> >
>> > net/ipv4/tcp_input.c: In function ‘tcp_syn_flood_action’:
>> > include/net/sock.h:387:37: error: ‘const struct sock_common’ has no member named ‘skc_v6_rcv_saddr’; did you mean ‘skc_rcv_saddr’?
>> >
>> > Fix by using inet6_rcv_saddr() macro which handles this situation
>> > nicely.
>> >
>> > Fixes: d9282e48c608 ("tcp: Add listening address to SYN flood message")
>> > Signed-off-by: Saeed Mahameed <[email-masked]>
>>
>> Thanks for your patch!
>>
>> > --- a/net/ipv4/tcp_input.c
>> > +++ b/net/ipv4/tcp_input.c
>> > @@ -6843,9 +6843,9 @@ static bool tcp_syn_flood_action(const struct sock *sk, const char *proto)
>> >
>> >         if (!READ_ONCE(queue->synflood_warned) && syncookies != 2 &&
>> >             xchg(&queue->synflood_warned, 1) == 0) {
>> > -               if (IS_ENABLED(CONFIG_IPV6) && sk->sk_family == AF_INET6) {
>> > +               if (sk->sk_family == AF_INET6) {
>>
>> I think the IS_ENABLED() should stay, to make sure the IPV6-only
>> code is optimized away when IPv6-support is disabled.
>
>Agreed.

sending V2.

but for the record, I don't think such a user exist. Simply if you care
about such micro optimization, then you are serious enough not to disable
IPv6.