The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ff5bcb742899f8398ccb1b9e292b2e5aeeb7fedb
commit ff5bcb742899f8398ccb1b9e292b2e5aeeb7fedb Author: Bjoern A. Zeeb <b...@freebsd.org> AuthorDate: 2025-08-18 19:53:55 +0000 Commit: Bjoern A. Zeeb <b...@freebsd.org> CommitDate: 2025-09-05 23:24:16 +0000 LinuxKPI: add __struct_size Use __builtin_object_size() by default. If __builtin_dynamic_object_size() is available use that instead. I would hope that in a future version we can remove the conditional checks but in order to be able to MFC this without checking all compiler versions simply keep it this way for now. Sponsored by: The FreeBSD Foundation (initially) MFC after: 3 days Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D52077 --- sys/compat/linuxkpi/common/include/linux/compiler.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/compiler.h b/sys/compat/linuxkpi/common/include/linux/compiler.h index fb5ad3bf4fe4..948396144ad6 100644 --- a/sys/compat/linuxkpi/common/include/linux/compiler.h +++ b/sys/compat/linuxkpi/common/include/linux/compiler.h @@ -130,4 +130,10 @@ #define is_signed_type(t) ((t)-1 < (t)1) #define is_unsigned_type(t) ((t)-1 > (t)1) +#if __has_builtin(__builtin_dynamic_object_size) +#define __struct_size(_s) __builtin_dynamic_object_size(_s, 0) +#else +#define __struct_size(_s) __builtin_object_size(_s, 0) +#endif + #endif /* _LINUXKPI_LINUX_COMPILER_H_ */