Re: [PATCH mptcp-net] mptcp: fix BUILD_BUG_ON on legacy ARM config

Matthieu Baerts <[email protected]> Fri, 24 Jul 2026 10:25:24 +0200
Newsgroups dev.linux.lists.mptcp
Organization NGI0 Core
Message-ID <[email protected]>
Hi Arnd,

Thank you for your review!

On 24/07/2026 09:57, Arnd Bergmann wrote:
> On Tue, Jul 7, 2026, at 18:48, Matthieu Baerts (NGI0) wrote:
>> The 0-day bot managed to find kernel configs that cause build failures,
>> e.g. when using the StrongARM SA1100 target (ARMv4).
>>
>> On such legacy ARM architecture, all structures are apparently aligned
>> to 32 bits, causing build issue here. Indeed, on such architecture,
>> 'flags' size is not equivalent to sizeof(u16) as expected, but to
>> sizeof(u32).
> 
> I just saw the patch get merged upstream and wanted to clarify that
> this is ARM OABI (CONFIG_AEABI=n), which is technically unrelated
> to the CPU type. It has a lot of problems and should hopefully
> go away soon.

Fingers crossed!

> While I'm testing randconfig builds on Arm all the time, I specifically
> don't test OABI kernels.
> 
> I had to check that this isn't actually ABI or wire protocol though,
> otherwise dropping the BUILD_BUG_ON() would be hiding bigger problems.

Thank you for having checked!

>> Instead, use memset(). It was not used before to ensure a simple clear
>> operation was used by the compiler. But at the end, it shouldn't matter,
>> and the compiler should optimise this to the same operation with or
>> without memset() when -O above 0 is used. So let's switch to memset() to
>> fix this issue, and reduce this complexity.
> 
> The optimization will not be used on architectures that build
> with -ffreestanding (apparently m68k, mips, sh, i386). We probably
> don't care about performance on those or we would have changed
> that already.
Good point, I didn't know about that. Indeed, I don't think we need to
care about them in this case here.
Cheers,
Matt
-- 
Sponsored by the NGI0 Core fund.