Linux 5.17 compat: detect complete_and_exit() rename
Linux 5.17 sees a rename from complete_and_exit() to kthread complete_and_exit() Upstream commit cead18552660702a4a46f58e65188fe5f36e9dfe ("exit: Rename complete_and_exit to kthread_complete_and_exit") Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #12989
This commit is contained in:
parent
a9e2788ffe
commit
a9856574cf
27
config/kernel-kthread.m4
Normal file
27
config/kernel-kthread.m4
Normal file
@ -0,0 +1,27 @@
|
||||
AC_DEFUN([ZFS_AC_KERNEL_KTHREAD], [
|
||||
dnl #
|
||||
dnl # 5.17 API,
|
||||
dnl # cead18552660702a4a46f58e65188fe5f36e9dfe ("exit: Rename complete_and_exit to kthread_complete_and_exit")
|
||||
dnl #
|
||||
dnl # Also moves the definition from include/linux/kernel.h to include/linux/kthread.h
|
||||
dnl #
|
||||
AC_MSG_CHECKING([whether kthread_complete_and_exit() is available])
|
||||
ZFS_LINUX_TEST_RESULT([kthread_complete_and_exit], [
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(SPL_KTHREAD_COMPLETE_AND_EXIT, kthread_complete_and_exit, [kthread_complete_and_exit() available])
|
||||
], [
|
||||
AC_MSG_RESULT(no)
|
||||
AC_DEFINE(SPL_KTHREAD_COMPLETE_AND_EXIT, complete_and_exit, [using complete_and_exit() instead])
|
||||
])
|
||||
])
|
||||
|
||||
AC_DEFUN([ZFS_AC_KERNEL_SRC_KTHREAD], [
|
||||
ZFS_LINUX_TEST_SRC([kthread_complete_and_exit], [
|
||||
#include <linux/kthread.h>
|
||||
], [
|
||||
struct completion *completion = NULL;
|
||||
long code = 0;
|
||||
|
||||
kthread_complete_and_exit(completion, code);
|
||||
])
|
||||
])
|
@ -136,6 +136,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_SRC], [
|
||||
ZFS_AC_KERNEL_SRC_STANDALONE_LINUX_STDARG
|
||||
ZFS_AC_KERNEL_SRC_PAGEMAP_FOLIO_WAIT_BIT
|
||||
ZFS_AC_KERNEL_SRC_ADD_DISK
|
||||
ZFS_AC_KERNEL_SRC_KTHREAD
|
||||
|
||||
AC_MSG_CHECKING([for available kernel interfaces])
|
||||
ZFS_LINUX_TEST_COMPILE_ALL([kabi])
|
||||
@ -245,6 +246,7 @@ AC_DEFUN([ZFS_AC_KERNEL_TEST_RESULT], [
|
||||
ZFS_AC_KERNEL_STANDALONE_LINUX_STDARG
|
||||
ZFS_AC_KERNEL_PAGEMAP_FOLIO_WAIT_BIT
|
||||
ZFS_AC_KERNEL_ADD_DISK
|
||||
ZFS_AC_KERNEL_KTHREAD
|
||||
])
|
||||
|
||||
dnl #
|
||||
|
@ -66,7 +66,7 @@ void
|
||||
__thread_exit(void)
|
||||
{
|
||||
tsd_exit();
|
||||
complete_and_exit(NULL, 0);
|
||||
SPL_KTHREAD_COMPLETE_AND_EXIT(NULL, 0);
|
||||
/* Unreachable */
|
||||
}
|
||||
EXPORT_SYMBOL(__thread_exit);
|
||||
|
Loading…
Reference in New Issue
Block a user