drbd: don't detour through bd_contains for the gendisk
authorChristoph Hellwig <hch@lst.de>
Thu, 3 Sep 2020 05:41:00 +0000 (07:41 +0200)
committerJens Axboe <axboe@kernel.dk>
Fri, 25 Sep 2020 14:18:58 +0000 (08:18 -0600)
bd_disk is set on all block devices, including those for partitions.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/drbd/drbd_receiver.c
drivers/block/drbd/drbd_worker.c

index 422363d..2d16fb0 100644 (file)
@@ -2789,7 +2789,7 @@ bool drbd_rs_should_slow_down(struct drbd_device *device, sector_t sector,
 
 bool drbd_rs_c_min_rate_throttle(struct drbd_device *device)
 {
-       struct gendisk *disk = device->ldev->backing_bdev->bd_contains->bd_disk;
+       struct gendisk *disk = device->ldev->backing_bdev->bd_disk;
        unsigned long db, dt, dbdt;
        unsigned int c_min_rate;
        int curr_events;
index 7c903de..9107b10 100644 (file)
@@ -1672,7 +1672,7 @@ void drbd_resync_after_changed(struct drbd_device *device)
 
 void drbd_rs_controller_reset(struct drbd_device *device)
 {
-       struct gendisk *disk = device->ldev->backing_bdev->bd_contains->bd_disk;
+       struct gendisk *disk = device->ldev->backing_bdev->bd_disk;
        struct fifo_buffer *plan;
 
        atomic_set(&device->rs_sect_in, 0);