summaryrefslogtreecommitdiffstats
path: root/drivers/md/dm-switch.c
diff options
context:
space:
mode:
authorMike Snitzer <snitzer@redhat.com>2018-04-03 22:54:10 +0200
committerMike Snitzer <snitzer@redhat.com>2018-04-04 18:12:39 +0200
commit5bd5e8d891c1fd2d966a7e2c26f0452d22410683 (patch)
treea26fa9657db6b9f2faa6805693db282f7bfa052c /drivers/md/dm-switch.c
parentdm: hold DM table for duration of ioctl rather than use blkdev_get (diff)
downloadlinux-5bd5e8d891c1fd2d966a7e2c26f0452d22410683.tar.xz
linux-5bd5e8d891c1fd2d966a7e2c26f0452d22410683.zip
dm: remove fmode_t argument from .prepare_ioctl hook
Use the fmode_t that is passed to dm_blk_ioctl() rather than inconsistently (varies across targets) drop it on the floor by overriding it with the fmode_t stored in 'struct dm_dev'. All the persistent reservation functions weren't using the fmode_t they got back from .prepare_ioctl so remove them. Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md/dm-switch.c')
-rw-r--r--drivers/md/dm-switch.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/md/dm-switch.c b/drivers/md/dm-switch.c
index 8f9208c2d2e3..7924a6a33ddc 100644
--- a/drivers/md/dm-switch.c
+++ b/drivers/md/dm-switch.c
@@ -512,8 +512,7 @@ static void switch_status(struct dm_target *ti, status_type_t type,
*
* Passthrough all ioctls to the path for sector 0
*/
-static int switch_prepare_ioctl(struct dm_target *ti,
- struct block_device **bdev, fmode_t *mode)
+static int switch_prepare_ioctl(struct dm_target *ti, struct block_device **bdev)
{
struct switch_ctx *sctx = ti->private;
unsigned path_nr;
@@ -521,7 +520,6 @@ static int switch_prepare_ioctl(struct dm_target *ti,
path_nr = switch_get_path_nr(sctx, 0);
*bdev = sctx->path_list[path_nr].dmdev->bdev;
- *mode = sctx->path_list[path_nr].dmdev->mode;
/*
* Only pass ioctls through if the device sizes match exactly.