This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / ext3 / super.c
index ad0977b..e48747b 100644 (file)
@@ -356,7 +356,7 @@ static int ext3_blkdev_remove(struct ext3_sb_info *sbi)
        bdev = sbi->journal_bdev;
        if (bdev) {
                ret = ext3_blkdev_put(bdev);
-               sbi->journal_bdev = 0;
+               sbi->journal_bdev = NULL;
        }
        return ret;
 }
@@ -587,7 +587,7 @@ enum {
        Opt_abort, Opt_data_journal, Opt_data_ordered, Opt_data_writeback,
        Opt_usrjquota, Opt_grpjquota, Opt_offusrjquota, Opt_offgrpjquota,
        Opt_jqfmt_vfsold, Opt_jqfmt_vfsv0,
-       Opt_ignore, Opt_err,
+       Opt_tagxid, Opt_ignore, Opt_err
 };
 
 static match_table_t tokens = {
@@ -628,6 +628,7 @@ static match_table_t tokens = {
        {Opt_grpjquota, "grpjquota=%s"},
        {Opt_jqfmt_vfsold, "jqfmt=vfsold"},
        {Opt_jqfmt_vfsv0, "jqfmt=vfsv0"},
+       {Opt_tagxid, "tagxid"},
        {Opt_ignore, "grpquota"},
        {Opt_ignore, "noquota"},
        {Opt_ignore, "quota"},
@@ -721,6 +722,11 @@ static int parse_options (char * options, struct super_block *sb,
                case Opt_nouid32:
                        set_opt (sbi->s_mount_opt, NO_UID32);
                        break;
+#ifndef CONFIG_INOXID_NONE
+               case Opt_tagxid:
+                       set_opt (sbi->s_mount_opt, TAG_XID);
+                       break;
+#endif
                case Opt_check:
 #ifdef CONFIG_EXT3_CHECK
                        set_opt (sbi->s_mount_opt, CHECK);
@@ -1201,7 +1207,7 @@ static unsigned long descriptor_loc(struct super_block *sb,
 static int ext3_fill_super (struct super_block *sb, void *data, int silent)
 {
        struct buffer_head * bh;
-       struct ext3_super_block *es = 0;
+       struct ext3_super_block *es = NULL;
        struct ext3_sb_info *sbi;
        unsigned long block;
        unsigned long sb_block = get_sb_block(&data);
@@ -1291,6 +1297,8 @@ static int ext3_fill_super (struct super_block *sb, void *data, int silent)
        if (!parse_options ((char *) data, sb, &journal_inum, 0))
                goto failed_mount;
 
+       if (EXT3_SB(sb)->s_mount_opt & EXT3_MOUNT_TAG_XID)
+               sb->s_flags |= MS_TAGXID;
        sb->s_flags |= MS_ONE_SECOND;
        sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
                ((sbi->s_mount_opt & EXT3_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
@@ -1473,7 +1481,7 @@ static int ext3_fill_super (struct super_block *sb, void *data, int silent)
 #endif
        INIT_LIST_HEAD(&sbi->s_orphan); /* unlinked but open files */
 
-       sb->s_root = 0;
+       sb->s_root = NULL;
 
        needs_recovery = (es->s_last_orphan != 0 ||
                          EXT3_HAS_INCOMPAT_FEATURE(sb,