From: Zheng Zengkai zhengzengkai@huawei.com
hulk inclusion category: feature bugzilla: https://gitee.com/openeuler/kernel/issues/I4K3S5
-----------------------
Add CONFIG_KABI_RESERVE to control KABI padding reserve or not, for some embedded system, KABI padding reserve may be not necessary.
By the way, adjust unsigned long to u64 to unify basic reserve length for both 32bit and 64bit architectures.
Signed-off-by: Zheng Zengkai zhengzengkai@huawei.com Reviewed-by: Xie XiuQi xiexiuqi@huawei.com Signed-off-by: Zheng Zengkai zhengzengkai@huawei.com Signed-off-by: Yu Liao liaoyu15@huawei.com --- Kconfig | 8 ++++++++ include/linux/kabi.h | 6 +++++- 2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/Kconfig b/Kconfig index bb409bb587b0..9c9b5fedd43c 100644 --- a/Kconfig +++ b/Kconfig @@ -37,3 +37,11 @@ config KABI_SIZE_ALIGN_CHECKS help This option enables more stringent kabi checks. Those must be disable in case of a debug-build because they allow to change struct sizes. + +config KABI_RESERVE + bool "Enable KABI PADDING RESERVE" + default y + help + This option enables KABI padding reserve. + For some embedded system, KABI padding reserve may be not necessary. + Disable it on demand. diff --git a/include/linux/kabi.h b/include/linux/kabi.h index 0f25a84809c3..f43756cb26bb 100644 --- a/include/linux/kabi.h +++ b/include/linux/kabi.h @@ -425,7 +425,11 @@ * leverage those common names making it easier to read and find in the * code. */ -# define _KABI_RESERVE(n) unsigned long kabi_reserved##n +#ifdef CONFIG_KABI_RESERVE + # define _KABI_RESERVE(n) u64 kabi_reserved##n +#else + # define _KABI_RESERVE(n) +#endif # define KABI_RESERVE(n) _KABI_RESERVE(n); /* * Simple wrappers to replace standard openEuler reserved elements.