LINUX_OBJ
LINUX
SPL_CONFIG
+DEFAULT_PACKAGE
+VENDOR
+ALIEN_VERSION
+ALIEN
+HAVE_ALIEN
+DPKGBUILD_VERSION
+DPKGBUILD
+HAVE_DPKGBUILD
+DPKG_VERSION
+DPKG
+HAVE_DPKG
+RPMBUILD_VERSION
+RPMBUILD
+HAVE_RPMBUILD
+RPM_VERSION
+RPM
+HAVE_RPM
LICENSE
CPP
OTOOL64
-macro_version='2.2.6'
-macro_revision='1.3012'
+macro_version='2.2.6b'
+macro_revision='1.3017'
else
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:4763: $ac_compile\"" >&5)
+ (eval echo "\"\$as_me:4780: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5
- (eval echo "\"\$as_me:4766: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval echo "\"\$as_me:4783: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5
- (eval echo "\"\$as_me:4769: output\"" >&5)
+ (eval echo "\"\$as_me:4786: output\"" >&5)
cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 5975 "configure"' > conftest.$ac_ext
+ echo '#line 5992 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:7828: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:7845: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:7832: \$? = $ac_status" >&5
+ echo "$as_me:7849: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8167: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8184: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8171: \$? = $ac_status" >&5
+ echo "$as_me:8188: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8272: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8289: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8276: \$? = $ac_status" >&5
+ echo "$as_me:8293: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8327: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8344: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8331: \$? = $ac_status" >&5
+ echo "$as_me:8348: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11130 "configure"
+#line 11147 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11226 "configure"
+#line 11243 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
+
+ RPM=rpm
+ RPMBUILD=rpmbuild
+
+ { $as_echo "$as_me:$LINENO: checking whether $RPM is available" >&5
+$as_echo_n "checking whether $RPM is available... " >&6; }
+ if tmp=$($RPM --version 2>/dev/null); then
+
+ RPM_VERSION=$(echo $tmp | $AWK '/RPM/ { print $3 }')
+ HAVE_RPM=yes
+ { $as_echo "$as_me:$LINENO: result: $HAVE_RPM ($RPM_VERSION)" >&5
+$as_echo "$HAVE_RPM ($RPM_VERSION)" >&6; }
+
+else
+
+ HAVE_RPM=no
+ { $as_echo "$as_me:$LINENO: result: $HAVE_RPM" >&5
+$as_echo "$HAVE_RPM" >&6; }
+
+fi
+
+
+ { $as_echo "$as_me:$LINENO: checking whether $RPMBUILD is available" >&5
+$as_echo_n "checking whether $RPMBUILD is available... " >&6; }
+ if tmp=$($RPMBUILD --version 2>/dev/null); then
+
+ RPMBUILD_VERSION=$(echo $tmp | $AWK '/RPM/ { print $3 }')
+ HAVE_RPMBUILD=yes
+ { $as_echo "$as_me:$LINENO: result: $HAVE_RPMBUILD ($RPMBUILD_VERSION)" >&5
+$as_echo "$HAVE_RPMBUILD ($RPMBUILD_VERSION)" >&6; }
+
+else
+
+ HAVE_RPMBUILD=no
+ { $as_echo "$as_me:$LINENO: result: $HAVE_RPMBUILD" >&5
+$as_echo "$HAVE_RPMBUILD" >&6; }
+
+fi
+
+
+
+
+
+
+
+
+
+
+
+ DPKG=dpkg
+ DPKGBUILD=dpkg-buildpackage
+
+ { $as_echo "$as_me:$LINENO: checking whether $DPKG is available" >&5
+$as_echo_n "checking whether $DPKG is available... " >&6; }
+ if tmp=$($DPKG --version 2>/dev/null); then
+
+ DPKG_VERSION=$(echo $tmp | $AWK '/Debian/ { print $7 }')
+ HAVE_DPKG=yes
+ { $as_echo "$as_me:$LINENO: result: $HAVE_DPKG ($DPKG_VERSION)" >&5
+$as_echo "$HAVE_DPKG ($DPKG_VERSION)" >&6; }
+
+else
+
+ HAVE_DPKG=no
+ { $as_echo "$as_me:$LINENO: result: $HAVE_DPKG" >&5
+$as_echo "$HAVE_DPKG" >&6; }
+
+fi
+
+
+ { $as_echo "$as_me:$LINENO: checking whether $DPKGBUILD is available" >&5
+$as_echo_n "checking whether $DPKGBUILD is available... " >&6; }
+ if tmp=$($DPKGBUILD --version 2>/dev/null); then
+
+ DPKGBUILD_VERSION=$(echo $tmp | \
+ $AWK '/Debian/ { print $4 }' | cut -f-4 -d'.')
+ HAVE_DPKGBUILD=yes
+ { $as_echo "$as_me:$LINENO: result: $HAVE_DPKGBUILD ($DPKGBUILD_VERSION)" >&5
+$as_echo "$HAVE_DPKGBUILD ($DPKGBUILD_VERSION)" >&6; }
+
+else
+
+ HAVE_DPKGBUILD=no
+ { $as_echo "$as_me:$LINENO: result: $HAVE_DPKGBUILD" >&5
+$as_echo "$HAVE_DPKGBUILD" >&6; }
+
+fi
+
+
+
+
+
+
+
+
+
+
+
+ ALIEN=alien
+
+ { $as_echo "$as_me:$LINENO: checking whether $ALIEN is available" >&5
+$as_echo_n "checking whether $ALIEN is available... " >&6; }
+ if tmp=$($ALIEN --version 2>/dev/null); then
+
+ ALIEN_VERSION=$(echo $tmp | $AWK '{ print $3 }')
+ HAVE_ALIEN=yes
+ { $as_echo "$as_me:$LINENO: result: $HAVE_ALIEN ($ALIEN_VERSION)" >&5
+$as_echo "$HAVE_ALIEN ($ALIEN_VERSION)" >&6; }
+
+else
+
+ HAVE_ALIEN=no
+ { $as_echo "$as_me:$LINENO: result: $HAVE_ALIEN" >&5
+$as_echo "$HAVE_ALIEN" >&6; }
+
+fi
+
+
+
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking linux distribution" >&5
+$as_echo_n "checking linux distribution... " >&6; }
+ if test -f /etc/redhat-release ; then
+ VENDOR=redhat ;
+ elif test -f /etc/fedora-release ; then
+ VENDOR=fedora ;
+ elif test -f /etc/lsb-release ; then
+ VENDOR=ubuntu ;
+ elif test -f /etc/debian_version ; then
+ VENDOR=debian ;
+ elif test -f /etc/SuSE-release ; then
+ VENDOR=sles ;
+ elif test -f /etc/slackware-version ; then
+ VENDOR=slackware ;
+ elif test -f /etc/gentoo-release ; then
+ VENDOR=gentoo ;
+ else
+ VENDOR= ;
+ fi
+ { $as_echo "$as_me:$LINENO: result: $VENDOR" >&5
+$as_echo "$VENDOR" >&6; }
+
+
+ { $as_echo "$as_me:$LINENO: checking default package type" >&5
+$as_echo_n "checking default package type... " >&6; }
+ case "$VENDOR" in
+ fedora) DEFAULT_PACKAGE=rpm ;;
+ redhat) DEFAULT_PACKAGE=rpm ;;
+ sles) DEFAULT_PACKAGE=rpm ;;
+ ubuntu) DEFAULT_PACKAGE=deb ;;
+ debian) DEFAULT_PACKAGE=deb ;;
+ slackware) DEFAULT_PACKAGE=tgz ;;
+ *) DEFAULT_PACKAGE=rpm ;;
+ esac
+
+ { $as_echo "$as_me:$LINENO: result: $DEFAULT_PACKAGE" >&5
+$as_echo "$DEFAULT_PACKAGE" >&6; }
+
+
+
+
SPL_CONFIG=all
# Check whether --with-config was given.
{ $as_echo "$as_me:$LINENO: checking kernel source directory" >&5
$as_echo_n "checking kernel source directory... " >&6; }
if test -z "$kernelsrc"; then
- headersdir="/lib/modules/$(uname -r)/build"
- if test -e "$headersdir"; then
+ if test -e "/lib/modules/$(uname -r)/source"; then
+ headersdir="/lib/modules/$(uname -r)/source"
+ sourcelink=$(readlink -f "$headersdir")
+ elif test -e "/lib/modules/$(uname -r)/build"; then
+ headersdir="/lib/modules/$(uname -r)/build"
sourcelink=$(readlink -f "$headersdir")
else
sourcelink=$(ls -1d /usr/src/kernels/* \
{ $as_echo "$as_me:$LINENO: checking kernel build directory" >&5
$as_echo_n "checking kernel build directory... " >&6; }
if test -z "$kernelbuild"; then
- if test -d ${kernelsrc}-obj/`arch`/`arch`; then
- kernelbuild=${kernelsrc}-obj/`arch`/`arch`
- elif test -d ${kernelsrc}-obj/`arch`/default; then
- kernelbuild=${kernelsrc}-obj/`arch`/default
- elif test -d `dirname ${kernelsrc}`/build-`arch`; then
- kernelbuild=`dirname ${kernelsrc}`/build-`arch`
+ if test -e "/lib/modules/$(uname -r)/build"; then
+ kernelbuild=`readlink -f /lib/modules/$(uname -r)/build`
+ elif test -d ${kernelsrc}-obj/${target_cpu}/${target_cpu}; then
+ kernelbuild=${kernelsrc}-obj/${target_cpu}/${target_cpu}
+ elif test -d ${kernelsrc}-obj/${target_cpu}/default; then
+ kernelbuild=${kernelsrc}-obj/${target_cpu}/default
+ elif test -d `dirname ${kernelsrc}`/build-${target_cpu}; then
+ kernelbuild=`dirname ${kernelsrc}`/build-${target_cpu}
else
kernelbuild=${kernelsrc}
fi
else
LINUX_SYMBOLS=Module.symvers
fi
+
+ if ! test -f "$LINUX_OBJ/$LINUX_SYMBOLS"; then
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed. If your building with a custom kernel make sure the
+ *** kernel is configured, built, and the '--with-linux=PATH' configure
+ *** option refers to the location of the kernel source." >&5
+$as_echo "$as_me: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed. If your building with a custom kernel make sure the
+ *** kernel is configured, built, and the '--with-linux=PATH' configure
+ *** option refers to the location of the kernel source." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
else
LINUX_SYMBOLS=NONE
fi
- abs_srcdir=`readlink -f ${srcdir}`
- KERNELCPPFLAGS="$KERNELCPPFLAGS -Wstrict-prototypes"
- KERNELCPPFLAGS="$KERNELCPPFLAGS -I${abs_srcdir}/include"
- KERNELCPPFLAGS="$KERNELCPPFLAGS -include ${abs_srcdir}/spl_config.h"
+ { $as_echo "$as_me:$LINENO: checking whether Linux was built with CONFIG_PREEMPT" >&5
+$as_echo_n "checking whether Linux was built with CONFIG_PREEMPT... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #ifndef AUTOCONF_INCLUDED
+ #include <linux/config.h>
+ #endif
+
+int
+main (void)
+{
+
+ #ifndef CONFIG_PREEMPT
+ #error CONFIG_PREEMPT not #defined
+ #endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Kernel built with CONFIG_PREEMPT which is not supported.
+ ** You must rebuild your kernel without this option." >&5
+$as_echo "$as_me: error:
+ *** Kernel built with CONFIG_PREEMPT which is not supported.
+ ** You must rebuild your kernel without this option." >&2;}
+ { (exit 1); exit 1; }; }
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+
if test "${LINUX_OBJ}" != "${LINUX}"; then
KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$LINUX_OBJ"
fi
+ KERNELCPPFLAGS="$KERNELCPPFLAGS -Wstrict-prototypes"
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- atomic64_t *ptr;
+ atomic64_t *ptr __attribute__ ((unused));
;
return 0;
$as_echo_n "checking whether kernel defines atomic64_cmpxchg... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
#include <asm/atomic.h>
+ #include <asm/system.h>
int
main (void)
$as_echo_n "checking whether kernel defines atomic64_xchg... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether kernel defines uintptr_t... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- uintptr_t *ptr;
+ uintptr_t *ptr __attribute__ ((unused));
;
return 0;
$as_echo_n "checking whether INIT_WORK wants 3 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct work_struct work;
+ struct work_struct work __attribute__ ((unused));
INIT_WORK(&work, NULL, NULL);
;
$as_echo_n "checking whether register_sysctl_table() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- return register_sysctl_table(NULL,0);
+ (void) register_sysctl_table(NULL, 0);
;
return 0;
$as_echo_n "checking whether set_shrinker() available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
+ { $as_echo "$as_me:$LINENO: checking whether shrinker callback wants 3 args" >&5
+$as_echo_n "checking whether shrinker callback wants 3 args... " >&6; }
+ tmp_flags="$EXTRA_KCFLAGS"
+ EXTRA_KCFLAGS="-Werror"
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/mm.h>
+
+ int shrinker_cb(struct shrinker *, int, unsigned int);
+
+int
+main (void)
+{
+
+ struct shrinker cache_shrinker = {
+ .shrink = shrinker_cb,
+ .seeks = DEFAULT_SEEKS,
+ };
+ register_shrinker(&cache_shrinker);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_3ARGS_SHRINKER_CALLBACK 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+ EXTRA_KCFLAGS="$tmp_flags"
+
{ $as_echo "$as_me:$LINENO: checking whether struct path used in struct nameidata" >&5
$as_echo_n "checking whether struct path used in struct nameidata... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct nameidata nd;
+ struct nameidata nd __attribute__ ((unused));
nd.path.mnt = NULL;
nd.path.dentry = NULL;
$as_echo_n "checking whether unnumbered sysctl support exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether struct ctl_table has ctl_name... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct ctl_table ctl;
+ struct ctl_table ctl __attribute__ ((unused));
ctl.ctl_name = 0;
;
$as_echo_n "checking whether fls64() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
EXTRA_KCFLAGS="-Werror"
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether set_normalized_timespec() is an inline... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether timespec_sub() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct timespec a, b, c = { 0 };
+ struct timespec a = { 0 };
+ struct timespec b = { 0 };
+ struct timespec c __attribute__ ((unused));
c = timespec_sub(a, b);
;
$as_echo_n "checking whether init_utsname() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct new_utsname *a = init_utsname();
+ struct new_utsname *a __attribute__ ((unused));
+ a = init_utsname();
;
return 0;
$as_echo_n "checking whether header linux/fdtable.h exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether files_fdtable() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
{
struct files_struct *files = current->files;
- struct fdtable *fdt = files_fdtable(files);
+ struct fdtable *fdt __attribute__ ((unused));
+ fdt = files_fdtable(files);
;
return 0;
$as_echo_n "checking whether header linux/uaccess.h exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether kmalloc_node() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- void *a = kmalloc_node(1, GFP_KERNEL, 0);
+ void *a __attribute__ ((unused));
+ a = kmalloc_node(1, GFP_KERNEL, 0);
;
return 0;
$as_echo_n "checking whether struct inode has i_mutex... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether struct mutex has owner... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct mutex mtx;
+ struct mutex mtx __attribute__ ((unused));
mtx.owner = NULL;
;
$as_echo_n "checking whether mutex_lock_nested() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
- { $as_echo "$as_me:$LINENO: checking whether symbol div64_64 is exported" >&5
-$as_echo_n "checking whether symbol div64_64 is exported... " >&6; }
- grep -q -E '[[:space:]]div64_64[[:space:]]' \
- $LINUX_OBJ/Module*.symvers 2>/dev/null
- rc=$?
- if test $rc -ne 0; then
- export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(div64_64)" \
- "$LINUX_OBJ/$file" 2>/dev/null
- rc=$?
- if test $rc -eq 0; then
- export=1
- break;
- fi
- done
- if test $export -eq 0; then
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether on_each_cpu() wants 3 args" >&5
+$as_echo_n "checking whether on_each_cpu() wants 3 args... " >&6; }
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_64 1
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
- fi
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_64 1
-_ACEOF
+ #include <linux/smp.h>
- fi
+int
+main (void)
+{
+ on_each_cpu(NULL, NULL, 0);
-
- { $as_echo "$as_me:$LINENO: checking whether symbol div64_u64 is exported" >&5
-$as_echo_n "checking whether symbol div64_u64 is exported... " >&6; }
- grep -q -E '[[:space:]]div64_u64[[:space:]]' \
- $LINUX_OBJ/Module*.symvers 2>/dev/null
- rc=$?
- if test $rc -ne 0; then
- export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(div64_u64)" \
- "$LINUX_OBJ/$file" 2>/dev/null
- rc=$?
- if test $rc -eq 0; then
- export=1
- break;
- fi
- done
- if test $export -eq 0; then
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_U64 1
-_ACEOF
-
- fi
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_U64 1
-_ACEOF
-
- fi
-
-
-
- { $as_echo "$as_me:$LINENO: checking whether on_each_cpu() wants 3 args" >&5
-$as_echo_n "checking whether on_each_cpu() wants 3 args... " >&6; }
-
-
-cat >conftest.c <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-
- #include <linux/smp.h>
-
-int
-main (void)
-{
-
- on_each_cpu(NULL, NULL, 0);
-
- ;
- return 0;
-}
+ ;
+ return 0;
+}
_ACEOF
$as_echo_n "checking whether global_page_state() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- unsigned long state;
+ unsigned long state __attribute__ ((unused));
state = global_page_state(0);
;
$as_echo_n "checking whether page state NR_FREE_PAGES is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_FREE_PAGES;
;
$as_echo_n "checking whether page state NR_INACTIVE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE;
;
$as_echo_n "checking whether page state NR_INACTIVE_ANON is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE_ANON;
;
$as_echo_n "checking whether page state NR_INACTIVE_FILE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE_FILE;
;
$as_echo_n "checking whether page state NR_ACTIVE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE;
;
$as_echo_n "checking whether page state NR_ACTIVE_ANON is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE_ANON;
;
$as_echo_n "checking whether page state NR_ACTIVE_FILE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE_FILE;
;
$as_echo_n "checking whether symbol get_zone_counts is needed... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
+ { $as_echo "$as_me:$LINENO: checking whether symbol user_path_at is exported" >&5
+$as_echo_n "checking whether symbol user_path_at is exported... " >&6; }
+ grep -q -E '[[:space:]]user_path_at[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(user_path_at)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_USER_PATH_DIR 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_USER_PATH_DIR 1
+_ACEOF
+
+ fi
+
+
+
{ $as_echo "$as_me:$LINENO: checking whether symbol set_fs_pwd is exported" >&5
$as_echo_n "checking whether symbol set_fs_pwd is exported... " >&6; }
grep -q -E '[[:space:]]set_fs_pwd[[:space:]]' \
$as_echo_n "checking whether set_fs_pwd() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether vfs_unlink() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether vfs_rename() wants 4 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
+ { $as_echo "$as_me:$LINENO: checking whether struct fs_struct uses spinlock_t" >&5
+$as_echo_n "checking whether struct fs_struct uses spinlock_t... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/sched.h>
+ #include <linux/fs_struct.h>
+
+int
+main (void)
+{
+
+ struct fs_struct fs;
+ spin_lock_init(&fs.lock);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_FS_STRUCT_SPINLOCK 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+
{ $as_echo "$as_me:$LINENO: checking whether struct cred exists" >&5
$as_echo_n "checking whether struct cred exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct cred *cr;
+ struct cred *cr __attribute__ ((unused));
cr = NULL;
;
$as_echo_n "checking whether proc_handler() wants 5 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
fi
- ;;
- user) ;;
- all)
+ { $as_echo "$as_me:$LINENO: checking whether file_fsync() wants 3 args" >&5
+$as_echo_n "checking whether file_fsync() wants 3 args... " >&6; }
-# Check whether --with-linux was given.
-if test "${with_linux+set}" = set; then
- withval=$with_linux; kernelsrc="$withval"
-fi
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-# Check whether --with-linux-obj was given.
-if test "${with_linux_obj+set}" = set; then
- withval=$with_linux_obj; kernelbuild="$withval"
-fi
+ #include <linux/buffer_head.h>
+int
+main (void)
+{
- { $as_echo "$as_me:$LINENO: checking kernel source directory" >&5
-$as_echo_n "checking kernel source directory... " >&6; }
- if test -z "$kernelsrc"; then
- headersdir="/lib/modules/$(uname -r)/build"
- if test -e "$headersdir"; then
- sourcelink=$(readlink -f "$headersdir")
- else
- sourcelink=$(ls -1d /usr/src/kernels/* \
- /usr/src/linux-* \
- 2>/dev/null | grep -v obj | tail -1)
- fi
+ file_fsync(NULL, NULL, 0);
- if test -n "$sourcelink" && test -e ${sourcelink}; then
- kernelsrc=`readlink -f ${sourcelink}`
- else
- { $as_echo "$as_me:$LINENO: result: Not found" >&5
-$as_echo "Not found" >&6; }
- { { $as_echo "$as_me:$LINENO: error:
- *** Please make sure the kernel devel package for your distribution
- *** is installed then try again. If that fails you can specify the
- *** location of the kernel source with the '--with-linux=PATH' option." >&5
-$as_echo "$as_me: error:
- *** Please make sure the kernel devel package for your distribution
- *** is installed then try again. If that fails you can specify the
- *** location of the kernel source with the '--with-linux=PATH' option." >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- if test "$kernelsrc" = "NONE"; then
- kernsrcver=NONE
- fi
- fi
+ ;
+ return 0;
+}
- { $as_echo "$as_me:$LINENO: result: $kernelsrc" >&5
-$as_echo "$kernelsrc" >&6; }
- { $as_echo "$as_me:$LINENO: checking kernel build directory" >&5
-$as_echo_n "checking kernel build directory... " >&6; }
- if test -z "$kernelbuild"; then
- if test -d ${kernelsrc}-obj/`arch`/`arch`; then
- kernelbuild=${kernelsrc}-obj/`arch`/`arch`
- elif test -d ${kernelsrc}-obj/`arch`/default; then
- kernelbuild=${kernelsrc}-obj/`arch`/default
- elif test -d `dirname ${kernelsrc}`/build-`arch`; then
- kernelbuild=`dirname ${kernelsrc}`/build-`arch`
- else
- kernelbuild=${kernelsrc}
- fi
- fi
- { $as_echo "$as_me:$LINENO: result: $kernelbuild" >&5
-$as_echo "$kernelbuild" >&6; }
+_ACEOF
- { $as_echo "$as_me:$LINENO: checking kernel source version" >&5
-$as_echo_n "checking kernel source version... " >&6; }
- utsrelease1=$kernelbuild/include/linux/version.h
- utsrelease2=$kernelbuild/include/linux/utsrelease.h
- utsrelease3=$kernelbuild/include/generated/utsrelease.h
- if test -r $utsrelease1 && fgrep -q UTS_RELEASE $utsrelease1; then
- utsrelease=linux/version.h
- elif test -r $utsrelease2 && fgrep -q UTS_RELEASE $utsrelease2; then
- utsrelease=linux/utsrelease.h
- elif test -r $utsrelease3 && fgrep -q UTS_RELEASE $utsrelease3; then
- utsrelease=generated/utsrelease.h
- fi
- if test "$utsrelease"; then
- kernsrcver=`(echo "#include <$utsrelease>";
- echo "kernsrcver=UTS_RELEASE") |
- cpp -I $kernelbuild/include |
- grep "^kernsrcver=" | cut -d \" -f 2`
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
- if test -z "$kernsrcver"; then
- { $as_echo "$as_me:$LINENO: result: Not found" >&5
-$as_echo "Not found" >&6; }
- { { $as_echo "$as_me:$LINENO: error: *** Cannot determine kernel version." >&5
-$as_echo "$as_me: error: *** Cannot determine kernel version." >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- { $as_echo "$as_me:$LINENO: result: Not found" >&5
-$as_echo "Not found" >&6; }
- { { $as_echo "$as_me:$LINENO: error: *** Cannot find UTS_RELEASE definition." >&5
-$as_echo "$as_me: error: *** Cannot find UTS_RELEASE definition." >&2;}
- { (exit 1); exit 1; }; }
- fi
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
- { $as_echo "$as_me:$LINENO: result: $kernsrcver" >&5
-$as_echo "$kernsrcver" >&6; }
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_3ARGS_FILE_FSYNC 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol rwsem_is_locked is exported" >&5
+$as_echo_n "checking whether symbol rwsem_is_locked is exported... " >&6; }
+ grep -q -E '[[:space:]]rwsem_is_locked[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in lib/rwsem-spinlock.c; do
+ grep -q -E "EXPORT_SYMBOL.*(rwsem_is_locked)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define RWSEM_IS_LOCKED_TAKES_WAIT_LOCK 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define RWSEM_IS_LOCKED_TAKES_WAIT_LOCK 1
+_ACEOF
+
+ fi
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol invalidate_inodes is exported" >&5
+$as_echo_n "checking whether symbol invalidate_inodes is exported... " >&6; }
+ grep -q -E '[[:space:]]invalidate_inodes[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(invalidate_inodes)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_INVALIDATE_INODES 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_INVALIDATE_INODES 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking whether invalidate_inodes() wants 2 args" >&5
+$as_echo_n "checking whether invalidate_inodes() wants 2 args... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/fs.h>
+
+int
+main (void)
+{
+
+ return __invalidate_device(NULL, 0);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_2ARGS_INVALIDATE_INODES 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol shrink_dcache_memory is exported" >&5
+$as_echo_n "checking whether symbol shrink_dcache_memory is exported... " >&6; }
+ grep -q -E '[[:space:]]shrink_dcache_memory[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in fs/dcache.c; do
+ grep -q -E "EXPORT_SYMBOL.*(shrink_dcache_memory)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_DCACHE_MEMORY 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_DCACHE_MEMORY 1
+_ACEOF
+
+ fi
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol shrink_icache_memory is exported" >&5
+$as_echo_n "checking whether symbol shrink_icache_memory is exported... " >&6; }
+ grep -q -E '[[:space:]]shrink_icache_memory[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in fs/inode.c; do
+ grep -q -E "EXPORT_SYMBOL.*(shrink_icache_memory)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_ICACHE_MEMORY 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_ICACHE_MEMORY 1
+_ACEOF
+
+ fi
+
+
+ ;;
+ user)
+
+ if test "x$AWK" != xgawk; then
+
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Required util gawk missing. Please install the required
+ *** gawk package for your distribution and try again." >&5
+$as_echo "$as_me: error:
+ *** Required util gawk missing. Please install the required
+ *** gawk package for your distribution and try again." >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+
+
+ ;;
+ all)
+
+
+# Check whether --with-linux was given.
+if test "${with_linux+set}" = set; then
+ withval=$with_linux; kernelsrc="$withval"
+fi
+
+
+
+# Check whether --with-linux-obj was given.
+if test "${with_linux_obj+set}" = set; then
+ withval=$with_linux_obj; kernelbuild="$withval"
+fi
+
+
+ { $as_echo "$as_me:$LINENO: checking kernel source directory" >&5
+$as_echo_n "checking kernel source directory... " >&6; }
+ if test -z "$kernelsrc"; then
+ if test -e "/lib/modules/$(uname -r)/source"; then
+ headersdir="/lib/modules/$(uname -r)/source"
+ sourcelink=$(readlink -f "$headersdir")
+ elif test -e "/lib/modules/$(uname -r)/build"; then
+ headersdir="/lib/modules/$(uname -r)/build"
+ sourcelink=$(readlink -f "$headersdir")
+ else
+ sourcelink=$(ls -1d /usr/src/kernels/* \
+ /usr/src/linux-* \
+ 2>/dev/null | grep -v obj | tail -1)
+ fi
+
+ if test -n "$sourcelink" && test -e ${sourcelink}; then
+ kernelsrc=`readlink -f ${sourcelink}`
+ else
+ { $as_echo "$as_me:$LINENO: result: Not found" >&5
+$as_echo "Not found" >&6; }
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed then try again. If that fails you can specify the
+ *** location of the kernel source with the '--with-linux=PATH' option." >&5
+$as_echo "$as_me: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed then try again. If that fails you can specify the
+ *** location of the kernel source with the '--with-linux=PATH' option." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ else
+ if test "$kernelsrc" = "NONE"; then
+ kernsrcver=NONE
+ fi
+ fi
+
+ { $as_echo "$as_me:$LINENO: result: $kernelsrc" >&5
+$as_echo "$kernelsrc" >&6; }
+ { $as_echo "$as_me:$LINENO: checking kernel build directory" >&5
+$as_echo_n "checking kernel build directory... " >&6; }
+ if test -z "$kernelbuild"; then
+ if test -e "/lib/modules/$(uname -r)/build"; then
+ kernelbuild=`readlink -f /lib/modules/$(uname -r)/build`
+ elif test -d ${kernelsrc}-obj/${target_cpu}/${target_cpu}; then
+ kernelbuild=${kernelsrc}-obj/${target_cpu}/${target_cpu}
+ elif test -d ${kernelsrc}-obj/${target_cpu}/default; then
+ kernelbuild=${kernelsrc}-obj/${target_cpu}/default
+ elif test -d `dirname ${kernelsrc}`/build-${target_cpu}; then
+ kernelbuild=`dirname ${kernelsrc}`/build-${target_cpu}
+ else
+ kernelbuild=${kernelsrc}
+ fi
+ fi
+ { $as_echo "$as_me:$LINENO: result: $kernelbuild" >&5
+$as_echo "$kernelbuild" >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking kernel source version" >&5
+$as_echo_n "checking kernel source version... " >&6; }
+ utsrelease1=$kernelbuild/include/linux/version.h
+ utsrelease2=$kernelbuild/include/linux/utsrelease.h
+ utsrelease3=$kernelbuild/include/generated/utsrelease.h
+ if test -r $utsrelease1 && fgrep -q UTS_RELEASE $utsrelease1; then
+ utsrelease=linux/version.h
+ elif test -r $utsrelease2 && fgrep -q UTS_RELEASE $utsrelease2; then
+ utsrelease=linux/utsrelease.h
+ elif test -r $utsrelease3 && fgrep -q UTS_RELEASE $utsrelease3; then
+ utsrelease=generated/utsrelease.h
+ fi
+
+ if test "$utsrelease"; then
+ kernsrcver=`(echo "#include <$utsrelease>";
+ echo "kernsrcver=UTS_RELEASE") |
+ cpp -I $kernelbuild/include |
+ grep "^kernsrcver=" | cut -d \" -f 2`
+
+ if test -z "$kernsrcver"; then
+ { $as_echo "$as_me:$LINENO: result: Not found" >&5
+$as_echo "Not found" >&6; }
+ { { $as_echo "$as_me:$LINENO: error: *** Cannot determine kernel version." >&5
+$as_echo "$as_me: error: *** Cannot determine kernel version." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: Not found" >&5
+$as_echo "Not found" >&6; }
+ { { $as_echo "$as_me:$LINENO: error: *** Cannot find UTS_RELEASE definition." >&5
+$as_echo "$as_me: error: *** Cannot find UTS_RELEASE definition." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+
+ { $as_echo "$as_me:$LINENO: result: $kernsrcver" >&5
+$as_echo "$kernsrcver" >&6; }
LINUX=${kernelsrc}
LINUX_OBJ=${kernelbuild}
else
LINUX_SYMBOLS=Module.symvers
fi
+
+ if ! test -f "$LINUX_OBJ/$LINUX_SYMBOLS"; then
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed. If your building with a custom kernel make sure the
+ *** kernel is configured, built, and the '--with-linux=PATH' configure
+ *** option refers to the location of the kernel source." >&5
+$as_echo "$as_me: error:
+ *** Please make sure the kernel devel package for your distribution
+ *** is installed. If your building with a custom kernel make sure the
+ *** kernel is configured, built, and the '--with-linux=PATH' configure
+ *** option refers to the location of the kernel source." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
else
LINUX_SYMBOLS=NONE
fi
- abs_srcdir=`readlink -f ${srcdir}`
- KERNELCPPFLAGS="$KERNELCPPFLAGS -Wstrict-prototypes"
- KERNELCPPFLAGS="$KERNELCPPFLAGS -I${abs_srcdir}/include"
- KERNELCPPFLAGS="$KERNELCPPFLAGS -include ${abs_srcdir}/spl_config.h"
+ { $as_echo "$as_me:$LINENO: checking whether Linux was built with CONFIG_PREEMPT" >&5
+$as_echo_n "checking whether Linux was built with CONFIG_PREEMPT... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #ifndef AUTOCONF_INCLUDED
+ #include <linux/config.h>
+ #endif
+
+int
+main (void)
+{
+
+ #ifndef CONFIG_PREEMPT
+ #error CONFIG_PREEMPT not #defined
+ #endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Kernel built with CONFIG_PREEMPT which is not supported.
+ ** You must rebuild your kernel without this option." >&5
+$as_echo "$as_me: error:
+ *** Kernel built with CONFIG_PREEMPT which is not supported.
+ ** You must rebuild your kernel without this option." >&2;}
+ { (exit 1); exit 1; }; }
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+
if test "${LINUX_OBJ}" != "${LINUX}"; then
KERNELMAKE_PARAMS="$KERNELMAKE_PARAMS O=$LINUX_OBJ"
fi
+ KERNELCPPFLAGS="$KERNELCPPFLAGS -Wstrict-prototypes"
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- atomic64_t *ptr;
+ atomic64_t *ptr __attribute__ ((unused));
;
return 0;
$as_echo_n "checking whether kernel defines atomic64_cmpxchg... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
#include <asm/atomic.h>
+ #include <asm/system.h>
int
main (void)
$as_echo_n "checking whether kernel defines atomic64_xchg... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether kernel defines uintptr_t... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- uintptr_t *ptr;
+ uintptr_t *ptr __attribute__ ((unused));
;
return 0;
$as_echo_n "checking whether INIT_WORK wants 3 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct work_struct work;
+ struct work_struct work __attribute__ ((unused));
INIT_WORK(&work, NULL, NULL);
;
$as_echo_n "checking whether register_sysctl_table() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- return register_sysctl_table(NULL,0);
+ (void) register_sysctl_table(NULL, 0);
;
return 0;
$as_echo_n "checking whether set_shrinker() available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
+ { $as_echo "$as_me:$LINENO: checking whether shrinker callback wants 3 args" >&5
+$as_echo_n "checking whether shrinker callback wants 3 args... " >&6; }
+ tmp_flags="$EXTRA_KCFLAGS"
+ EXTRA_KCFLAGS="-Werror"
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/mm.h>
+
+ int shrinker_cb(struct shrinker *, int, unsigned int);
+
+int
+main (void)
+{
+
+ struct shrinker cache_shrinker = {
+ .shrink = shrinker_cb,
+ .seeks = DEFAULT_SEEKS,
+ };
+ register_shrinker(&cache_shrinker);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_3ARGS_SHRINKER_CALLBACK 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+ EXTRA_KCFLAGS="$tmp_flags"
+
{ $as_echo "$as_me:$LINENO: checking whether struct path used in struct nameidata" >&5
$as_echo_n "checking whether struct path used in struct nameidata... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct nameidata nd;
+ struct nameidata nd __attribute__ ((unused));
nd.path.mnt = NULL;
nd.path.dentry = NULL;
$as_echo_n "checking whether unnumbered sysctl support exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether struct ctl_table has ctl_name... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct ctl_table ctl;
+ struct ctl_table ctl __attribute__ ((unused));
ctl.ctl_name = 0;
;
$as_echo_n "checking whether fls64() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
EXTRA_KCFLAGS="-Werror"
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether set_normalized_timespec() is an inline... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether timespec_sub() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct timespec a, b, c = { 0 };
+ struct timespec a = { 0 };
+ struct timespec b = { 0 };
+ struct timespec c __attribute__ ((unused));
c = timespec_sub(a, b);
;
$as_echo_n "checking whether init_utsname() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct new_utsname *a = init_utsname();
+ struct new_utsname *a __attribute__ ((unused));
+ a = init_utsname();
;
return 0;
$as_echo_n "checking whether header linux/fdtable.h exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether files_fdtable() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
{
struct files_struct *files = current->files;
- struct fdtable *fdt = files_fdtable(files);
+ struct fdtable *fdt __attribute__ ((unused));
+ fdt = files_fdtable(files);
;
return 0;
$as_echo_n "checking whether header linux/uaccess.h exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether kmalloc_node() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- void *a = kmalloc_node(1, GFP_KERNEL, 0);
+ void *a __attribute__ ((unused));
+ a = kmalloc_node(1, GFP_KERNEL, 0);
;
return 0;
$as_echo_n "checking whether struct inode has i_mutex... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether struct mutex has owner... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- struct mutex mtx;
+ struct mutex mtx __attribute__ ((unused));
mtx.owner = NULL;
;
$as_echo_n "checking whether mutex_lock_nested() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
(exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
-
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_MUTEX_LOCK_NESTED 1
-_ACEOF
-
-
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-
-
-
-fi
-
- rm -Rf build
-
-
-
-
- { $as_echo "$as_me:$LINENO: checking whether symbol div64_64 is exported" >&5
-$as_echo_n "checking whether symbol div64_64 is exported... " >&6; }
- grep -q -E '[[:space:]]div64_64[[:space:]]' \
- $LINUX_OBJ/Module*.symvers 2>/dev/null
- rc=$?
- if test $rc -ne 0; then
- export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(div64_64)" \
- "$LINUX_OBJ/$file" 2>/dev/null
- rc=$?
- if test $rc -eq 0; then
- export=1
- break;
- fi
- done
- if test $export -eq 0; then
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
-
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_64 1
-_ACEOF
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
- fi
- else
{ $as_echo "$as_me:$LINENO: result: yes" >&5
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_64 1
+#define HAVE_MUTEX_LOCK_NESTED 1
_ACEOF
- fi
-
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
- { $as_echo "$as_me:$LINENO: checking whether symbol div64_u64 is exported" >&5
-$as_echo_n "checking whether symbol div64_u64 is exported... " >&6; }
- grep -q -E '[[:space:]]div64_u64[[:space:]]' \
- $LINUX_OBJ/Module*.symvers 2>/dev/null
- rc=$?
- if test $rc -ne 0; then
- export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(div64_u64)" \
- "$LINUX_OBJ/$file" 2>/dev/null
- rc=$?
- if test $rc -eq 0; then
- export=1
- break;
- fi
- done
- if test $export -eq 0; then
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:$LINENO: result: no" >&5
$as_echo "no" >&6; }
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_U64 1
-_ACEOF
- fi
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
+fi
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DIV64_U64 1
-_ACEOF
+ rm -Rf build
- fi
$as_echo_n "checking whether on_each_cpu() wants 3 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
$as_echo_n "checking whether global_page_state() is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- unsigned long state;
+ unsigned long state __attribute__ ((unused));
state = global_page_state(0);
;
$as_echo_n "checking whether page state NR_FREE_PAGES is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_FREE_PAGES;
;
$as_echo_n "checking whether page state NR_INACTIVE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE;
;
$as_echo_n "checking whether page state NR_INACTIVE_ANON is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE_ANON;
;
$as_echo_n "checking whether page state NR_INACTIVE_FILE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_INACTIVE_FILE;
;
$as_echo_n "checking whether page state NR_ACTIVE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE;
;
$as_echo_n "checking whether page state NR_ACTIVE_ANON is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE_ANON;
;
$as_echo_n "checking whether page state NR_ACTIVE_FILE is available... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- enum zone_stat_item zsi;
+ enum zone_stat_item zsi __attribute__ ((unused));
zsi = NR_ACTIVE_FILE;
;
$as_echo_n "checking whether symbol get_zone_counts is needed... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
+ { $as_echo "$as_me:$LINENO: checking whether symbol user_path_at is exported" >&5
+$as_echo_n "checking whether symbol user_path_at is exported... " >&6; }
+ grep -q -E '[[:space:]]user_path_at[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(user_path_at)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_USER_PATH_DIR 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_USER_PATH_DIR 1
+_ACEOF
+
+ fi
+
+
+
{ $as_echo "$as_me:$LINENO: checking whether symbol set_fs_pwd is exported" >&5
$as_echo_n "checking whether symbol set_fs_pwd is exported... " >&6; }
grep -q -E '[[:space:]]set_fs_pwd[[:space:]]' \
{ $as_echo "$as_me:$LINENO: result: no" >&5
$as_echo "no" >&6; }
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SET_FS_PWD 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SET_FS_PWD 1
+_ACEOF
+
+ fi
+
+
+ { $as_echo "$as_me:$LINENO: checking whether set_fs_pwd() wants 2 args" >&5
+$as_echo_n "checking whether set_fs_pwd() wants 2 args... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/sched.h>
+ #include <linux/fs_struct.h>
+
+int
+main (void)
+{
+
+ set_fs_pwd(NULL, NULL);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_2ARGS_SET_FS_PWD 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether vfs_unlink() wants 2 args" >&5
+$as_echo_n "checking whether vfs_unlink() wants 2 args... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/fs.h>
+
+int
+main (void)
+{
+
+ vfs_unlink(NULL, NULL);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_2ARGS_VFS_UNLINK 1
+_ACEOF
+
+
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether vfs_rename() wants 4 args" >&5
+$as_echo_n "checking whether vfs_rename() wants 4 args... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+ #include <linux/fs.h>
+
+int
+main (void)
+{
+
+ vfs_rename(NULL, NULL, NULL, NULL);
+
+ ;
+ return 0;
+}
+
+_ACEOF
+
+
+ rm -Rf build && mkdir -p build
+ echo "obj-m := conftest.o" >build/Makefile
+ if { ac_try='cp conftest.c build && make modules -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $ARCH_UM M=$PWD/build'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } >/dev/null && { ac_try='test -s build/conftest.o'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_SET_FS_PWD 1
+#define HAVE_4ARGS_VFS_RENAME 1
_ACEOF
- fi
- else
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SET_FS_PWD 1
-_ACEOF
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
- fi
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+
+
+fi
+
+ rm -Rf build
- { $as_echo "$as_me:$LINENO: checking whether set_fs_pwd() wants 2 args" >&5
-$as_echo_n "checking whether set_fs_pwd() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+ { $as_echo "$as_me:$LINENO: checking whether struct fs_struct uses spinlock_t" >&5
+$as_echo_n "checking whether struct fs_struct uses spinlock_t... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
main (void)
{
- set_fs_pwd(NULL, NULL);
+ struct fs_struct fs;
+ spin_lock_init(&fs.lock);
;
return 0;
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_2ARGS_SET_FS_PWD 1
+#define HAVE_FS_STRUCT_SPINLOCK 1
_ACEOF
- { $as_echo "$as_me:$LINENO: checking whether vfs_unlink() wants 2 args" >&5
-$as_echo_n "checking whether vfs_unlink() wants 2 args... " >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether struct cred exists" >&5
+$as_echo_n "checking whether struct cred exists... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
/* end confdefs.h. */
- #include <linux/fs.h>
+ #include <linux/cred.h>
int
main (void)
{
- vfs_unlink(NULL, NULL);
+ struct cred *cr __attribute__ ((unused));
+ cr = NULL;
;
return 0;
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_2ARGS_VFS_UNLINK 1
+#define HAVE_CRED_STRUCT 1
_ACEOF
- { $as_echo "$as_me:$LINENO: checking whether vfs_rename() wants 4 args" >&5
-$as_echo_n "checking whether vfs_rename() wants 4 args... " >&6; }
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol groups_search is exported" >&5
+$as_echo_n "checking whether symbol groups_search is exported... " >&6; }
+ grep -q -E '[[:space:]]groups_search[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(groups_search)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GROUPS_SEARCH 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_GROUPS_SEARCH 1
+_ACEOF
+
+ fi
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol __put_task_struct is exported" >&5
+$as_echo_n "checking whether symbol __put_task_struct is exported... " >&6; }
+ grep -q -E '[[:space:]]__put_task_struct[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(__put_task_struct)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_PUT_TASK_STRUCT 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_PUT_TASK_STRUCT 1
+_ACEOF
+
+ fi
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether proc_handler() wants 5 args" >&5
+$as_echo_n "checking whether proc_handler() wants 5 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
/* end confdefs.h. */
- #include <linux/fs.h>
+ #include <linux/sysctl.h>
int
main (void)
{
- vfs_rename(NULL, NULL, NULL, NULL);
+ proc_dostring(NULL, 0, NULL, NULL, NULL);
;
return 0;
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_4ARGS_VFS_RENAME 1
+#define HAVE_5ARGS_PROC_HANDLER 1
_ACEOF
- { $as_echo "$as_me:$LINENO: checking whether struct cred exists" >&5
-$as_echo_n "checking whether struct cred exists... " >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether symbol kvasprintf is exported" >&5
+$as_echo_n "checking whether symbol kvasprintf is exported... " >&6; }
+ grep -q -E '[[:space:]]kvasprintf[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in ; do
+ grep -q -E "EXPORT_SYMBOL.*(kvasprintf)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_KVASPRINTF 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_KVASPRINTF 1
+_ACEOF
+
+ fi
-cat >conftest.c <<_ACEOF
+
+ { $as_echo "$as_me:$LINENO: checking whether file_fsync() wants 3 args" >&5
+$as_echo_n "checking whether file_fsync() wants 3 args... " >&6; }
+
+
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
/* end confdefs.h. */
- #include <linux/cred.h>
+ #include <linux/buffer_head.h>
int
main (void)
{
- struct cred *cr;
- cr = NULL;
+ file_fsync(NULL, NULL, 0);
;
return 0;
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_CRED_STRUCT 1
+#define HAVE_3ARGS_FILE_FSYNC 1
_ACEOF
- { $as_echo "$as_me:$LINENO: checking whether symbol groups_search is exported" >&5
-$as_echo_n "checking whether symbol groups_search is exported... " >&6; }
- grep -q -E '[[:space:]]groups_search[[:space:]]' \
+ { $as_echo "$as_me:$LINENO: checking whether symbol rwsem_is_locked is exported" >&5
+$as_echo_n "checking whether symbol rwsem_is_locked is exported... " >&6; }
+ grep -q -E '[[:space:]]rwsem_is_locked[[:space:]]' \
$LINUX_OBJ/Module*.symvers 2>/dev/null
rc=$?
if test $rc -ne 0; then
export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(groups_search)" \
+ for file in lib/rwsem-spinlock.c; do
+ grep -q -E "EXPORT_SYMBOL.*(rwsem_is_locked)" \
"$LINUX_OBJ/$file" 2>/dev/null
rc=$?
if test $rc -eq 0; then
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_GROUPS_SEARCH 1
+#define RWSEM_IS_LOCKED_TAKES_WAIT_LOCK 1
_ACEOF
fi
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_GROUPS_SEARCH 1
+#define RWSEM_IS_LOCKED_TAKES_WAIT_LOCK 1
_ACEOF
fi
- { $as_echo "$as_me:$LINENO: checking whether symbol __put_task_struct is exported" >&5
-$as_echo_n "checking whether symbol __put_task_struct is exported... " >&6; }
- grep -q -E '[[:space:]]__put_task_struct[[:space:]]' \
+ { $as_echo "$as_me:$LINENO: checking whether symbol invalidate_inodes is exported" >&5
+$as_echo_n "checking whether symbol invalidate_inodes is exported... " >&6; }
+ grep -q -E '[[:space:]]invalidate_inodes[[:space:]]' \
$LINUX_OBJ/Module*.symvers 2>/dev/null
rc=$?
if test $rc -ne 0; then
export=0
for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(__put_task_struct)" \
+ grep -q -E "EXPORT_SYMBOL.*(invalidate_inodes)" \
"$LINUX_OBJ/$file" 2>/dev/null
rc=$?
if test $rc -eq 0; then
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_PUT_TASK_STRUCT 1
+#define HAVE_INVALIDATE_INODES 1
_ACEOF
fi
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_PUT_TASK_STRUCT 1
+#define HAVE_INVALIDATE_INODES 1
_ACEOF
fi
-
- { $as_echo "$as_me:$LINENO: checking whether proc_handler() wants 5 args" >&5
-$as_echo_n "checking whether proc_handler() wants 5 args... " >&6; }
+ { $as_echo "$as_me:$LINENO: checking whether invalidate_inodes() wants 2 args" >&5
+$as_echo_n "checking whether invalidate_inodes() wants 2 args... " >&6; }
-cat >conftest.c <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.c
/* confdefs.h. */
_ACEOF
cat confdefs.h >>conftest.$ac_ext
/* end confdefs.h. */
- #include <linux/sysctl.h>
+ #include <linux/fs.h>
int
main (void)
{
- proc_dostring(NULL, 0, NULL, NULL, NULL);
+ return __invalidate_device(NULL, 0);
;
return 0;
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_5ARGS_PROC_HANDLER 1
+#define HAVE_2ARGS_INVALIDATE_INODES 1
_ACEOF
- { $as_echo "$as_me:$LINENO: checking whether symbol kvasprintf is exported" >&5
-$as_echo_n "checking whether symbol kvasprintf is exported... " >&6; }
- grep -q -E '[[:space:]]kvasprintf[[:space:]]' \
+ { $as_echo "$as_me:$LINENO: checking whether symbol shrink_dcache_memory is exported" >&5
+$as_echo_n "checking whether symbol shrink_dcache_memory is exported... " >&6; }
+ grep -q -E '[[:space:]]shrink_dcache_memory[[:space:]]' \
$LINUX_OBJ/Module*.symvers 2>/dev/null
rc=$?
if test $rc -ne 0; then
export=0
- for file in ; do
- grep -q -E "EXPORT_SYMBOL.*(kvasprintf)" \
+ for file in fs/dcache.c; do
+ grep -q -E "EXPORT_SYMBOL.*(shrink_dcache_memory)" \
"$LINUX_OBJ/$file" 2>/dev/null
rc=$?
if test $rc -eq 0; then
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_KVASPRINTF 1
+#define HAVE_SHRINK_DCACHE_MEMORY 1
_ACEOF
fi
$as_echo "yes" >&6; }
cat >>confdefs.h <<\_ACEOF
-#define HAVE_KVASPRINTF 1
+#define HAVE_SHRINK_DCACHE_MEMORY 1
+_ACEOF
+
+ fi
+
+
+
+ { $as_echo "$as_me:$LINENO: checking whether symbol shrink_icache_memory is exported" >&5
+$as_echo_n "checking whether symbol shrink_icache_memory is exported... " >&6; }
+ grep -q -E '[[:space:]]shrink_icache_memory[[:space:]]' \
+ $LINUX_OBJ/Module*.symvers 2>/dev/null
+ rc=$?
+ if test $rc -ne 0; then
+ export=0
+ for file in fs/inode.c; do
+ grep -q -E "EXPORT_SYMBOL.*(shrink_icache_memory)" \
+ "$LINUX_OBJ/$file" 2>/dev/null
+ rc=$?
+ if test $rc -eq 0; then
+ export=1
+ break;
+ fi
+ done
+ if test $export -eq 0; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+$as_echo "no" >&6; }
+
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_ICACHE_MEMORY 1
+_ACEOF
+
+ fi
+ else
+ { $as_echo "$as_me:$LINENO: result: yes" >&5
+$as_echo "yes" >&6; }
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_SHRINK_ICACHE_MEMORY 1
_ACEOF
fi
- ;;
+
+
+ if test "x$AWK" != xgawk; then
+
+ { { $as_echo "$as_me:$LINENO: error:
+ *** Required util gawk missing. Please install the required
+ *** gawk package for your distribution and try again." >&5
+$as_echo "$as_me: error:
+ *** Required util gawk missing. Please install the required
+ *** gawk package for your distribution and try again." >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+
+
+ ;;
srpm) ;;
*)
{ $as_echo "$as_me:$LINENO: result: Error!" >&5
case $ac_file$ac_mode in
"spl_config.h":H)
(mv spl_config.h spl_config.h.tmp &&
- awk -f config/config.awk spl_config.h.tmp >spl_config.h &&
+ awk -f ${ac_srcdir}/config/config.awk spl_config.h.tmp >spl_config.h &&
rm spl_config.h.tmp) || exit 1 ;;
"depfiles":C) test x"$AMDEP_TRUE" != x"" || {
# Autoconf 2.62 quotes --file arguments for eval, but not when files