LINUX: Replace dcache.h for fs.h in config tests

When detecting if we have certain Linux kernel features, we only
include dcache.h. On some kernel versions (at least 2.4.27),
compilation fails if we include dcache.h directly (due to e.g.
list_head not being defined), which causes false negatives in tests
such as the test for dcache_lock. If we instead include fs.h, which
includes dcache.h, the tests succeed when they should succeed. So, use
fs.h instead of dcache.h.

Reviewed-on: http://gerrit.openafs.org/3989
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 839b62ab414fde02e1a2093bc036c63c708d861d)

Change-Id: Ia8ea701c81bad9dc293ecb2848bd971052743c81
Reviewed-on: http://gerrit.openafs.org/4025
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
This commit is contained in:
Andrew Deason 2011-02-18 15:49:03 -06:00 committed by Derrick Brashear
parent 4d49ff6add
commit 5aebd8d541
2 changed files with 4 additions and 4 deletions

View File

@ -813,7 +813,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
[struct timespec s;
s = current_kernel_time();])
AC_CHECK_LINUX_FUNC([d_alloc_anon],
[#include <linux/dcache.h>],
[#include <linux/fs.h>],
[d_alloc_anon(NULL);])
AC_CHECK_LINUX_FUNC([do_sync_read],
[#include <linux/fs.h>],

View File

@ -492,7 +492,7 @@ AC_DEFUN([LINUX_EXPORTS_PROC_ROOT_FS], [
AC_DEFUN([LINUX_D_PATH_TAKES_STRUCT_PATH], [
AC_CHECK_LINUX_BUILD([if d_path() takes a struct path argument],
[ac_cv_linux_d_path_takes_struct_path],
[#include <linux/dcache.h>],
[#include <linux/fs.h>],
[struct path *p; d_path(p, NULL, 0);],
[D_PATH_TAKES_STRUCT_PATH],
[define if d_path() takes a struct path argument],
@ -585,7 +585,7 @@ AC_DEFUN([LINUX_HAVE_TRY_TO_FREEZE], [
AC_DEFUN([LINUX_HAVE_DCACHE_LOCK], [
AC_CHECK_LINUX_BUILD([for dcache_lock],
[ac_cv_linux_have_dcache_lock],
[#include <linux/dcache.h> ],
[#include <linux/fs.h> ],
[printk("%p", &dcache_lock);],
[HAVE_DCACHE_LOCK],
[define if dcache_lock exists],
@ -596,7 +596,7 @@ AC_DEFUN([LINUX_HAVE_DCACHE_LOCK], [
AC_DEFUN([LINUX_D_COUNT_IS_INT], [
AC_CHECK_LINUX_BUILD([if dentry->d_count is an int],
[ac_cv_linux_d_count_int],
[#include <linux/dcache.h> ],
[#include <linux/fs.h> ],
[struct dentry _d;
dget(&_d);
_d.d_count = 1;],