From: Marc Dionne Date: Thu, 22 Feb 2007 21:47:23 +0000 (+0000) Subject: DEVEL15-linux-2621-20070222 X-Git-Tag: openafs-devel-1_5_16~13 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=473e3fcf46327e30b4789d5f9eade5dc45dd8d00;p=packages%2Fo%2Fopenafs.git DEVEL15-linux-2621-20070222 FIXES 54645 configure support for new sysctl api (cherry picked from commit f1a6107e0814d1e3e1d171834c97489479b5e6df) --- diff --git a/acinclude.m4 b/acinclude.m4 index f0a814d25..9d54244cc 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -654,6 +654,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) LINUX_DO_SYNC_READ LINUX_GENERIC_FILE_AIO_READ LINUX_INIT_WORK_HAS_DATA + LINUX_REGISTER_SYSCTL_TABLE_NOFLAG LINUX_EXPORTS_SYS_CHDIR LINUX_EXPORTS_SYS_CLOSE LINUX_EXPORTS_SYS_OPEN @@ -856,6 +857,9 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*) if test "x$ac_cv_linux_fs_struct_fop_has_flock" = "xyes" ; then AC_DEFINE(STRUCT_FILE_OPERATIONS_HAS_FLOCK, 1, [define if your struct file_operations has flock]) fi + if test "x$ac_cv_linux_register_sysctl_table_noflag" = "xyes" ; then + AC_DEFINE(REGISTER_SYSCTL_TABLE_NOFLAG, 1, [define if register_sysctl_table has no insert_at head flag]) + fi if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if tasklist_lock exported]) fi diff --git a/src/afs/LINUX/osi_sysctl.c b/src/afs/LINUX/osi_sysctl.c index 387056329..9abaeeb3a 100644 --- a/src/afs/LINUX/osi_sysctl.c +++ b/src/afs/LINUX/osi_sysctl.c @@ -102,7 +102,11 @@ static ctl_table fs_sysctl_table[] = { int osi_sysctl_init() { +#if defined(REGISTER_SYSCTL_TABLE_NOFLAG) + afs_sysctl = register_sysctl_table(fs_sysctl_table); +#else afs_sysctl = register_sysctl_table(fs_sysctl_table, 0); +#endif if (!afs_sysctl) return -1; diff --git a/src/cf/linux-test4.m4 b/src/cf/linux-test4.m4 index dfa801c61..438d7a229 100644 --- a/src/cf/linux-test4.m4 +++ b/src/cf/linux-test4.m4 @@ -806,3 +806,15 @@ _fop.flock(NULL, 0, NULL);], ac_cv_linux_fs_struct_fop_has_flock=yes, ac_cv_linux_fs_struct_fop_has_flock=no)]) AC_MSG_RESULT($ac_cv_linux_fs_struct_fop_has_flock)]) + +AC_DEFUN([LINUX_REGISTER_SYSCTL_TABLE_NOFLAG], [ + AC_MSG_CHECKING([whether register_sysctl_table has an insert_at_head flag argument]) + AC_CACHE_VAL([ac_cv_linux_register_sysctl_table_noflag], [ + AC_TRY_KBUILD( +[#include ], +[ctl_table *t; +register_sysctl_table (t);], + ac_cv_linux_register_sysctl_table_noflag=yes, + ac_cv_linux_register_sysctl_table_noflag=no)]) + AC_MSG_RESULT($ac_cv_linux_register_sysctl_table_noflag)]) +