More 2.6.26 compat changes

git-svn-id: https://outreach.scidac.gov/svn/spl/trunk@153 7e1ea52c-4ff2-0310-8f11-9dd32ca42a1c
This commit is contained in:
behlendo 2008-08-11 17:56:40 +00:00
parent 6a6cafbe8d
commit 86de8532a9
6 changed files with 46 additions and 6 deletions

View File

@ -289,7 +289,25 @@ AC_DEFUN([SPL_CHECK_SYMBOL_EXPORT],
fi fi
]) ])
dnl #
dnl # SPL_CHECK_HEADER
dnl # check whether header exists and define HAVE_$2_HEADER
dnl #
AC_DEFUN([SPL_CHECK_HEADER],
[AC_MSG_CHECKING([whether header $1 exists])
SPL_LINUX_TRY_COMPILE([
#include <$1>
],[
return 0;
],[
AC_DEFINE(HAVE_$2_HEADER, 1, [$1 exists])
AC_MSG_RESULT(yes)
$3
],[
AC_MSG_RESULT(no)
$4
])
])
dnl # dnl #
dnl # 2.6.x API change dnl # 2.6.x API change
@ -516,8 +534,8 @@ dnl #
dnl # 2.6.16 API change, set_normalize_timespec() moved to time.c dnl # 2.6.16 API change, set_normalize_timespec() moved to time.c
dnl # previously it was available in time.h as an inline. dnl # previously it was available in time.h as an inline.
dnl # dnl #
AC_DEFUN([SPL_AC_SET_NORMALIZED_TIMESPEC_INLINE], AC_DEFUN([SPL_AC_SET_NORMALIZED_TIMESPEC_INLINE], [
[AC_MSG_CHECKING([whether set_normalized_timespec() is an inline]) AC_MSG_CHECKING([whether set_normalized_timespec() is an inline])
SPL_LINUX_TRY_COMPILE([ SPL_LINUX_TRY_COMPILE([
#include <linux/time.h> #include <linux/time.h>
],[ ],[
@ -536,8 +554,8 @@ dnl #
dnl # 2.6.18 API change, dnl # 2.6.18 API change,
dnl # timespec_sub() inline function available in linux/time.h dnl # timespec_sub() inline function available in linux/time.h
dnl # dnl #
AC_DEFUN([SPL_AC_TIMESPEC_SUB], AC_DEFUN([SPL_AC_TIMESPEC_SUB], [
[AC_MSG_CHECKING([whether timespec_sub() is available]) AC_MSG_CHECKING([whether timespec_sub() is available])
SPL_LINUX_TRY_COMPILE([ SPL_LINUX_TRY_COMPILE([
#include <linux/time.h> #include <linux/time.h>
],[ ],[
@ -551,3 +569,10 @@ AC_DEFUN([SPL_AC_TIMESPEC_SUB],
]) ])
]) ])
dnl #
dnl # 2.6,26 API change
dnl # Definition of struct fdtable relocated to linux/fdtable.h
dnl #
AC_DEFUN([SPL_AC_FDTABLE_HEADER], [
SPL_CHECK_HEADER([linux/fdtable.h], [FDTABLE], [], [])
])

View File

@ -57,6 +57,7 @@ SPL_AC_CLASS_DEVICE_CREATE
SPL_AC_SET_NORMALIZED_TIMESPEC_EXPORT SPL_AC_SET_NORMALIZED_TIMESPEC_EXPORT
SPL_AC_SET_NORMALIZED_TIMESPEC_INLINE SPL_AC_SET_NORMALIZED_TIMESPEC_INLINE
SPL_AC_TIMESPEC_SUB SPL_AC_TIMESPEC_SUB
SPL_AC_FDTABLE_HEADER
TOPDIR=`/bin/pwd` TOPDIR=`/bin/pwd`

View File

@ -0,0 +1,9 @@
#ifndef _SPL_FILE_COMPAT_H
#define _SPL_FILE_COMPAT_H
#ifdef HAVE_FDTABLE_HEADER
#include <linux/fdtable.h>
#endif
#endif /* SPL_FILE_COMPAT_H */

View File

@ -40,6 +40,7 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/device.h> #include <linux/device.h>
#include <linux/list.h> #include <linux/list.h>
#include <asm/ioctls.h> #include <asm/ioctls.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <stdarg.h> #include <stdarg.h>
@ -62,6 +63,11 @@
#include <sys/atomic.h> #include <sys/atomic.h>
#include <linux/cdev.h> #include <linux/cdev.h>
#include <linux/file_compat.h>
#include <linux/list_compat.h>
#include <linux/time_compat.h>
#include <linux/bitops_compat.h>
#include "spl-device.h" #include "spl-device.h"
#include "splat-ctl.h" #include "splat-ctl.h"

View File

@ -26,7 +26,6 @@
#include "splat-internal.h" #include "splat-internal.h"
#include <linux/rcupdate.h> #include <linux/rcupdate.h>
#include <linux/fdtable.h>
#define SPLAT_SUBSYSTEM_VNODE 0x0900 #define SPLAT_SUBSYSTEM_VNODE 0x0900
#define SPLAT_VNODE_NAME "vnode" #define SPLAT_VNODE_NAME "vnode"