Lines 585-590
Link Here
|
585 |
) |
585 |
) |
586 |
|
586 |
|
587 |
LINUX_KERNEL_COMPILE_WORKS |
587 |
LINUX_KERNEL_COMPILE_WORKS |
|
|
588 |
LINUX_KBUILD_USES_EXTRA_CFLAGS |
589 |
LINUX_HAVE_CURRENT_KERNEL_TIME |
590 |
LINUX_KMEM_CACHE_INIT |
588 |
LINUX_HAVE_KMEM_CACHE_T |
591 |
LINUX_HAVE_KMEM_CACHE_T |
589 |
LINUX_KMEM_CACHE_CREATE_TAKES_DTOR |
592 |
LINUX_KMEM_CACHE_CREATE_TAKES_DTOR |
590 |
LINUX_CONFIG_H_EXISTS |
593 |
LINUX_CONFIG_H_EXISTS |
Lines 624-629
Link Here
|
624 |
LINUX_KERNEL_SELINUX |
627 |
LINUX_KERNEL_SELINUX |
625 |
LINUX_KERNEL_SOCK_CREATE |
628 |
LINUX_KERNEL_SOCK_CREATE |
626 |
LINUX_KERNEL_PAGE_FOLLOW_LINK |
629 |
LINUX_KERNEL_PAGE_FOLLOW_LINK |
|
|
630 |
LINUX_KEY_TYPE_H_EXISTS |
627 |
LINUX_NEED_RHCONFIG |
631 |
LINUX_NEED_RHCONFIG |
628 |
LINUX_RECALC_SIGPENDING_ARG_TYPE |
632 |
LINUX_RECALC_SIGPENDING_ARG_TYPE |
629 |
LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_PARENT |
633 |
LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_PARENT |
Lines 651-656
Link Here
|
651 |
LINUX_GENERIC_FILE_AIO_READ |
655 |
LINUX_GENERIC_FILE_AIO_READ |
652 |
LINUX_INIT_WORK_HAS_DATA |
656 |
LINUX_INIT_WORK_HAS_DATA |
653 |
LINUX_REGISTER_SYSCTL_TABLE_NOFLAG |
657 |
LINUX_REGISTER_SYSCTL_TABLE_NOFLAG |
|
|
658 |
LINUX_SYSCTL_TABLE_CHECKING |
654 |
LINUX_EXPORTS_SYS_CHDIR |
659 |
LINUX_EXPORTS_SYS_CHDIR |
655 |
LINUX_EXPORTS_SYS_CLOSE |
660 |
LINUX_EXPORTS_SYS_CLOSE |
656 |
LINUX_EXPORTS_SYS_OPEN |
661 |
LINUX_EXPORTS_SYS_OPEN |
Lines 724-729
Link Here
|
724 |
if test "x$ac_cv_linux_config_h_exists" = "xyes" ; then |
729 |
if test "x$ac_cv_linux_config_h_exists" = "xyes" ; then |
725 |
AC_DEFINE(CONFIG_H_EXISTS, 1, [define if config.h exists]) |
730 |
AC_DEFINE(CONFIG_H_EXISTS, 1, [define if config.h exists]) |
726 |
fi |
731 |
fi |
|
|
732 |
if test "x$ac_cv_linux_key_type_h_exists" = "xyes" ; then |
733 |
AC_DEFINE(KEY_TYPE_H_EXISTS, 1, [define if key-type.h exists]) |
734 |
fi |
727 |
if test "x$ac_cv_linux_defines_for_each_process" = "xyes" ; then |
735 |
if test "x$ac_cv_linux_defines_for_each_process" = "xyes" ; then |
728 |
AC_DEFINE(DEFINED_FOR_EACH_PROCESS, 1, [define if for_each_process defined]) |
736 |
AC_DEFINE(DEFINED_FOR_EACH_PROCESS, 1, [define if for_each_process defined]) |
729 |
fi |
737 |
fi |
Lines 871-881
Link Here
|
871 |
if test "x$ac_cv_linux_register_sysctl_table_noflag" = "xyes" ; then |
879 |
if test "x$ac_cv_linux_register_sysctl_table_noflag" = "xyes" ; then |
872 |
AC_DEFINE(REGISTER_SYSCTL_TABLE_NOFLAG, 1, [define if register_sysctl_table has no insert_at head flag]) |
880 |
AC_DEFINE(REGISTER_SYSCTL_TABLE_NOFLAG, 1, [define if register_sysctl_table has no insert_at head flag]) |
873 |
fi |
881 |
fi |
|
|
882 |
if test "x$ac_cv_linux_sysctl_table_checking" = "xyes" ; then |
883 |
AC_DEFINE(SYSCTL_TABLE_CHECKING, 1, [define if your kernel has sysctl table checking]) |
884 |
fi |
874 |
if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then |
885 |
if test "x$ac_cv_linux_exports_tasklist_lock" = "xyes" ; then |
875 |
AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if tasklist_lock exported]) |
886 |
AC_DEFINE(EXPORTED_TASKLIST_LOCK, 1, [define if tasklist_lock exported]) |
876 |
fi |
887 |
fi |
877 |
if test "x$ac_cv_linux_have_kmem_cache_t" = "xyes" ; then |
888 |
if test "x$ac_cv_linux_have_kmem_cache_t" = "xyes" ; then |
878 |
AC_DEFINE(HAVE_KMEM_CACHE_T, 1, [define if kmem_cache_t exists]) |
889 |
AC_DEFINE(HAVE_KMEM_CACHE_T, 1, [define if kmem_cache_t exists]) |
|
|
890 |
fi |
891 |
if test "x$ac_cv_linux_kmem_cache_init" = "xyes" ; then |
892 |
AC_DEFINE(KMEM_CACHE_INIT, 1, [define for new kmem_cache init function parameters]) |
893 |
fi |
894 |
if test "x$ac_cv_linux_have_current_kernel_time" = "xyes" ; then |
895 |
AC_DEFINE(HAVE_CURRENT_KERNEL_TIME, 1, [define if current_kernel_time() exists]) |
879 |
fi |
896 |
fi |
880 |
if test "x$ac_cv_linux_have_kmem_cache_t" = "xyes" ; then |
897 |
if test "x$ac_cv_linux_have_kmem_cache_t" = "xyes" ; then |
881 |
AC_DEFINE(KMEM_CACHE_TAKES_DTOR, 1, [define if kmem_cache_create takes a destructor argument]) |
898 |
AC_DEFINE(KMEM_CACHE_TAKES_DTOR, 1, [define if kmem_cache_create takes a destructor argument]) |
Lines 76-82
Link Here
|
76 |
|
76 |
|
77 |
#define afs_hz HZ |
77 |
#define afs_hz HZ |
78 |
#include "h/sched.h" |
78 |
#include "h/sched.h" |
|
|
79 |
#if defined(HAVE_CURRENT_KERNEL_TIME) |
80 |
static inline time_t osi_Time(void) { |
81 |
struct timespec xtime; |
82 |
xtime = current_kernel_time(); |
83 |
return xtime.tv_sec; |
84 |
} |
85 |
#else |
79 |
#define osi_Time() (xtime.tv_sec) |
86 |
#define osi_Time() (xtime.tv_sec) |
|
|
87 |
#endif |
88 |
|
89 |
|
90 |
|
80 |
#ifdef AFS_LINUX_64BIT_KERNEL |
91 |
#ifdef AFS_LINUX_64BIT_KERNEL |
81 |
#define osi_GetTime(V) \ |
92 |
#define osi_GetTime(V) \ |
82 |
do { \ |
93 |
do { \ |
Lines 1-7
Link Here
|
1 |
/* |
1 |
/* |
2 |
* osi_sysctl.c: Linux sysctl interface to OpenAFS |
2 |
* osi_sysctl.c: Linux sysctl interface to OpenAFS |
3 |
* |
3 |
* |
4 |
* $Id: osi_sysctl.c,v 1.7.2.5 2007/06/12 18:28:49 shadow Exp $ |
4 |
* $Id: osi_sysctl.c,v 1.7.2.6 2007/11/23 13:45:04 shadow Exp $ |
5 |
* |
5 |
* |
6 |
* Written Jan 30, 2002 by Kris Van Hees (Sine Nomine Associates) |
6 |
* Written Jan 30, 2002 by Kris Van Hees (Sine Nomine Associates) |
7 |
*/ |
7 |
*/ |
Lines 28-34
Link Here
|
28 |
|
28 |
|
29 |
static ctl_table afs_sysctl_table[] = { |
29 |
static ctl_table afs_sysctl_table[] = { |
30 |
{ |
30 |
{ |
|
|
31 |
#if defined(SYSCTL_TABLE_CHECKING) |
32 |
.ctl_name = CTL_UNNUMBERED, |
33 |
#else |
31 |
.ctl_name = 1, |
34 |
.ctl_name = 1, |
|
|
35 |
#endif |
32 |
.procname = "hm_retry_RO", |
36 |
.procname = "hm_retry_RO", |
33 |
.data = &hm_retry_RO, |
37 |
.data = &hm_retry_RO, |
34 |
.maxlen = sizeof(afs_int32), |
38 |
.maxlen = sizeof(afs_int32), |
Lines 36-42
Link Here
|
36 |
.proc_handler = &proc_dointvec |
40 |
.proc_handler = &proc_dointvec |
37 |
}, |
41 |
}, |
38 |
{ |
42 |
{ |
|
|
43 |
#if defined(SYSCTL_TABLE_CHECKING) |
44 |
.ctl_name = CTL_UNNUMBERED, |
45 |
#else |
39 |
.ctl_name = 2, |
46 |
.ctl_name = 2, |
|
|
47 |
#endif |
40 |
.procname = "hm_retry_RW", |
48 |
.procname = "hm_retry_RW", |
41 |
.data = &hm_retry_RW, |
49 |
.data = &hm_retry_RW, |
42 |
.maxlen = sizeof(afs_int32), |
50 |
.maxlen = sizeof(afs_int32), |
Lines 44-50
Link Here
|
44 |
.proc_handler = &proc_dointvec |
52 |
.proc_handler = &proc_dointvec |
45 |
}, |
53 |
}, |
46 |
{ |
54 |
{ |
|
|
55 |
#if defined(SYSCTL_TABLE_CHECKING) |
56 |
.ctl_name = CTL_UNNUMBERED, |
57 |
#else |
47 |
.ctl_name = 3, |
58 |
.ctl_name = 3, |
|
|
59 |
#endif |
48 |
.procname = "hm_retry_int", |
60 |
.procname = "hm_retry_int", |
49 |
.data = &hm_retry_int, |
61 |
.data = &hm_retry_int, |
50 |
.maxlen = sizeof(afs_int32), |
62 |
.maxlen = sizeof(afs_int32), |
Lines 52-58
Link Here
|
52 |
.proc_handler = &proc_dointvec |
64 |
.proc_handler = &proc_dointvec |
53 |
}, |
65 |
}, |
54 |
{ |
66 |
{ |
|
|
67 |
#if defined(SYSCTL_TABLE_CHECKING) |
68 |
.ctl_name = CTL_UNNUMBERED, |
69 |
#else |
55 |
.ctl_name = 4, |
70 |
.ctl_name = 4, |
|
|
71 |
#endif |
56 |
.procname = "GCPAGs", |
72 |
.procname = "GCPAGs", |
57 |
.data = &afs_gcpags, |
73 |
.data = &afs_gcpags, |
58 |
.maxlen = sizeof(afs_int32), |
74 |
.maxlen = sizeof(afs_int32), |
Lines 60-66
Link Here
|
60 |
.proc_handler = &proc_dointvec |
76 |
.proc_handler = &proc_dointvec |
61 |
}, |
77 |
}, |
62 |
{ |
78 |
{ |
|
|
79 |
#if defined(SYSCTL_TABLE_CHECKING) |
80 |
.ctl_name = CTL_UNNUMBERED, |
81 |
#else |
63 |
.ctl_name = 5, |
82 |
.ctl_name = 5, |
|
|
83 |
#endif |
64 |
.procname = "rx_deadtime", |
84 |
.procname = "rx_deadtime", |
65 |
.data = &afs_rx_deadtime, |
85 |
.data = &afs_rx_deadtime, |
66 |
.maxlen = sizeof(afs_int32), |
86 |
.maxlen = sizeof(afs_int32), |
Lines 68-74
Link Here
|
68 |
.proc_handler = &proc_dointvec |
88 |
.proc_handler = &proc_dointvec |
69 |
}, |
89 |
}, |
70 |
{ |
90 |
{ |
|
|
91 |
#if defined(SYSCTL_TABLE_CHECKING) |
92 |
.ctl_name = CTL_UNNUMBERED, |
93 |
#else |
71 |
.ctl_name = 6, |
94 |
.ctl_name = 6, |
|
|
95 |
#endif |
72 |
.procname = "bkVolPref", |
96 |
.procname = "bkVolPref", |
73 |
.data = &afs_bkvolpref, |
97 |
.data = &afs_bkvolpref, |
74 |
.maxlen = sizeof(afs_int32), |
98 |
.maxlen = sizeof(afs_int32), |
Lines 80-86
Link Here
|
80 |
|
104 |
|
81 |
static ctl_table fs_sysctl_table[] = { |
105 |
static ctl_table fs_sysctl_table[] = { |
82 |
{ |
106 |
{ |
|
|
107 |
#if defined(SYSCTL_TABLE_CHECKING) |
108 |
.ctl_name = CTL_UNNUMBERED, |
109 |
#else |
83 |
.ctl_name = 1, |
110 |
.ctl_name = 1, |
|
|
111 |
#endif |
84 |
.procname = "afs", |
112 |
.procname = "afs", |
85 |
.mode = 0555, |
113 |
.mode = 0555, |
86 |
.child = afs_sysctl_table |
114 |
.child = afs_sysctl_table |
Lines 16-22
Link Here
|
16 |
#include "afs/param.h" |
16 |
#include "afs/param.h" |
17 |
|
17 |
|
18 |
RCSID |
18 |
RCSID |
19 |
("$Header: /cvs/openafs/src/afs/LINUX/osi_vfsops.c,v 1.29.2.27 2007/11/07 04:12:57 shadow Exp $"); |
19 |
("$Header: /cvs/openafs/src/afs/LINUX/osi_vfsops.c,v 1.29.2.28 2007/11/23 13:45:04 shadow Exp $"); |
20 |
|
20 |
|
21 |
#define __NO_VERSION__ /* don't define kernel_version in module.h */ |
21 |
#define __NO_VERSION__ /* don't define kernel_version in module.h */ |
22 |
#include <linux/module.h> /* early to avoid printf->printk mapping */ |
22 |
#include <linux/module.h> /* early to avoid printf->printk mapping */ |
Lines 295-301
Link Here
|
295 |
#if defined(HAVE_KMEM_CACHE_T) |
295 |
#if defined(HAVE_KMEM_CACHE_T) |
296 |
init_once(void * foo, kmem_cache_t * cachep, unsigned long flags) |
296 |
init_once(void * foo, kmem_cache_t * cachep, unsigned long flags) |
297 |
#else |
297 |
#else |
|
|
298 |
#if defined(KMEM_CACHE_INIT) |
299 |
init_once(struct kmem_cache * cachep, void * foo) |
300 |
#else |
298 |
init_once(void * foo, struct kmem_cache * cachep, unsigned long flags) |
301 |
init_once(void * foo, struct kmem_cache * cachep, unsigned long flags) |
|
|
302 |
#endif |
299 |
#endif |
303 |
#endif |
300 |
{ |
304 |
{ |
301 |
struct vcache *vcp = (struct vcache *) foo; |
305 |
struct vcache *vcp = (struct vcache *) foo; |
Lines 75-80
Link Here
|
75 |
#if defined(LINUX_KEYRING_SUPPORT) |
75 |
#if defined(LINUX_KEYRING_SUPPORT) |
76 |
#include <linux/rwsem.h> |
76 |
#include <linux/rwsem.h> |
77 |
#include <linux/key.h> |
77 |
#include <linux/key.h> |
|
|
78 |
#if defined(KEY_TYPE_H_EXISTS) |
79 |
#include <linux/key-type.h> |
80 |
#endif |
78 |
#ifndef KEY_ALLOC_IN_QUOTA |
81 |
#ifndef KEY_ALLOC_IN_QUOTA |
79 |
#define KEY_ALLOC_IN_QUOTA 1 |
82 |
#define KEY_ALLOC_IN_QUOTA 1 |
80 |
#endif |
83 |
#endif |
Lines 2-10
Link Here
|
2 |
# [ACTION-IF-SUCCESS], [ACTION-IF-FAILURE]) |
2 |
# [ACTION-IF-SUCCESS], [ACTION-IF-FAILURE]) |
3 |
# |
3 |
# |
4 |
AC_DEFUN([AC_TRY_KBUILD26],[ rm -fr conftest.dir |
4 |
AC_DEFUN([AC_TRY_KBUILD26],[ rm -fr conftest.dir |
|
|
5 |
if test "x$ac_linux_kbuild_requires_extra_cflags" = "xyes" ; then |
6 |
CFLAGS_PREFIX='EXTRA_' |
7 |
fi |
5 |
if mkdir conftest.dir && |
8 |
if mkdir conftest.dir && |
6 |
cat >conftest.dir/Makefile <<_ACEOF && |
9 |
cat >conftest.dir/Makefile <<_ACEOF && |
7 |
CFLAGS += $CPPFLAGS |
10 |
${CFLAGS_PREFIX}CFLAGS += $CPPFLAGS |
8 |
|
11 |
|
9 |
obj-m += conftest.o |
12 |
obj-m += conftest.o |
10 |
_ACEOF |
13 |
_ACEOF |
Lines 65-67
Link Here
|
65 |
[],:,AC_MSG_RESULT(no) |
68 |
[],:,AC_MSG_RESULT(no) |
66 |
AC_MSG_FAILURE([Fix problem or use --disable-kernel-module...])) |
69 |
AC_MSG_FAILURE([Fix problem or use --disable-kernel-module...])) |
67 |
AC_MSG_RESULT(yes)]) |
70 |
AC_MSG_RESULT(yes)]) |
|
|
71 |
|
72 |
AC_DEFUN([LINUX_KBUILD_USES_EXTRA_CFLAGS], [ |
73 |
AC_MSG_CHECKING([if linux kbuild requires EXTRA_CFLAGS]) |
74 |
save_CPPFLAGS="$CPPFLAGS" |
75 |
CPPFLAGS=-Wall |
76 |
AC_TRY_KBUILD( |
77 |
[#include <linux/sched.h> |
78 |
#include <linux/fs.h>], |
79 |
[], |
80 |
ac_linux_kbuild_requires_extra_cflags=no, |
81 |
ac_linux_kbuild_requires_extra_cflags=yes) |
82 |
CPPFLAGS="$save_CPPFLAGS" |
83 |
AC_MSG_RESULT($ac_linux_kbuild_requires_extra_cflags)]) |
Lines 906-908
Link Here
|
906 |
ac_cv_linux_fs_struct_fop_has_splice=no)]) |
906 |
ac_cv_linux_fs_struct_fop_has_splice=no)]) |
907 |
AC_MSG_RESULT($ac_cv_linux_fs_struct_fop_has_splice)]) |
907 |
AC_MSG_RESULT($ac_cv_linux_fs_struct_fop_has_splice)]) |
908 |
|
908 |
|
|
|
909 |
AC_DEFUN([LINUX_KEY_TYPE_H_EXISTS], [ |
910 |
AC_MSG_CHECKING([whether linux/key-type.h exists]) |
911 |
AC_CACHE_VAL([ac_cv_linux_key_type_h_exists], [ |
912 |
AC_TRY_KBUILD( |
913 |
[#include <linux/key-type.h>], |
914 |
[return;], |
915 |
ac_cv_linux_key_type_h_exists=yes, |
916 |
ac_cv_linux_key_type_h_exists=no)]) |
917 |
AC_MSG_RESULT($ac_cv_linux_key_type_h_exists)]) |
918 |
|
919 |
AC_DEFUN([LINUX_HAVE_CURRENT_KERNEL_TIME], [ |
920 |
AC_MSG_CHECKING([for current_kernel_time()]) |
921 |
AC_CACHE_VAL([ac_cv_linux_have_current_kernel_time], [ |
922 |
AC_TRY_KBUILD( |
923 |
[#include <linux/time.h>], |
924 |
[struct timespec s = current_kernel_time();], |
925 |
ac_cv_linux_have_current_kernel_time=yes, |
926 |
ac_cv_linux_have_current_kernel_time=no)]) |
927 |
AC_MSG_RESULT($ac_cv_linux_have_current_kernel_time)]) |
928 |
|
929 |
AC_DEFUN([LINUX_KMEM_CACHE_INIT], [ |
930 |
AC_MSG_CHECKING([for new kmem_cache init function parameters]) |
931 |
AC_CACHE_VAL([ac_cv_linux_kmem_cache_init], [ |
932 |
AC_TRY_KBUILD( |
933 |
[#include <linux/slab.h>], |
934 |
[extern struct kmem_cache *kmem_cache_create(const char *, size_t, size_t, |
935 |
unsigned long, |
936 |
void (*)(struct kmem_cache *, void *)); |
937 |
return;], |
938 |
ac_cv_linux_kmem_cache_init=yes, |
939 |
ac_cv_linux_kmem_cache_init=no)]) |
940 |
AC_MSG_RESULT($ac_cv_linux_kmem_cache_init)]) |
941 |
|
942 |
AC_DEFUN([LINUX_SYSCTL_TABLE_CHECKING], [ |
943 |
AC_MSG_CHECKING([for sysctl table checking]) |
944 |
AC_CACHE_VAL([ac_cv_linux_sysctl_table_checking], [ |
945 |
AC_TRY_KBUILD( |
946 |
[#include <linux/sysctl.h>], |
947 |
[extern int sysctl_check_table(struct ctl_table *t); |
948 |
sysctl_check_table(NULL);], |
949 |
ac_cv_linux_sysctl_table_checking=yes, |
950 |
ac_cv_linux_sysctl_table_checking=no)]) |
951 |
AC_MSG_RESULT($ac_cv_linux_sysctl_table_checking)]) |
952 |
|