Symbol: nvstore
stand/common/nvstore.c
39
COMMAND_SET(nvstore, "nvstore", "manage non-volatile data", command_nvstore);
stand/libsa/nvstore.c
100
STAILQ_REMOVE(&stores, st, nvstore, nvs_next);
stand/libsa/nvstore.h
34
STAILQ_ENTRY(nvstore) nvs_next;
stand/libsa/nvstore.h
37
typedef STAILQ_HEAD(store_list, nvstore) nvstore_list_t;
usr.sbin/bhyve/pci_nvme.c
1937
if (sc->nvstore.type == NVME_STOR_RAM) {
usr.sbin/bhyve/pci_nvme.c
1938
if (sc->nvstore.ctx)
usr.sbin/bhyve/pci_nvme.c
1939
free(sc->nvstore.ctx);
usr.sbin/bhyve/pci_nvme.c
1940
sc->nvstore.ctx = calloc(1, sc->nvstore.size);
usr.sbin/bhyve/pci_nvme.c
1960
req->io_req.br_resid = sc->nvstore.size;
usr.sbin/bhyve/pci_nvme.c
1963
err = blockif_delete(sc->nvstore.ctx, &req->io_req);
usr.sbin/bhyve/pci_nvme.c
2185
pci_nvme_out_of_range(struct pci_nvme_blockstore *nvstore, uint64_t slba,
usr.sbin/bhyve/pci_nvme.c
2191
if (slba >> (64 - nvstore->sectsz_bits))
usr.sbin/bhyve/pci_nvme.c
2194
offset = slba << nvstore->sectsz_bits;
usr.sbin/bhyve/pci_nvme.c
2195
bytes = nblocks << nvstore->sectsz_bits;
usr.sbin/bhyve/pci_nvme.c
2198
if ((nvstore->size <= offset) || ((nvstore->size - offset) < bytes))
usr.sbin/bhyve/pci_nvme.c
2370
struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
2376
if (nvstore->type == NVME_STOR_RAM) {
usr.sbin/bhyve/pci_nvme.c
2383
err = blockif_flush(nvstore->ctx, &req->io_req);
usr.sbin/bhyve/pci_nvme.c
2401
struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
2406
uint8_t *buf = nvstore->ctx;
usr.sbin/bhyve/pci_nvme.c
2428
struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
2491
err = blockif_write(nvstore->ctx, &req->io_req);
usr.sbin/bhyve/pci_nvme.c
2493
err = blockif_read(nvstore->ctx, &req->io_req);
usr.sbin/bhyve/pci_nvme.c
2504
struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
2515
bytes = nblocks << nvstore->sectsz_bits;
usr.sbin/bhyve/pci_nvme.c
2522
if (pci_nvme_out_of_range(nvstore, lba, nblocks)) {
usr.sbin/bhyve/pci_nvme.c
2529
offset = lba << nvstore->sectsz_bits;
usr.sbin/bhyve/pci_nvme.c
2538
if (nvstore->type == NVME_STOR_RAM) {
usr.sbin/bhyve/pci_nvme.c
2539
*status = nvme_write_read_ram(sc, nvstore, cmd->prp1,
usr.sbin/bhyve/pci_nvme.c
2542
*status = nvme_write_read_blockif(sc, nvstore, req,
usr.sbin/bhyve/pci_nvme.c
2577
if (blockif_delete(sc->nvstore.ctx, &req->io_req)) {
usr.sbin/bhyve/pci_nvme.c
2594
struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
2622
if (pci_nvme_out_of_range(nvstore,
usr.sbin/bhyve/pci_nvme.c
2633
int sectsz_bits = sc->nvstore.sectsz_bits;
usr.sbin/bhyve/pci_nvme.c
2639
if (!nvstore->deallocate) {
usr.sbin/bhyve/pci_nvme.c
2680
if ((nvstore->size - offset) < bytes) {
usr.sbin/bhyve/pci_nvme.c
2699
err = blockif_delete(nvstore->ctx, &req->io_req);
usr.sbin/bhyve/pci_nvme.c
2762
pending = nvme_opc_flush(sc, cmd, &sc->nvstore,
usr.sbin/bhyve/pci_nvme.c
2767
pending = nvme_opc_write_read(sc, cmd, &sc->nvstore,
usr.sbin/bhyve/pci_nvme.c
2777
pending = nvme_opc_dataset_mgmt(sc, cmd, &sc->nvstore,
usr.sbin/bhyve/pci_nvme.c
3216
sc->nvstore.eui64 = htobe64(strtoull(value, NULL, 0));
usr.sbin/bhyve/pci_nvme.c
3239
sc->nvstore.type = NVME_STOR_RAM;
usr.sbin/bhyve/pci_nvme.c
3240
sc->nvstore.size = sz * 1024 * 1024;
usr.sbin/bhyve/pci_nvme.c
3241
sc->nvstore.ctx = calloc(1, sc->nvstore.size);
usr.sbin/bhyve/pci_nvme.c
3242
sc->nvstore.sectsz = 4096;
usr.sbin/bhyve/pci_nvme.c
3243
sc->nvstore.sectsz_bits = 12;
usr.sbin/bhyve/pci_nvme.c
3244
if (sc->nvstore.ctx == NULL) {
usr.sbin/bhyve/pci_nvme.c
3251
sc->nvstore.ctx = blockif_open(nvl, bident);
usr.sbin/bhyve/pci_nvme.c
3252
if (sc->nvstore.ctx == NULL) {
usr.sbin/bhyve/pci_nvme.c
3257
sc->nvstore.type = NVME_STOR_BLOCKIF;
usr.sbin/bhyve/pci_nvme.c
3258
sc->nvstore.size = blockif_size(sc->nvstore.ctx);
usr.sbin/bhyve/pci_nvme.c
3262
sc->nvstore.sectsz = sectsz;
usr.sbin/bhyve/pci_nvme.c
3263
else if (sc->nvstore.type != NVME_STOR_RAM)
usr.sbin/bhyve/pci_nvme.c
3264
sc->nvstore.sectsz = blockif_sectsz(sc->nvstore.ctx);
usr.sbin/bhyve/pci_nvme.c
3265
for (sc->nvstore.sectsz_bits = 9;
usr.sbin/bhyve/pci_nvme.c
3266
(1U << sc->nvstore.sectsz_bits) < sc->nvstore.sectsz;
usr.sbin/bhyve/pci_nvme.c
3267
sc->nvstore.sectsz_bits++);
usr.sbin/bhyve/pci_nvme.c
328
struct pci_nvme_blockstore nvstore;
usr.sbin/bhyve/pci_nvme.c
3280
struct pci_nvme_blockstore *nvstore;
usr.sbin/bhyve/pci_nvme.c
3284
nvstore = &sc->nvstore;
usr.sbin/bhyve/pci_nvme.c
3287
nvstore->size = new_size;
usr.sbin/bhyve/pci_nvme.c
3288
pci_nvme_init_nsdata_size(nvstore, nd);
usr.sbin/bhyve/pci_nvme.c
3363
blockif_register_resize_callback(sc->nvstore.ctx, pci_nvme_resized, sc);
usr.sbin/bhyve/pci_nvme.c
3370
pci_nvme_init_nsdata(sc, &sc->nsdata, 1, &sc->nvstore);
usr.sbin/bhyve/pci_nvme.c
582
if (sc->nvstore.deallocate)
usr.sbin/bhyve/pci_nvme.c
605
pci_nvme_init_nsdata_size(struct pci_nvme_blockstore *nvstore,
usr.sbin/bhyve/pci_nvme.c
610
nd->nsze = nvstore->size / nvstore->sectsz;
usr.sbin/bhyve/pci_nvme.c
618
struct pci_nvme_blockstore *nvstore)
usr.sbin/bhyve/pci_nvme.c
621
pci_nvme_init_nsdata_size(nvstore, nd);
usr.sbin/bhyve/pci_nvme.c
623
if (nvstore->type == NVME_STOR_BLOCKIF)
usr.sbin/bhyve/pci_nvme.c
624
nvstore->deallocate = blockif_candelete(nvstore->ctx);
usr.sbin/bhyve/pci_nvme.c
630
if (nvstore->eui64 == 0) {
usr.sbin/bhyve/pci_nvme.c
632
uint64_t eui64 = nvstore->eui64;
usr.sbin/bhyve/pci_nvme.c
642
nvstore->eui64 = (eui64 << 16) | (nsid & 0xffff);
usr.sbin/bhyve/pci_nvme.c
644
be64enc(nd->eui64, nvstore->eui64);
usr.sbin/bhyve/pci_nvme.c
647
nd->lbaf[0] = NVMEF(NVME_NS_DATA_LBAF_LBADS, nvstore->sectsz_bits);