mirror of https://gitee.com/openkylin/linux.git
d22524a478
Instead of allocating a separate struct device for the character device handle embedd it into struct nvme_ctrl and use it for the main controller refcounting. This removes double refcounting and gets us an automatic reference for the character device operations. We keep ctrl->device as a pointer for now to avoid chaning printks all over, but in the future we could look into message printing helpers that take a controller structure similar to what other subsystems do. Note the delete_ctrl operation always already has a reference (either through sysfs due this change, or because every open file on the /dev/nvme-fabrics node has a refernece) when it is entered now, so we don't need to do the unless_zero variant there. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
admin-cmd.c | ||
configfs.c | ||
core.c | ||
discovery.c | ||
fabrics-cmd.c | ||
fc.c | ||
fcloop.c | ||
io-cmd.c | ||
loop.c | ||
nvmet.h | ||
rdma.c |