From c433f3d8eeb81d5c5091d104e53bf48a6d25e747 Mon Sep 17 00:00:00 2001 From: "matt@linuxbox.com" Date: Mon, 17 May 2010 21:28:56 -0400 Subject: [PATCH] linux PageCheck may be PageFsMisc Define the PageCheck family of functions using PageFsMisc equivalents if those are found. I encountered a need for this on Centos 5.5 (2.6.18-8.el5xen), but it may be more general. Change-Id: I365a769614fd7514e0c0223bf1854cce09f759f7 Reviewed-on: http://gerrit.openafs.org/1982 Reviewed-by: Simon Wilkinson Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- acinclude.m4 | 10 ++++++++++ src/afs/LINUX/osi_compat.h | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/acinclude.m4 b/acinclude.m4 index fbafce1..2ba05df 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -810,6 +810,16 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) AC_CHECK_LINUX_FUNC([bdi_init], [#include ], [bdi_init(NULL);]) + AC_CHECK_LINUX_FUNC([PageChecked], + [#include +#include ], + [struct page *_page; + int bchecked = PageChecked(_page);]) + AC_CHECK_LINUX_FUNC([PageFsMisc], + [#include +#include ], + [struct page *_page; + int bchecked = PageFsMisc(_page);]) AC_CHECK_LINUX_FUNC([ctl_table], [ctl_name], [sysctl.h]) AC_CHECK_LINUX_FUNC([current_kernel_time], [#include ], diff --git a/src/afs/LINUX/osi_compat.h b/src/afs/LINUX/osi_compat.h index fbeb7e2..c9a2878 100644 --- a/src/afs/LINUX/osi_compat.h +++ b/src/afs/LINUX/osi_compat.h @@ -292,3 +292,13 @@ afs_try_to_freeze(void) { } #endif +#if !defined(HAVE_LINUX_PAGECHECKED) +# if defined(HAVE_LINUX_PAGEFSMISC) +# include + +# define PageChecked(p) PageFsMisc((p)) +# define SetPageChecked(p) SetPageFsMisc((p)) +# define ClearPageChecked(p) ClearPageFsMisc((p)) + +# endif +#endif -- 1.9.4