mirror of
				https://git.proxmox.com/git/mirror_zfs
				synced 2025-11-03 23:46:39 +00:00 
			
		
		
		
	Newer versions of gcc are getting smart enough to detect the sloppy syntax used for the autoconf tests. It is now generating warnings for unused/undeclared variables. Newer version of gcc even have the -Wunused-but-set-variable option set by default. This isn't a problem except when -Werror is set and they get promoted to an error. In this case the autoconf test will return an incorrect result which will result in a build failure latter on. To handle this I'm tightening up many of the autoconf tests to explicitly mark variables as unused to suppress the gcc warning. Remember, all of the autoconf code can never actually be run we just want to get a clean build error to detect which APIs are available. Never using a variable is absolutely fine for this. Closes #176
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
dnl #
 | 
						|
dnl # Preferred interface for setting FAILFAST on a bio:
 | 
						|
dnl #   2.6.12-2.6.27: BIO_RW_FAILFAST
 | 
						|
dnl #   2.6.28-2.6.35: BIO_RW_FAILFAST_{DEV|TRANSPORT|DRIVER}
 | 
						|
dnl #   2.6.36-2.6.xx: REQ_FAILFAST_{DEV|TRANSPORT|DRIVER}
 | 
						|
dnl #
 | 
						|
AC_DEFUN([ZFS_AC_KERNEL_BIO_FAILFAST], [
 | 
						|
	AC_MSG_CHECKING([whether BIO_RW_FAILFAST is defined])
 | 
						|
	ZFS_LINUX_TRY_COMPILE([
 | 
						|
		#include <linux/bio.h>
 | 
						|
	],[
 | 
						|
		int flags __attribute__ ((unused));
 | 
						|
		flags = (1 << BIO_RW_FAILFAST);
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(yes)
 | 
						|
		AC_DEFINE(HAVE_BIO_RW_FAILFAST, 1,
 | 
						|
		          [BIO_RW_FAILFAST is defined])
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(no)
 | 
						|
	])
 | 
						|
])
 | 
						|
 | 
						|
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_BIO_REQ_FAILFAST_MASK, 1,
 | 
						|
		          [REQ_FAILFAST_MASK is defined])
 | 
						|
	],[
 | 
						|
		AC_MSG_RESULT(no)
 | 
						|
	])
 | 
						|
])
 |