]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Documentation: Document the kernel flag bdev_allow_write_mounted
authorGuilherme G. Piccoli <gpiccoli@igalia.com>
Wed, 28 Aug 2024 14:48:58 +0000 (11:48 -0300)
committerJonathan Corbet <corbet@lwn.net>
Thu, 5 Sep 2024 20:18:28 +0000 (14:18 -0600)
Commit ed5cc702d311 ("block: Add config option to not allow writing to mounted
devices") added a Kconfig option along with a kernel command-line tuning to
control writes to mounted block devices, as a means to deal with fuzzers like
Syzkaller, that provokes kernel crashes by directly writing on block devices
bypassing the filesystem (so the FS has no awareness and cannot cope with that).

The patch just missed adding such kernel command-line option to the kernel
documentation, so let's fix that.

Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Darrick J. Wong <djwong@kernel.org>
Cc: Jens Axboe <axboe@kernel.dk>
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Guilherme G. Piccoli <gpiccoli@igalia.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20240828145045.309835-1-gpiccoli@igalia.com
Documentation/admin-guide/kernel-parameters.txt

index 09126bb8cc9ffb140280c56895754a0e2c602f25..efc52ddc6864b71930c01ae1db3aee92597543df 100644 (file)
                        Format: <io>,<irq>,<mode>
                        See header of drivers/net/hamradio/baycom_ser_hdx.c.
 
+       bdev_allow_write_mounted=
+                       Format: <bool>
+                       Control the ability to open a mounted block device
+                       for writing, i.e., allow / disallow writes that bypass
+                       the FS. This was implemented as a means to prevent
+                       fuzzers from crashing the kernel by overwriting the
+                       metadata underneath a mounted FS without its awareness.
+                       This also prevents destructive formatting of mounted
+                       filesystems by naive storage tooling that don't use
+                       O_EXCL. Default is Y and can be changed through the
+                       Kconfig option CONFIG_BLK_DEV_WRITE_MOUNTED.
+
        bert_disable    [ACPI]
                        Disable BERT OS support on buggy BIOSes.