diff options
author | Brian Behlendorf <[email protected]> | 2011-03-07 10:59:26 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2011-03-07 12:09:02 -0800 |
commit | 15805c7711a69a293d7ab974a7e8f19c388836b4 (patch) | |
tree | 66363124e41f39a6968779e043abf772edbd4722 /config/kernel.m4 | |
parent | 5075c7ea69cc66fa5031ab8d562a66274300ced6 (diff) |
Make CONFIG_PREEMPT Fatal
Until support is added for preemptible kernels detect this at
configure time and make it fatal. Otherwise, it is possible to
have a successful build and kernel modules with flakey behavior.
Diffstat (limited to 'config/kernel.m4')
-rw-r--r-- | config/kernel.m4 | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/config/kernel.m4 b/config/kernel.m4 index 492fbab14..8b4a5c79a 100644 --- a/config/kernel.m4 +++ b/config/kernel.m4 @@ -274,6 +274,12 @@ AC_DEFUN([ZFS_AC_SPL], [ ]) dnl # +dnl # Certain kernel build options are not supported. These must be +dnl # detected at configure time and cause a build failure. Otherwise +dnl # modules may be successfully built that behave incorrectly. +dnl # +dnl # CONFIG_PREEMPT - Preempt kernels require special handling. +dnl # dnl # There are certain kernel build options which when enabled are dnl # completely incompatible with non GPL kernel modules. It is best dnl # to detect these at configure time and fail with a clear error @@ -283,6 +289,11 @@ dnl # CONFIG_DEBUG_LOCK_ALLOC - Maps mutex_lock() to mutex_lock_nested() dnl # AC_DEFUN([ZFS_AC_KERNEL_CONFIG], [ + ZFS_LINUX_CONFIG([PREEMPT], + AC_MSG_ERROR([ + *** Kernel built with CONFIG_PREEMPT which is not supported. + ** You must rebuild your kernel without this option.]), []) + if test "$ZFS_META_LICENSE" = CDDL; then ZFS_LINUX_CONFIG([DEBUG_LOCK_ALLOC], AC_MSG_ERROR([ |