]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/afs/super.c
Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6-omap-h63xx.git] / fs / afs / super.c
index 370cecc910db4b302144495a13311d3a2deb5401..993cdf1cce3a494b40a7df32166813a17756bd4d 100644 (file)
@@ -22,6 +22,7 @@
 #include <linux/pagemap.h>
 #include <linux/parser.h>
 #include <linux/statfs.h>
+#include <linux/sched.h>
 #include "internal.h"
 
 #define AFS_FS_MAGIC 0x6B414653 /* 'kAFS' */
@@ -451,17 +452,18 @@ static void afs_i_init_once(void *_vnode, struct kmem_cache *cachep,
 {
        struct afs_vnode *vnode = _vnode;
 
-       if (flags & SLAB_CTOR_CONSTRUCTOR) {
-               memset(vnode, 0, sizeof(*vnode));
-               inode_init_once(&vnode->vfs_inode);
-               init_waitqueue_head(&vnode->update_waitq);
-               mutex_init(&vnode->permits_lock);
-               mutex_init(&vnode->validate_lock);
-               spin_lock_init(&vnode->writeback_lock);
-               spin_lock_init(&vnode->lock);
-               INIT_LIST_HEAD(&vnode->writebacks);
-               INIT_WORK(&vnode->cb_broken_work, afs_broken_callback_work);
-       }
+       memset(vnode, 0, sizeof(*vnode));
+       inode_init_once(&vnode->vfs_inode);
+       init_waitqueue_head(&vnode->update_waitq);
+       mutex_init(&vnode->permits_lock);
+       mutex_init(&vnode->validate_lock);
+       spin_lock_init(&vnode->writeback_lock);
+       spin_lock_init(&vnode->lock);
+       INIT_LIST_HEAD(&vnode->writebacks);
+       INIT_LIST_HEAD(&vnode->pending_locks);
+       INIT_LIST_HEAD(&vnode->granted_locks);
+       INIT_DELAYED_WORK(&vnode->lock_work, afs_lock_work);
+       INIT_WORK(&vnode->cb_broken_work, afs_broken_callback_work);
 }
 
 /*