[0/3] check-uapi: improve portability for testing headers

Message ID 20260306163309.2015837-1-arnd@kernel.org
Headers
Series check-uapi: improve portability for testing headers |

Message

Arnd Bergmann March 6, 2026, 4:33 p.m. UTC
  From: Arnd Bergmann <arnd@arndb.de>

While working on a series to clean up some uapi headers, I needed
to check the that the actual ABI remains unchanged. I found that
scripts/check-uapi.sh works well enough for architectures that have a
full toolchain installed, but not with the nolibc compilers I provide
on kernel.org.

I ended up with a series addressing three separate issues here, but in
the end I can now validate ABI changes across all supported architectures
and ABIs.

The third patch depends on a series from Thomas Weißschuh that was
just merged into the kbuild-for-next tree, the other ones could
also apply to older kernels. I have marked the second patch for
backports to stable kernels, this one is what caused me the most
work in debugging.

    Arnd

Arnd Bergmann (3):
  check-uapi: link into shared objects
  check-uapi: honor ${CROSS_COMPILE} setting
  check-uapi: use dummy libc includes

 scripts/check-uapi.sh | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)
  

Comments

Nathan Chancellor March 10, 2026, 1:12 a.m. UTC | #1
On Fri, Mar 06, 2026 at 05:33:06PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> While working on a series to clean up some uapi headers, I needed
> to check the that the actual ABI remains unchanged. I found that
> scripts/check-uapi.sh works well enough for architectures that have a
> full toolchain installed, but not with the nolibc compilers I provide
> on kernel.org.
> 
> I ended up with a series addressing three separate issues here, but in
> the end I can now validate ABI changes across all supported architectures
> and ABIs.
> 
> The third patch depends on a series from Thomas Weißschuh that was
> just merged into the kbuild-for-next tree, the other ones could
> also apply to older kernels. I have marked the second patch for
> backports to stable kernels, this one is what caused me the most
> work in debugging.
> 
>     Arnd
> 
> Arnd Bergmann (3):
>   check-uapi: link into shared objects
>   check-uapi: honor ${CROSS_COMPILE} setting
>   check-uapi: use dummy libc includes

Acked-by: Nathan Chancellor <nathan@kernel.org>

I assume that the shared objects change does not impact catching ABI
differences?

Cheers,
Nathan
  
Nicolas Schier March 20, 2026, 8:51 p.m. UTC | #2
On Fri, 06 Mar 2026 17:33:06 +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> While working on a series to clean up some uapi headers, I needed
> to check the that the actual ABI remains unchanged. I found that
> scripts/check-uapi.sh works well enough for architectures that have a
> full toolchain installed, but not with the nolibc compilers I provide
> on kernel.org.
> 
> [...]

Applied to kbuild/linux.git (kbuild-next-unstable), thanks!

[1/3] check-uapi: link into shared objects
      https://git.kernel.org/kbuild/c/a261f6df
[2/3] check-uapi: honor ${CROSS_COMPILE} setting
      https://git.kernel.org/kbuild/c/9940ec38
[3/3] check-uapi: use dummy libc includes
      https://git.kernel.org/kbuild/c/bb25b563

Please look out for regression or issue reports or other follow up
comments, as they may result in the patch/series getting dropped,
reverted or modified (e.g. trailers). Patches applied to the
kbuild-next-unstable branch are accepted pending wider testing in
linux-next and any post-commit review; they will generally be moved
to the kbuild-next branch in about a week if no issues are found.

Best regards,