X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=fs%2Fafs%2Fsuper.c;h=4b2558c42213c5e79328fe71ef0b2380f07b8405;hb=1d98fe6717c5786394268da430a4354f6205da54;hp=2e8496ba1205386ed2e5bc959947460688714496;hpb=8aee74c8ee875448cc6d1cf995c9469eb60ae515;p=linux-2.6-omap-h63xx.git diff --git a/fs/afs/super.c b/fs/afs/super.c index 2e8496ba120..4b2558c4221 100644 --- a/fs/afs/super.c +++ b/fs/afs/super.c @@ -27,8 +27,7 @@ #define AFS_FS_MAGIC 0x6B414653 /* 'kAFS' */ -static void afs_i_init_once(void *foo, struct kmem_cache *cachep, - unsigned long flags); +static void afs_i_init_once(struct kmem_cache *cachep, void *foo); static int afs_get_sb(struct file_system_type *fs_type, int flags, const char *dev_name, void *data, struct vfsmount *mnt); @@ -89,8 +88,7 @@ int __init afs_fs_init(void) sizeof(struct afs_vnode), 0, SLAB_HWCACHE_ALIGN, - afs_i_init_once, - NULL); + afs_i_init_once); if (!afs_inode_cachep) { printk(KERN_NOTICE "kAFS: Failed to allocate inode cache\n"); return ret; @@ -447,8 +445,7 @@ static void afs_put_super(struct super_block *sb) /* * initialise an inode cache slab element prior to any use */ -static void afs_i_init_once(void *_vnode, struct kmem_cache *cachep, - unsigned long flags) +static void afs_i_init_once(struct kmem_cache *cachep, void *_vnode) { struct afs_vnode *vnode = _vnode; @@ -460,6 +457,9 @@ static void afs_i_init_once(void *_vnode, struct kmem_cache *cachep, 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); }