Re: Question on BIGGEST_ALIGNMENT in GCC on NetBSD/m68k
John Paul Adrian Glaubitz <[email protected]> Thu, 05 Jun 2025 08:39:24 +0200
| Newsgroups | gmane.os.netbsd.ports.m68k,gmane.linux.debian.ports.68k,gmane.linux.ports.m68k |
|---|---|
| Message-ID | <9013836044f8bfb7f0cd62ba536f6a1c75034465.camel@physik.fu-berlin.de> |
Hi Jean-Michel, On Thu, 2025-06-05 at 08:24 +0200, Jean-Michel Hautbois wrote: > I tried to patch gcc-13 with this BIGGEST_ALIGNMENT set to 64. I am > using buildroot+uclibc-ng on a Coldfire (mcf54418). Thanks a lot for testing! Such contributions are highly appreciated. > Everything build fine, except the kernel: > > In function ‘siginfo_build_tests’, > inlined from ‘restore_sigcontext’ at arch/m68k/kernel/signal.c:684:2, > inlined from ‘do_sigreturn’ at arch/m68k/kernel/signal.c:775:9: > ././include/linux/compiler_types.h:542:45: error: call to > ‘__compiletime_assert_351’ declared with attribute error: BUILD_BUG_ON > failed: offsetof(siginfo_t, si_lower) != 0x12 > 542 | _compiletime_assert(condition, msg, > __compiletime_assert_, __COUNTER__) > | ^ > ././include/linux/compiler_types.h:523:25: note: in definition of macro > ‘__compiletime_assert’ > 523 | prefix ## suffix(); > \ > | ^~~~~~ > ././include/linux/compiler_types.h:542:9: note: in expansion of macro > ‘_compiletime_assert’ > 542 | _compiletime_assert(condition, msg, > __compiletime_assert_, __COUNTER__) > | ^~~~~~~~~~~~~~~~~~~ > ./include/linux/build_bug.h:39:37: note: in expansion of macro > ‘compiletime_assert’ > 39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), > msg) > | ^~~~~~~~~~~~~~~~~~ > ./include/linux/build_bug.h:50:9: note: in expansion of macro > ‘BUILD_BUG_ON_MSG’ > 50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " > #condition) > | ^~~~~~~~~~~~~~~~ > arch/m68k/kernel/signal.c:621:9: note: in expansion of macro ‘BUILD_BUG_ON’ > 621 | BUILD_BUG_ON(offsetof(siginfo_t, si_lower) != 0x12); > | ^~~~~~~~~~~~ > make[5]: *** [scripts/Makefile.build:207: arch/m68k/kernel/signal.o] Error 1 > make[4]: *** [scripts/Makefile.build:465: arch/m68k/kernel] Error 2 > make[4]: *** Waiting for unfinished jobs.... > > This is a 6.14. > Any idea about this ? It looks like this check needs to be patched: BUILD_BUG_ON(offsetof(siginfo_t, si_lower) != 0x12); The source code in arch/m68k/kernel/signal.c contains a lot of hard-wired offsets which will probably have to be adjusted. You can try changing 0x12 to 0x14 and see if that fixes it. Adrian -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913