mirror of
				https://git.proxmox.com/git/mirror_zfs
				synced 2025-11-03 23:46:39 +00:00 
			
		
		
		
	Commit f4af6bb783 which added support
for REQ_FAILFAST_MASK but the new autoconf test didn't use the same
preprocessor macro name as the code did.
The effect is that FAILFAST mode has not been enabled for ZoL in any
post-2.6.35 kernel.
Retire the HAVE_BIO_RW_FAILFAST interface used in pre-2.6.28 kernels.
Raise an error condition if the FAILFAST interface can't be detected.
Signed-off-by: Tim Chase <tim@onlight.com
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #3386
		
	
			
		
			
				
	
	
		
			40 lines
		
	
	
		
			1013 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1013 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
dnl #
 | 
						|
dnl # Preferred interface for setting FAILFAST on a bio:
 | 
						|
dnl #   2.6.28-2.6.35: BIO_RW_FAILFAST_{DEV|TRANSPORT|DRIVER}
 | 
						|
dnl #       >= 2.6.36: REQ_FAILFAST_{DEV|TRANSPORT|DRIVER}
 | 
						|
dnl #
 | 
						|
 | 
						|
AC_DEFUN([ZFS_AC_KERNEL_BIO_FAILFAST_DTD], [
 | 
						|
	AC_MSG_CHECKING([whether BIO_RW_FAILFAST_* are defined])
 | 
						|
	ZFS_LINUX_TRY_COMPILE([
 | 
						|
		#include <linux/bio.h>
 | 
						|
	],[
 | 
						|
		int flags __attribute__ ((unused));
 | 
						|
		flags = ((1 << BIO_RW_FAILFAST_DEV) |
 | 
						|
			 (1 << BIO_RW_FAILFAST_TRANSPORT) |
 | 
						|
			 (1 << BIO_RW_FAILFAST_DRIVER));
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(yes)
 | 
						|
		AC_DEFINE(HAVE_BIO_RW_FAILFAST_DTD, 1,
 | 
						|
		          [BIO_RW_FAILFAST_* are defined])
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(no)
 | 
						|
	])
 | 
						|
])
 | 
						|
 | 
						|
AC_DEFUN([ZFS_AC_KERNEL_REQ_FAILFAST_MASK], [
 | 
						|
	AC_MSG_CHECKING([whether REQ_FAILFAST_MASK is defined])
 | 
						|
	ZFS_LINUX_TRY_COMPILE([
 | 
						|
		#include <linux/bio.h>
 | 
						|
	],[
 | 
						|
		int flags __attribute__ ((unused));
 | 
						|
		flags = REQ_FAILFAST_MASK;
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(yes)
 | 
						|
		AC_DEFINE(HAVE_REQ_FAILFAST_MASK, 1,
 | 
						|
		          [REQ_FAILFAST_MASK is defined])
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(no)
 | 
						|
	])
 | 
						|
])
 |