Skip to content
  • Theodore Ts'o's avatar
    ext4: Reorder fs/Makefile so that ext2 root fs's are mounted using ext2 · d8ae4601
    Theodore Ts'o authored
    
    
    In fs/Makefile, ext3 was placed before ext2 so that a root filesystem
    that possessed a journal, it would be mounted as ext3 instead of ext2.
    This was necessary because a cleanly unmounted ext3 filesystem was
    fully backwards compatible with ext2, and could be mounted by ext2 ---
    but it was desirable that it be mounted with ext3 so that the
    journaling would be enabled.
    
    The ext4 filesystem supports new incompatible features, so there is no
    danger of an ext4 filesystem being mistaken for an ext2 filesystem.
    At that point, the relative ordering of ext4 with respect to ext2
    didn't matter until ext4 gained the ability to mount filesystems
    without a journal starting in 2.6.29-rc1.  Now that this is the case,
    given that ext4 is before ext2, it means that root filesystems that
    were using the plain-jane ext2 format are getting mounted using the
    ext4 filesystem driver, which is a change in behavior which could be
    surprising to users.
    
    It's doubtful that there are that many ext2-only root filesystem users
    that would also have ext4 compiled into the kernel, but to adhere to
    the principle of least surprise, the correct ordering in fs/Makefile
    is ext3, followed by ext2, and finally ext4.
    
    Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    d8ae4601