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
8ef01afbfc
commit
2ce06d93a8
|
@ -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_STANDALONE_LINUX_STDARG
|
||||||
ZFS_AC_KERNEL_SRC_PAGEMAP_FOLIO_WAIT_BIT
|
ZFS_AC_KERNEL_SRC_PAGEMAP_FOLIO_WAIT_BIT
|
||||||
ZFS_AC_KERNEL_SRC_ADD_DISK
|
ZFS_AC_KERNEL_SRC_ADD_DISK
|
||||||
|
ZFS_AC_KERNEL_SRC_KTHREAD
|
||||||
|
|
||||||
AC_MSG_CHECKING([for available kernel interfaces])
|
AC_MSG_CHECKING([for available kernel interfaces])
|
||||||
ZFS_LINUX_TEST_COMPILE_ALL([kabi])
|
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_STANDALONE_LINUX_STDARG
|
||||||
ZFS_AC_KERNEL_PAGEMAP_FOLIO_WAIT_BIT
|
ZFS_AC_KERNEL_PAGEMAP_FOLIO_WAIT_BIT
|
||||||
ZFS_AC_KERNEL_ADD_DISK
|
ZFS_AC_KERNEL_ADD_DISK
|
||||||
|
ZFS_AC_KERNEL_KTHREAD
|
||||||
])
|
])
|
||||||
|
|
||||||
dnl #
|
dnl #
|
||||||
|
|
|
@ -66,7 +66,7 @@ void
|
||||||
__thread_exit(void)
|
__thread_exit(void)
|
||||||
{
|
{
|
||||||
tsd_exit();
|
tsd_exit();
|
||||||
complete_and_exit(NULL, 0);
|
SPL_KTHREAD_COMPLETE_AND_EXIT(NULL, 0);
|
||||||
/* Unreachable */
|
/* Unreachable */
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(__thread_exit);
|
EXPORT_SYMBOL(__thread_exit);
|
||||||
|
|
Loading…
Reference in New Issue