summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail..com>2007-06-04 16:14:59 (GMT)
committerSteve French <sfrench@us.ibm.com>2007-06-04 16:14:59 (GMT)
commite6985c7f6842fa040d058640e363140ad1730dc5 (patch)
treef4490bc37a43968b35014dbd40463275b6ead59f /fs
parentf7f7c31c98830e5f4aa5486b8aabb7f3bf4a2512 (diff)
downloadlinux-e6985c7f6842fa040d058640e363140ad1730dc5.tar.xz
[CIFS] fix mempool destroy done in wrong order in cifs error path
Slab cache used as memory pool can not be destroyed before the memory pool destruction. Because the memory pool still holds some objects and kmem_cache_destroy() says "Can't free all objects". Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/cifs/cifsfs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
index d38c69b..7c04752 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@ -825,8 +825,8 @@ cifs_init_mids(void)
sizeof (struct oplock_q_entry), 0,
SLAB_HWCACHE_ALIGN, NULL, NULL);
if (cifs_oplock_cachep == NULL) {
- kmem_cache_destroy(cifs_mid_cachep);
mempool_destroy(cifs_mid_poolp);
+ kmem_cache_destroy(cifs_mid_cachep);
return -ENOMEM;
}