Skip to content

Commit

Permalink
bdev: move ->bd_read_only to ->__bd_flags
Browse files Browse the repository at this point in the history
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed May 2, 2024
1 parent 1116b9f commit 01e198f
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 4 deletions.
5 changes: 4 additions & 1 deletion block/ioctl.c
Original file line number Diff line number Diff line change
Expand Up @@ -402,7 +402,10 @@ static int blkdev_roset(struct block_device *bdev, unsigned cmd,
if (ret)
return ret;
}
bdev->bd_read_only = n;
if (n)
bdev_set_flag(bdev, BD_READ_ONLY);
else
bdev_clear_flag(bdev, BD_READ_ONLY);
return 0;
}

Expand Down
2 changes: 1 addition & 1 deletion include/linux/blk_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ struct block_device {
unsigned long bd_stamp;
atomic_t __bd_flags; // partition number + flags
#define BD_PARTNO 255 // lower 8 bits; assign-once
bool bd_read_only; /* read-only policy */
#define BD_READ_ONLY (1u<<8) // read-only policy
bool bd_write_holder;
bool bd_has_submit_bio;
dev_t bd_dev;
Expand Down
4 changes: 2 additions & 2 deletions include/linux/blkdev.h
Original file line number Diff line number Diff line change
Expand Up @@ -742,13 +742,13 @@ static inline void bdev_clear_flag(struct block_device *bdev, unsigned flag)

static inline int get_disk_ro(struct gendisk *disk)
{
return disk->part0->bd_read_only ||
return bdev_test_flag(disk->part0, BD_READ_ONLY) ||
test_bit(GD_READ_ONLY, &disk->state);
}

static inline int bdev_read_only(struct block_device *bdev)
{
return bdev->bd_read_only || get_disk_ro(bdev->bd_disk);
return bdev_test_flag(bdev, BD_READ_ONLY) || get_disk_ro(bdev->bd_disk);
}

bool set_capacity_and_notify(struct gendisk *disk, sector_t size);
Expand Down

0 comments on commit 01e198f

Please sign in to comment.