> +struct nvme_ctrl *nvme_ctrl_get_by_path(const char *path) > +{ > + struct nvme_ctrl *ctrl; > + struct file *f; > + > + f = filp_open(path, O_RDWR, 0); > + if (IS_ERR(f)) > + return ERR_CAST(f); > + > + if (f->f_op != &nvme_dev_fops) { > + ctrl = ERR_PTR(-EINVAL); > + goto out_close; > + } > + > + ctrl = f->private_data; > + nvme_get_ctrl(ctrl); > + > +out_close: > + filp_close(f, NULL); > + > + return ctrl; No need for the empty line here. Also can you make sure this new code (and all the new exports) are only enabled if CONFIG_NVME_TARGET_PASSTHRU is set. Preferably by having a little block at the end of this file with this function and the extra exports with a big fat comment that they are only for nvmet-passthrough.