Re: md device is read only mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 5 Jul 2012 19:27:48 +0200 Piergiorgio Sartor
<piergiorgio.sartor@xxxxxxxx> wrote:

> Hi all,
> 
> following the comment of Neil about the fact that
> an md device, in r/o mode, will BUG() in case of
> write attempt, I would like to ask for some more
> information on the topic.
> 
> The problem is the following, mounting a filesystem
> in r/o does not, correctly, prevent writes to the
> underlying device.

This is only half the story.
If the mount command requests read-only, the filesystem may still write to
the device.
However if the device is marked read-only then the filesystem should not
write to the disk - if it finds that it needs to, it should fail the
mount request.
I believe that filesystems behave correctly in this manner, though there
could still be bugs lurking.

> 
> Now, assuming a filesystem is mounted r/w over an
> md device, being r/w too, it is pretty clear that
> switching the md device to r/o will create problems.

Not quite.  When the filesystem is mounted, md will refuse to switch the
device to read-only, so that scenario is not possible.

> 
> What if the md device is started in r/o mode and
> than, later, the filesystem is mounted *without*
> specifying r/o mode?

The mount system call will notice that the device is read-only, and will make
assume the read-only mount option.

> 
> The filesystem might try to write to the device,
> but it will not work, of course.
> Does this will cause a BUG() in md?

Only if there are bugs.

> 
> Because using a r/o memory card, there are no
> problems, the mount recognize the device is r/o
> and it sets the filesystems r/o too.
> I do not know if it anyway tries to write to the
> r/o device, ignoring the errors reported.
> 
> I would say that, if md BUG() in any case, it
> could be a bug... :-)
> 
> Any comments?
> 
> Thanks,
> 
> bye,
> 

NeilBrown

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux