Skip to content
Snippets Groups Projects
Commit 7d0b3da4 authored by Alexey Lyashkov's avatar Alexey Lyashkov
Browse files

fix building problem with 2.6.22 kernel.

b=14255
i=adilger
parent 5ffa9654
No related branches found
No related tags found
No related merge requests found
...@@ -1140,7 +1140,7 @@ EXTRA_KCFLAGS="-Werror" ...@@ -1140,7 +1140,7 @@ EXTRA_KCFLAGS="-Werror"
LB_LINUX_TRY_COMPILE([ LB_LINUX_TRY_COMPILE([
#include <linux/slab.h> #include <linux/slab.h>
],[ ],[
struct kmem_cache_s *cachep = NULL; kmem_cache_t *cachep = NULL;
kmem_cache_free(cachep, NULL); kmem_cache_free(cachep, NULL);
...@@ -1153,6 +1153,22 @@ LB_LINUX_TRY_COMPILE([ ...@@ -1153,6 +1153,22 @@ LB_LINUX_TRY_COMPILE([
]) ])
EXTRA_KCFLAGS="$tmp_flags" EXTRA_KCFLAGS="$tmp_flags"
]) ])
# 2.6.23 lost dtor argument
AC_DEFUN([LN_KMEM_CACHE_CREATE_DTOR],
[AC_MSG_CHECKING([check kmem_cache_create has dtor argument])
LB_LINUX_TRY_COMPILE([
#include <linux/slab.h>
],[
struct kmem_cache_s *cachep = NULL;
kmem_cache_create(NULL, 0, 0, 0, NULL, NULL);
],[
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_KMEM_CACHE_CREATE_DTOR, 1,
[kmem_cache_create has dtor argument])
],[
AC_MSG_RESULT(NO)
])
])
# #
# LN_PROG_LINUX # LN_PROG_LINUX
...@@ -1191,6 +1207,8 @@ LN_3ARGS_INIT_WORK ...@@ -1191,6 +1207,8 @@ LN_3ARGS_INIT_WORK
# 2.6.21 # 2.6.21
LN_2ARGS_REGISTER_SYSCTL LN_2ARGS_REGISTER_SYSCTL
LN_KMEM_CACHE_S LN_KMEM_CACHE_S
# 2.6.23
LN_KMEM_CACHE_CREATE_DTOR
]) ])
# #
......
...@@ -39,6 +39,8 @@ ...@@ -39,6 +39,8 @@
#include <linux/proc_fs.h> #include <linux/proc_fs.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/timer.h> #include <linux/timer.h>
#include <linux/signal.h>
#include <linux/sched.h>
#include <linux/miscdevice.h> #include <linux/miscdevice.h>
#include <libcfs/linux/portals_compat25.h> #include <libcfs/linux/portals_compat25.h>
......
...@@ -103,7 +103,11 @@ cfs_mem_cache_t * ...@@ -103,7 +103,11 @@ cfs_mem_cache_t *
cfs_mem_cache_create (const char *name, size_t size, size_t offset, cfs_mem_cache_create (const char *name, size_t size, size_t offset,
unsigned long flags) unsigned long flags)
{ {
#ifdef HAVE_KMEM_CACHE_CREATE_DTOR
return kmem_cache_create(name, size, offset, flags, NULL, NULL); return kmem_cache_create(name, size, offset, flags, NULL, NULL);
#else
return kmem_cache_create(name, size, offset, flags, NULL);
#endif
} }
int int
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment