Unverified Commit e9a7254b authored by Christian Brauner's avatar Christian Brauner
Browse files
parent f9d8c3c4
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -50,10 +50,10 @@ void nvmet_bdev_set_limits(struct block_device *bdev, struct nvme_id_ns *id)

void nvmet_bdev_ns_disable(struct nvmet_ns *ns)
{
	if (ns->bdev_handle) {
		bdev_release(ns->bdev_handle);
	if (ns->bdev_file) {
		fput(ns->bdev_file);
		ns->bdev = NULL;
		ns->bdev_handle = NULL;
		ns->bdev_file = NULL;
	}
}

@@ -85,18 +85,18 @@ int nvmet_bdev_ns_enable(struct nvmet_ns *ns)
	if (ns->buffered_io)
		return -ENOTBLK;

	ns->bdev_handle = bdev_open_by_path(ns->device_path,
	ns->bdev_file = bdev_file_open_by_path(ns->device_path,
				BLK_OPEN_READ | BLK_OPEN_WRITE, NULL, NULL);
	if (IS_ERR(ns->bdev_handle)) {
		ret = PTR_ERR(ns->bdev_handle);
	if (IS_ERR(ns->bdev_file)) {
		ret = PTR_ERR(ns->bdev_file);
		if (ret != -ENOTBLK) {
			pr_err("failed to open block device %s: (%d)\n",
					ns->device_path, ret);
		}
		ns->bdev_handle = NULL;
		ns->bdev_file = NULL;
		return ret;
	}
	ns->bdev = ns->bdev_handle->bdev;
	ns->bdev = file_bdev(ns->bdev_file);
	ns->size = bdev_nr_bytes(ns->bdev);
	ns->blksize_shift = blksize_bits(bdev_logical_block_size(ns->bdev));

+1 −1
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@

struct nvmet_ns {
	struct percpu_ref	ref;
	struct bdev_handle	*bdev_handle;
	struct file		*bdev_file;
	struct block_device	*bdev;
	struct file		*file;
	bool			readonly;