RFC: Bug in ext2?

From: Carsten Otte (COTTE@de.ibm.com)
Date: Wed Jan 16 2002 - 08:52:56 EST


Hello kernel-list-readers,

I am currently reviewing the second extended fs. I found the following
code in fs/ext2/super.c (taken from kernel 2.4.17):

static int ext2_setup_super (struct super_block * sb,
                     struct ext2_super_block * es,
                     int read_only)
{
     int res = 0;
     if (le32_to_cpu(es->s_rev_level) > EXT2_MAX_SUPP_REV) {
          printk ("EXT2-fs warning: revision level too high, "
               "forcing read-only mode\n");
          res = MS_RDONLY;
     }
     if (read_only)
          return res;
------------------8<-------------------------------*SNIPP*
     ext2_write_super(sb);
------------------8<-------------------------------*SNIPP*
     return res;
}
To me, it looks like if the fs revision in the super block is higher than
the
supported one while read_only is false, the result is set to MS_RDONLY,
but the super block will be written anyway.
I'd expect that MS_RDONLY should be returned at the beginning of the
funcion & the super block of a fs with an unsupported revision should _not_
be written. Am I getting s.th. wrong?

mit freundlichem Gruß / with kind regards
Carsten Otte

IBM Deutschland Entwicklung GmbH
Linux for eServer development - device driver team
Phone: +49/07031/16-4076
IBM internal phone: *120-4076

--
We are Linux.
Resistance indicates that you're missing the point!

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Jan 23 2002 - 21:00:15 EST