]> git.ipfire.org Git - thirdparty/linux.git/commit
nvmet: initialize discovery subsys after debugfs is initialized
authorMohamed Khalfella <mkhalfella@purestorage.com>
Fri, 25 Jul 2025 20:50:05 +0000 (13:50 -0700)
committerChristoph Hellwig <hch@lst.de>
Thu, 31 Jul 2025 13:35:46 +0000 (06:35 -0700)
commit528589947c1802b9357c2a9b96d88cc4a11cd88b
treee16d710a9ca013d108b34dadf056743ec3df79f4
parente715b8733df60aa3280ab3e0de0560c8a72c5c1d
nvmet: initialize discovery subsys after debugfs is initialized

During nvme target initialization discovery subsystem is initialized
before "nvmet" debugfs directory is created. This results in discovery
subsystem debugfs directory to be created in debugfs root directory.

nvmet_init() ->
  nvmet_init_discovery() ->
    nvmet_subsys_alloc() ->
      nvmet_debugfs_subsys_setup()

In other words, the codepath above is exeucted before nvmet_debugfs is
created. We get /sys/kernel/debug/nqn.2014-08.org.nvmexpress.discovery
instead of /sys/kernel/debug/nvmet/nqn.2014-08.org.nvmexpress.discovery.
Move nvmet_init_discovery() call after nvmet_init_debugfs() to fix it.

Fixes: 649fd41420a8 ("nvmet: add debugfs support")
Signed-off-by: Mohamed Khalfella <mkhalfella@purestorage.com>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Hannes Reinecke <hare@kernel.org>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/target/core.c