Subject: Re: linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 5 Mar 2024 11:19:15 +1100

Hi Eric,

On Fri, 1 Mar 2024 10:54:19 +0100 Eric Dumazet <[email-masked]> wrote:
>
> OK, I think the issue is caused by a hole at the start of
> tcp_sock_write_rx group
> 
> I will send this patch for review, thanks !
> 
> diff --git a/include/linux/tcp.h b/include/linux/tcp.h
> index 988a30ef6bfe956fa573f1f18c8284aa382dc1cc..55399ee2a57e736b55ed067fc06ea620bbe62fd3
> 100644
> --- a/include/linux/tcp.h
> +++ b/include/linux/tcp.h
> @@ -304,7 +304,7 @@ struct tcp_sock {
>         __cacheline_group_end(tcp_sock_write_txrx);
> 
>         /* RX read-write hotpath cache lines */
> -       __cacheline_group_begin(tcp_sock_write_rx);
> +       __cacheline_group_begin(tcp_sock_write_rx) __aligned(8);
>         u64     bytes_received;
>                                 /* RFC4898 tcpEStatsAppHCThruOctetsReceived
>                                  * sum(delta(rcv_nxt)), or how many bytes
> diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
> index c82dc42f57c65df112f79080ff407cd98d11ce68..7e1b848398d04f2da2a91c3af97b1e2e3895b8ee
> 100644
> --- a/net/ipv4/tcp.c
> +++ b/net/ipv4/tcp.c
> @@ -4651,7 +4651,7 @@ static void __init tcp_struct_check(void)
>         CACHELINE_ASSERT_GROUP_MEMBER(struct tcp_sock,
> tcp_sock_write_tx, tsorted_sent_queue);
>         CACHELINE_ASSERT_GROUP_MEMBER(struct tcp_sock,
> tcp_sock_write_tx, highest_sack);
>         CACHELINE_ASSERT_GROUP_MEMBER(struct tcp_sock,
> tcp_sock_write_tx, ecn_flags);
> -       CACHELINE_ASSERT_GROUP_SIZE(struct tcp_sock, tcp_sock_write_tx, 113);
> +       CACHELINE_ASSERT_GROUP_SIZE(struct tcp_sock, tcp_sock_write_tx, 105);
> 
>         /* TXRX read-write hotpath cache lines */
>         CACHELINE_ASSERT_GROUP_MEMBER(struct tcp_sock,
> tcp_sock_write_txrx, pred_flags);

I will apply this patch to them merge of the net-next tree until it is
applied there.

-- 
Cheers,
Stephen Rothwell