GFS2: Move gfs2_rmdiri into ops_inode.c
authorSteven Whitehouse <swhiteho@redhat.com>
Fri, 22 May 2009 09:45:09 +0000 (10:45 +0100)
committerSteven Whitehouse <swhiteho@redhat.com>
Fri, 22 May 2009 09:45:09 +0000 (10:45 +0100)
Move gfs2_rmdiri() into ops_inode.c and make it static.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/inode.c
fs/gfs2/inode.h
fs/gfs2/ops_inode.c

index c03a1a3..9b17447 100644 (file)
@@ -1046,58 +1046,6 @@ fail:
        return ERR_PTR(error);
 }
 
-/**
- * gfs2_rmdiri - Remove a directory
- * @dip: The parent directory of the directory to be removed
- * @name: The name of the directory to be removed
- * @ip: The GFS2 inode of the directory to be removed
- *
- * Assumes Glocks on dip and ip are held
- *
- * Returns: errno
- */
-
-int gfs2_rmdiri(struct gfs2_inode *dip, const struct qstr *name,
-               struct gfs2_inode *ip)
-{
-       struct qstr dotname;
-       int error;
-
-       if (ip->i_entries != 2) {
-               if (gfs2_consist_inode(ip))
-                       gfs2_dinode_print(ip);
-               return -EIO;
-       }
-
-       error = gfs2_dir_del(dip, name);
-       if (error)
-               return error;
-
-       error = gfs2_change_nlink(dip, -1);
-       if (error)
-               return error;
-
-       gfs2_str2qstr(&dotname, ".");
-       error = gfs2_dir_del(ip, &dotname);
-       if (error)
-               return error;
-
-       gfs2_str2qstr(&dotname, "..");
-       error = gfs2_dir_del(ip, &dotname);
-       if (error)
-               return error;
-
-       /* It looks odd, but it really should be done twice */
-       error = gfs2_change_nlink(ip, -1);
-       if (error)
-               return error;
-
-       error = gfs2_change_nlink(ip, -1);
-       if (error)
-               return error;
-
-       return error;
-}
 
 /*
  * gfs2_unlink_ok - check to see that a inode is still in a directory
index 2c3ec07..6cd3928 100644 (file)
@@ -96,8 +96,6 @@ extern struct inode *gfs2_lookupi(struct inode *dir, const struct qstr *name,
 extern struct inode *gfs2_createi(struct gfs2_holder *ghs,
                                  const struct qstr *name,
                                  unsigned int mode, dev_t dev);
-extern int gfs2_rmdiri(struct gfs2_inode *dip, const struct qstr *name,
-                      struct gfs2_inode *ip);
 extern int gfs2_unlink_ok(struct gfs2_inode *dip, const struct qstr *name,
                          const struct gfs2_inode *ip);
 extern int gfs2_permission(struct inode *inode, int mask);
index 1c70fa5..5dacd64 100644 (file)
@@ -472,6 +472,59 @@ static int gfs2_mkdir(struct inode *dir, struct dentry *dentry, int mode)
        return 0;
 }
 
+/**
+ * gfs2_rmdiri - Remove a directory
+ * @dip: The parent directory of the directory to be removed
+ * @name: The name of the directory to be removed
+ * @ip: The GFS2 inode of the directory to be removed
+ *
+ * Assumes Glocks on dip and ip are held
+ *
+ * Returns: errno
+ */
+
+static int gfs2_rmdiri(struct gfs2_inode *dip, const struct qstr *name,
+                      struct gfs2_inode *ip)
+{
+       struct qstr dotname;
+       int error;
+
+       if (ip->i_entries != 2) {
+               if (gfs2_consist_inode(ip))
+                       gfs2_dinode_print(ip);
+               return -EIO;
+       }
+
+       error = gfs2_dir_del(dip, name);
+       if (error)
+               return error;
+
+       error = gfs2_change_nlink(dip, -1);
+       if (error)
+               return error;
+
+       gfs2_str2qstr(&dotname, ".");
+       error = gfs2_dir_del(ip, &dotname);
+       if (error)
+               return error;
+
+       gfs2_str2qstr(&dotname, "..");
+       error = gfs2_dir_del(ip, &dotname);
+       if (error)
+               return error;
+
+       /* It looks odd, but it really should be done twice */
+       error = gfs2_change_nlink(ip, -1);
+       if (error)
+               return error;
+
+       error = gfs2_change_nlink(ip, -1);
+       if (error)
+               return error;
+
+       return error;
+}
+
 /**
  * gfs2_rmdir - Remove a directory
  * @dir: The parent directory of the directory to be removed