diff --git a/config/spl-build.m4 b/config/spl-build.m4 index 6605b82..4e2fba9 100644 --- a/config/spl-build.m4 +++ b/config/spl-build.m4 @@ -8,7 +8,6 @@ AC_DEFUN([SPL_AC_CONFIG_KERNEL], [ SPL_AC_KERNEL - SPL_AC_KERNEL_CONFIG if test "${LINUX_OBJ}" != "${LINUX}"; then KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$LINUX_OBJ" @@ -210,13 +209,6 @@ AC_DEFUN([SPL_AC_KERNEL], [ SPL_AC_MODULE_SYMVERS ]) -AC_DEFUN([SPL_AC_KERNEL_CONFIG], [ - SPL_LINUX_CONFIG([PREEMPT], - AC_MSG_ERROR([ - *** Kernel built with CONFIG_PREEMPT which is not supported. - ** You must rebuild your kernel without this option.]), []) -]) - dnl # dnl # Default SPL user configuration dnl # @@ -640,26 +632,6 @@ AC_DEFUN([SPL_LINUX_TRY_COMPILE], ]) dnl # -dnl # SPL_LINUX_CONFIG -dnl # -AC_DEFUN([SPL_LINUX_CONFIG], - [AC_MSG_CHECKING([whether Linux was built with CONFIG_$1]) - SPL_LINUX_TRY_COMPILE([ - #include - ],[ - #ifndef CONFIG_$1 - #error CONFIG_$1 not #defined - #endif - ],[ - AC_MSG_RESULT([yes]) - $2 - ],[ - AC_MSG_RESULT([no]) - $3 - ]) -]) - -dnl # dnl # SPL_CHECK_SYMBOL_EXPORT dnl # check symbol exported or not dnl # diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c index 446dab1..61150c8 100644 --- a/module/spl/spl-kmem.c +++ b/module/spl/spl-kmem.c @@ -1139,6 +1139,7 @@ spl_slab_reclaim(spl_kmem_cache_t *skc, int count, int flag) static void spl_magazine_age(void *data) { + preempt_disable(); spl_kmem_magazine_t *skm = spl_get_work_data(data, spl_kmem_magazine_t, skm_work.work); spl_kmem_cache_t *skc = skm->skm_cache; @@ -1155,6 +1156,7 @@ spl_magazine_age(void *data) if (!test_bit(KMC_BIT_DESTROY, &skc->skc_flags)) schedule_delayed_work_on(i, &skm->skm_work, skc->skc_delay / 3 * HZ); + preempt_enable(); } /*