patch-2.1.78 linux/fs/coda/super.c

Next file: linux/fs/coda/symlink.c
Previous file: linux/fs/coda/file.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.77/linux/fs/coda/super.c linux/fs/coda/super.c
@@ -41,7 +41,7 @@
 /* VFS super_block ops */
 static struct super_block *coda_read_super(struct super_block *, void *, int);
 static void coda_read_inode(struct inode *);
-static int  coda_notify_change(struct inode *inode, struct iattr *attr);
+static int  coda_notify_change(struct dentry *, struct iattr *);
 static void coda_put_inode(struct inode *);
 static void coda_delete_inode(struct inode *);
 static void coda_put_super(struct super_block *);
@@ -133,6 +133,7 @@
 	printk("coda_read_super: rootinode is %ld dev %d\n", 
 	       root->i_ino, root->i_dev);
 	sbi->sbi_root = root;
+	/* N.B. check this for failure */
 	sb->s_root = d_alloc_root(root, NULL);
 	unlock_super(sb);
 	EXIT;  
@@ -140,7 +141,6 @@
 
 error:
 EXIT;  
-	MOD_DEC_USE_COUNT;
 	if (sbi) {
 		sbi->sbi_vcomm = NULL;
 		sbi->sbi_root = NULL;
@@ -154,6 +154,7 @@
                 coda_cnode_free(ITOC(root));
         }
         sb->s_dev = 0;
+	MOD_DEC_USE_COUNT;
         return NULL;
 }
 
@@ -224,8 +225,9 @@
 	EXIT;
 }
 
-static int  coda_notify_change(struct inode *inode, struct iattr *iattr)
+static int  coda_notify_change(struct dentry *dentry, struct iattr *iattr)
 {
+	struct inode *inode = dentry->d_inode;
         struct cnode *cnp;
         struct coda_vattr vattr;
         int error;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov