On 2015-12-02 11:54, Eric Sandeen wrote:
On 12/2/15 3:23 AM, Qu Wenruo wrote:


Qu Wenruo wrote on 2015/12/02 17:06 +0800:


Russell Coker wrote on 2015/12/02 17:25 +1100:
On Wed, 2 Dec 2015 06:05:09 AM Eric Sandeen wrote:
yes, xfs does; we have "-o norecovery" if you don't want that, or need
to mount a filesystem with a dirty log on a readonly device.

That option also works with Ext3/4 so it seems to be a standard way of
dealing
with this.  I think that BTRFS should do what Ext3/4 and XFS do in this
regard.

BTW, does -o norecovery implies -o ro?

If not, how does it keep the filesystem consistent?

I'd like to follow that ext2/xfs behavior, but I'm not familiar with
those filesystems.

Thanks,
Qu


OK, norecovery implies ro.

For XFS, it doesn't imply it, it requires it; i.e. both must be stated 
explicitly:

         /*
          * no recovery flag requires a read-only mount
          */
         if ((mp->m_flags & XFS_MOUNT_NORECOVERY) &&
             !(mp->m_flags & XFS_MOUNT_RDONLY)) {
                 xfs_warn(mp, "no-recovery mounts must be read-only.");
                 return -EINVAL;
         }

ext4 is the same, I believe:

         } else if (test_opt(sb, NOLOAD) && !(sb->s_flags & MS_RDONLY) &&
                    ext4_has_feature_journal_needs_recovery(sb)) {
                 ext4_msg(sb, KERN_ERR, "required journal recovery "
                        "suppressed and not mounted read-only");
                 goto failed_mount_wq;

so if you'd like btrfs to be consistent with these, I would not make
norecovery imply ro; rather, make I would make it require an explicit ro, i.e.

mount -o ro,norecovery
Agreed, with something like that, it should as blatantly obvious as possible that you can't write to the FS.

On a side note, do either XFS or ext4 support removing the norecovery option from the mount flags through mount -o remount? Even if they don't, that might be a nice feature to have in BTRFS if we can safely support it.


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to