diff options
author | Badari Pulavarty <pbadari@us.ibm.com> | 2006-08-27 01:23:52 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-08-27 11:01:32 -0700 |
commit | ea817398e68dfa25612229fda7fc74580cf915fb (patch) | |
tree | f511458f277c30b74e26bed69fe9d36dd2fe857c /include/linux/jbd.h | |
parent | 4c4d50f7b39cc58f1064b93a61ad617451ae41df (diff) | |
download | linux-ea817398e68dfa25612229fda7fc74580cf915fb.tar.gz linux-ea817398e68dfa25612229fda7fc74580cf915fb.tar.bz2 linux-ea817398e68dfa25612229fda7fc74580cf915fb.zip |
[PATCH] Manage jbd allocations from its own slabs
JBD currently allocates commit and frozen buffers from slabs. With
CONFIG_SLAB_DEBUG, its possible for an allocation to cross the page
boundary causing IO problems.
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=200127
So, instead of allocating these from regular slabs - manage allocation from
its own slabs and disable slab debug for these slabs.
[akpm@osdl.org: cleanups]
Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/jbd.h')
-rw-r--r-- | include/linux/jbd.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/jbd.h b/include/linux/jbd.h index 20eb34403d0c..a04c154c5207 100644 --- a/include/linux/jbd.h +++ b/include/linux/jbd.h @@ -72,6 +72,9 @@ extern int journal_enable_debug; #endif extern void * __jbd_kmalloc (const char *where, size_t size, gfp_t flags, int retry); +extern void * jbd_slab_alloc(size_t size, gfp_t flags); +extern void jbd_slab_free(void *ptr, size_t size); + #define jbd_kmalloc(size, flags) \ __jbd_kmalloc(__FUNCTION__, (size), (flags), journal_oom_retry) #define jbd_rep_kmalloc(size, flags) \ |