Lines Matching refs:ctrlr
65 static void *nvd_new_disk(struct nvme_namespace *ns, void *ctrlr);
67 static void *nvd_new_controller(struct nvme_controller *ctrlr);
68 static void nvd_controller_fail(void *ctrlr);
78 struct nvd_controller *ctrlr; member
98 struct nvme_controller *ctrlr; member
168 struct nvd_controller *ctrlr; in nvd_unload() local
175 while ((ctrlr = TAILQ_FIRST(&ctrlr_head)) != NULL) { in nvd_unload()
176 TAILQ_REMOVE(&ctrlr_head, ctrlr, tailq); in nvd_unload()
177 TAILQ_FOREACH(ndisk, &ctrlr->disk_head, ctrlr_tailq) in nvd_unload()
179 while (!TAILQ_EMPTY(&ctrlr->disk_head)) in nvd_unload()
180 msleep(&ctrlr->disk_head, &nvd_lock, 0, "nvd_unload",0); in nvd_unload()
181 free(ctrlr, M_NVD); in nvd_unload()
275 TAILQ_REMOVE(&ndisk->ctrlr->disk_head, ndisk, ctrlr_tailq); in nvd_gonecb()
276 if (TAILQ_EMPTY(&ndisk->ctrlr->disk_head)) in nvd_gonecb()
277 wakeup(&ndisk->ctrlr->disk_head); in nvd_gonecb()
400 nvd_new_controller(struct nvme_controller *ctrlr) in nvd_new_controller() argument
407 nvd_ctrlr->ctrlr = ctrlr; in nvd_new_controller()
422 struct nvd_controller *ctrlr = ctrlr_arg; in nvd_new_disk() local
423 device_t dev = ctrlr->ctrlr->dev; in nvd_new_disk()
427 ndisk->ctrlr = ctrlr; in nvd_new_disk()
447 TAILQ_INSERT_TAIL(&ctrlr->disk_head, ndisk, ctrlr_tailq); in nvd_new_disk()
492 if (ctrlr->ctrlr->quirks & QUIRK_AHCI) in nvd_new_disk()
516 struct nvd_controller *ctrlr = ctrlr_arg; in nvd_controller_fail() local
520 TAILQ_REMOVE(&ctrlr_head, ctrlr, tailq); in nvd_controller_fail()
521 TAILQ_FOREACH(ndisk, &ctrlr->disk_head, ctrlr_tailq) in nvd_controller_fail()
523 while (!TAILQ_EMPTY(&ctrlr->disk_head)) in nvd_controller_fail()
524 msleep(&ctrlr->disk_head, &nvd_lock, 0, "nvd_fail", 0); in nvd_controller_fail()
526 free(ctrlr, M_NVD); in nvd_controller_fail()