Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/nvme/target/admin-cmd.c nvmet_is_passthru_req() -> nvmet_is_passthru_subsys()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/nvme/target/core.c nvmet_init_cap() -> nvmet_is_passthru_subsys()

Type Parameter Key Value
PARAM_VALUE 0 subsys 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &epf->lock

drivers/nvme/target/core.c nvmet_is_passthru_req() -> nvmet_is_passthru_subsys()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/nvme/target/core.c nvmet_ns_enable() -> nvmet_is_passthru_subsys()

Type Parameter Key Value
CAPPED_DATA 0 &subsys->lock 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &buffer->mutex
LOCK2 &frag->frag_sem
LOCK2 global &nvmet_config_sem
LOCK2 0 &subsys->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct configfs_buffer)->mutex
TYPE_LOCK (struct configfs_fragment)->frag_sem
TYPE_LOCK (struct nvmet_subsys)->lock

drivers/nvme/target/configfs.c nvmet_subsys_attr_version_store_locked() -> nvmet_is_passthru_subsys()

Type Parameter Key Value
PARAM_VALUE 0 subsys 4096-ptr_max
DATA_SOURCE 0 subsys $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &buffer->mutex
LOCK2 &frag->frag_sem
LOCK2 global &nvmet_config_sem
LOCK2 0 &subsys->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct configfs_buffer)->mutex
TYPE_LOCK (struct configfs_fragment)->frag_sem
TYPE_LOCK (struct nvmet_subsys)->lock