Re: [PATCH] block: Add config option to not allow writing to mounted devices

Christoph Hellwig
2023-06-13T05:10:38Z

> +config BLK_DEV_WRITE_HARDENING
> + bool "Do not allow writing to mounted devices"
> + help
> + When a block device is mounted, writing to its buffer cache very likely
> + going to cause filesystem corruption. It is also rather easy to crash
> + the kernel in this way since the filesystem has no practical way of
> + detecting these writes to buffer cache and verifying its metadata
> + integrity. Select this option to disallow writing to mounted devices.
> + This should be mostly fine but some filesystems (e.g. ext4) rely on
> + the ability of filesystem tools to write to mounted filesystems to
> + set e.g. UUID or run fsck on the root filesystem in some setups.

I'm not sure a config option is really the right thing.

I'd much prefer a BLK_OPEN_ flag to prohibit any other writer.
Except for etN and maybe fat all file systems can set that
unconditionally. And for those file systems that have historically
allowed writes to mounted file systems they can find a local way
to decide on when and when not to set it.