Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41d9f7cd authored by Lars Ellenberg's avatar Lars Ellenberg Committed by Philipp Reisner
Browse files

drbd: drop drbd_md_flush



The only user of drbd_md_flush was bm_rw(),
and it is always followed by either a drbd_md_sync(),
or an al_write_transaction(), which, if so configured,
both end up submiting a FLUSH|FUA request anyways.

Signed-off-by: default avatarPhilipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: default avatarLars Ellenberg <lars.ellenberg@linbit.com>
parent 15e26f6a
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -1155,9 +1155,7 @@ static int bm_rw(struct drbd_device *device, int rw, unsigned flags, unsigned la
		err = -EIO; /* Disk timeout/force-detach during IO... */

	now = jiffies;
	if (rw == WRITE) {
		drbd_md_flush(device);
	} else /* rw == READ */ {
	if (rw == READ) {
		b->bm_set = bm_count_bits(b);
		drbd_info(device, "recounting of set bits took additional %lu jiffies\n",
		     jiffies - now);
+0 −19
Original line number Diff line number Diff line
@@ -2182,25 +2182,6 @@ static inline int drbd_queue_order_type(struct drbd_device *device)
	return QUEUE_ORDERED_NONE;
}

static inline void drbd_md_flush(struct drbd_device *device)
{
	int r;

	if (device->ldev == NULL) {
		drbd_warn(device, "device->ldev == NULL in drbd_md_flush\n");
		return;
	}

	if (test_bit(MD_NO_FUA, &device->flags))
		return;

	r = blkdev_issue_flush(device->ldev->md_bdev, GFP_NOIO, NULL);
	if (r) {
		set_bit(MD_NO_FUA, &device->flags);
		drbd_err(device, "meta data flush failed with status %d, disabling md-flushes\n", r);
	}
}

static inline struct drbd_connection *first_connection(struct drbd_resource *resource)
{
	return list_first_entry_or_null(&resource->connections,