]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
mkfs.minix: use inode wrappers
authorDavidlohr Bueso <dave@gnu.org>
Thu, 2 Jun 2011 23:08:46 +0000 (19:08 -0400)
committerKarel Zak <kzak@redhat.com>
Wed, 8 Jun 2011 11:38:50 +0000 (13:38 +0200)
Use a common function for creating the root and bad inode, without worring
about the fs version.

Signed-off-by: Davidlohr Bueso <dave@gnu.org>
disk-utils/mkfs.minix.c

index 3de1d66a0490c253d6464b17a29d69c3262ddfcf..d2d800f355fddfc3f94f3368ce13f890819bfa25 100644 (file)
@@ -217,7 +217,7 @@ static inline int next(int zone) {
        return 0;
 }
 
-static void make_bad_inode(void) {
+static void make_bad_inode_v1(void) {
        struct minix_inode * inode = &Inode[MINIX_BAD_INO];
        int i,j,zone;
        int ind=0,dind=0;
@@ -266,7 +266,7 @@ end_bad:
                write_block(dind, (char *) dind_block);
 }
 
-static void make_bad_inode2 (void) {
+static void make_bad_inode_v2 (void) {
        struct minix2_inode *inode = &Inode2[MINIX_BAD_INO];
        int i, j, zone;
        int ind = 0, dind = 0;
@@ -314,7 +314,14 @@ static void make_bad_inode2 (void) {
                write_block (dind, (char *) dind_block);
 }
 
-static void make_root_inode(void) {
+static void make_bad_inode(void)
+{
+       if (fs_version < 2)
+               return make_bad_inode_v1();
+       return make_bad_inode_v2();
+}
+
+static void make_root_inode_v1(void) {
        struct minix_inode * inode = &Inode[MINIX_ROOT_INO];
 
        mark_inode(MINIX_ROOT_INO);
@@ -335,7 +342,7 @@ static void make_root_inode(void) {
        write_block(inode->i_zone[0],root_block);
 }
 
-static void make_root_inode2 (void) {
+static void make_root_inode_v2 (void) {
        struct minix2_inode *inode = &Inode2[MINIX_ROOT_INO];
 
        mark_inode (MINIX_ROOT_INO);
@@ -356,6 +363,13 @@ static void make_root_inode2 (void) {
        write_block (inode->i_zone[0], root_block);
 }
 
+static void make_root_inode(void)
+{
+       if (fs_version < 2)
+               return make_root_inode_v1();
+       return make_root_inode_v2();
+}
+
 static void setup_tables(void) {
        int i;
        unsigned long inodes, zmaps, imaps, zones;
@@ -651,13 +665,9 @@ int main(int argc, char ** argv) {
                check_blocks();
        else if (listfile)
                get_list_blocks(listfile);
-       if (fs_version == 2) {
-               make_root_inode2 ();
-               make_bad_inode2 ();
-       } else {
-               make_root_inode();
-               make_bad_inode();
-       }
+
+       make_root_inode();
+       make_bad_inode();
 
        mark_good_blocks();
        write_tables();