[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240821213048.726082-1-priv.luk@gmail.com>
Date: Wed, 21 Aug 2024 23:30:41 +0200
From: Łukasz Patron <priv.luk@...il.com>
To: priv.luk@...il.com
Cc: Alasdair Kergon <agk@...hat.com>,
Mike Snitzer <snitzer@...nel.org>,
Mikulas Patocka <mpatocka@...hat.com>,
dm-devel@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: [PATCH] dm: Implement set_read_only
This lets us change the read-only flag for device mapper block devices
via the BLKROSET ioctl.
Signed-off-by: Łukasz Patron <priv.luk@...il.com>
---
drivers/md/dm.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 87bb90303435..538a93e596d7 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -410,6 +410,12 @@ static int dm_blk_getgeo(struct block_device *bdev, struct hd_geometry *geo)
return dm_get_geometry(md, geo);
}
+static int dm_blk_set_read_only(struct block_device *bdev, bool ro)
+{
+ set_disk_ro(bdev->bd_disk, ro);
+ return 0;
+}
+
static int dm_prepare_ioctl(struct mapped_device *md, int *srcu_idx,
struct block_device **bdev)
{
@@ -3666,6 +3672,7 @@ static const struct block_device_operations dm_blk_dops = {
.release = dm_blk_close,
.ioctl = dm_blk_ioctl,
.getgeo = dm_blk_getgeo,
+ .set_read_only = dm_blk_set_read_only,
.report_zones = dm_blk_report_zones,
.pr_ops = &dm_pr_ops,
.owner = THIS_MODULE
--
2.46.0
Powered by blists - more mailing lists