mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Linux: work around use of GPL-only symbol kasan_flag_enabled
We may not be able to avoid our code referencing the symbol, but we can ensure that a symbol of that name is available to the linker during build, and so not require linking the GPL-exported version. Sponsored-by: https://despairlabs.com/sponsor/ Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Rob Norris <robn@despairlabs.com> Closes #18009 Closes #18040
This commit is contained in:
committed by
Brian Behlendorf
parent
028d66b9dd
commit
c9845a1332
@@ -0,0 +1,23 @@
|
||||
dnl #
|
||||
dnl # 6.18: some architectures and config option causes the kasan_ inline
|
||||
dnl # functions to reference the GPL-only symbol 'kasan_flag_enabled',
|
||||
dnl # breaking the build. Detect this and work
|
||||
dnl # around it.
|
||||
AC_DEFUN([ZFS_AC_KERNEL_SRC_KASAN_ENABLED], [
|
||||
ZFS_LINUX_TEST_SRC([kasan_enabled], [
|
||||
#include <linux/kasan.h>
|
||||
], [
|
||||
kasan_enabled();
|
||||
], [], [ZFS_META_LICENSE])
|
||||
])
|
||||
AC_DEFUN([ZFS_AC_KERNEL_KASAN_ENABLED], [
|
||||
AC_MSG_CHECKING([whether kasan_enabled() is GPL-only])
|
||||
ZFS_LINUX_TEST_RESULT([kasan_enabled_license], [
|
||||
AC_MSG_RESULT(no)
|
||||
], [
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(HAVE_KASAN_ENABLED_GPL_ONLY, 1,
|
||||
[kasan_enabled() is GPL-only])
|
||||
])
|
||||
])
|
||||
|
||||
@@ -138,6 +138,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_SRC], [
|
||||
ZFS_AC_KERNEL_SRC_SOPS_FREE_INODE
|
||||
ZFS_AC_KERNEL_SRC_NAMESPACE
|
||||
ZFS_AC_KERNEL_SRC_INODE_GENERIC_DROP
|
||||
ZFS_AC_KERNEL_SRC_KASAN_ENABLED
|
||||
case "$host_cpu" in
|
||||
powerpc*)
|
||||
ZFS_AC_KERNEL_SRC_CPU_HAS_FEATURE
|
||||
@@ -260,6 +261,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_RESULT], [
|
||||
ZFS_AC_KERNEL_SOPS_FREE_INODE
|
||||
ZFS_AC_KERNEL_NAMESPACE
|
||||
ZFS_AC_KERNEL_INODE_GENERIC_DROP
|
||||
ZFS_AC_KERNEL_KASAN_ENABLED
|
||||
case "$host_cpu" in
|
||||
powerpc*)
|
||||
ZFS_AC_KERNEL_CPU_HAS_FEATURE
|
||||
|
||||
Reference in New Issue
Block a user