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

Commit d02cf531 authored by Markus Pargmann's avatar Markus Pargmann
Browse files

nbd: Move flag parsing to a function



nbd changes properties of the blockdevice depending on flags that were
received. This patch moves this flag parsing into a separate function
nbd_parse_flags().

Signed-off-by: default avatarMarkus Pargmann <mpa@pengutronix.de>
parent 0e4f0f6f
Loading
Loading
Loading
Loading
+13 −9
Original line number Original line Diff line number Diff line
@@ -641,6 +641,18 @@ static void nbd_bdev_reset(struct block_device *bdev)
	}
	}
}
}


static void nbd_parse_flags(struct nbd_device *nbd, struct block_device *bdev)
{
	if (nbd->flags & NBD_FLAG_READ_ONLY)
		set_device_ro(bdev, true);
	if (nbd->flags & NBD_FLAG_SEND_TRIM)
		queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, nbd->disk->queue);
	if (nbd->flags & NBD_FLAG_SEND_FLUSH)
		blk_queue_flush(nbd->disk->queue, REQ_FLUSH);
	else
		blk_queue_flush(nbd->disk->queue, 0);
}

static int nbd_dev_dbg_init(struct nbd_device *nbd);
static int nbd_dev_dbg_init(struct nbd_device *nbd);
static void nbd_dev_dbg_close(struct nbd_device *nbd);
static void nbd_dev_dbg_close(struct nbd_device *nbd);


@@ -742,15 +754,7 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd,


		mutex_unlock(&nbd->tx_lock);
		mutex_unlock(&nbd->tx_lock);


		if (nbd->flags & NBD_FLAG_READ_ONLY)
		nbd_parse_flags(nbd, bdev);
			set_device_ro(bdev, true);
		if (nbd->flags & NBD_FLAG_SEND_TRIM)
			queue_flag_set_unlocked(QUEUE_FLAG_DISCARD,
				nbd->disk->queue);
		if (nbd->flags & NBD_FLAG_SEND_FLUSH)
			blk_queue_flush(nbd->disk->queue, REQ_FLUSH);
		else
			blk_queue_flush(nbd->disk->queue, 0);


		thread = kthread_run(nbd_thread_send, nbd, "%s",
		thread = kthread_run(nbd_thread_send, nbd, "%s",
				     nbd_name(nbd));
				     nbd_name(nbd));