Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/nvd/nvd.c
Show All 12 Lines | |||||
TAILQ_ENTRY(nvd_controller) tailq; | TAILQ_ENTRY(nvd_controller) tailq; | ||||
TAILQ_HEAD(, nvd_disk) disk_head; | TAILQ_HEAD(, nvd_disk) disk_head; | ||||
}; | }; | ||||
static struct mtx nvd_lock; | static struct mtx nvd_lock; | ||||
static TAILQ_HEAD(, nvd_controller) ctrlr_head; | static TAILQ_HEAD(, nvd_controller) ctrlr_head; | ||||
static TAILQ_HEAD(disk_list, nvd_disk) disk_head; | static TAILQ_HEAD(disk_list, nvd_disk) disk_head; | ||||
static SYSCTL_NODE(_hw, OID_AUTO, nvd, CTLFLAG_RD, 0, "nvd driver parameters"); | static SYSCTL_NODE(_hw, OID_AUTO, nvd, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, | ||||
"nvd driver parameters"); | |||||
/* | /* | ||||
* The NVMe specification does not define a maximum or optimal delete size, so | * The NVMe specification does not define a maximum or optimal delete size, so | ||||
* technically max delete size is min(full size of the namespace, 2^32 - 1 | * technically max delete size is min(full size of the namespace, 2^32 - 1 | ||||
* LBAs). A single delete for a multi-TB NVMe namespace though may take much | * LBAs). A single delete for a multi-TB NVMe namespace though may take much | ||||
* longer to complete than the nvme(4) I/O timeout period. So choose a sensible | * longer to complete than the nvme(4) I/O timeout period. So choose a sensible | ||||
* default here that is still suitably large to minimize the number of overall | * default here that is still suitably large to minimize the number of overall | ||||
* delete operations. | * delete operations. | ||||
*/ | */ | ||||
Show All 12 Lines |