From bf586630f8d5b1fa6a5f2c8c6788d56868da273a Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 16 Feb 2025 12:20:48 +0100 Subject: [PATCH] Merging upstream version 2.3. Signed-off-by: Daniel Baumann --- .github/AppImageBuilder.yml | 60 + .github/azure-pipelines.yml | 35 + .github/workflows/appimage.yml | 33 + .github/workflows/{meson.yml => build.yml} | 31 +- .github/workflows/release.yml | 4 +- .gitignore | 4 +- Documentation/cmd-plugins.txt | 3 + Documentation/meson.build | 11 + Documentation/nvme-admin-passthru.1 | 4 +- Documentation/nvme-admin-passthru.html | 2 +- Documentation/nvme-ana-log.1 | 4 +- Documentation/nvme-ana-log.html | 2 +- Documentation/nvme-attach-ns.1 | 4 +- Documentation/nvme-attach-ns.html | 2 +- Documentation/nvme-boot-part-log.1 | 4 +- Documentation/nvme-boot-part-log.html | 2 +- Documentation/nvme-capacity-mgmt.1 | 4 +- Documentation/nvme-capacity-mgmt.html | 2 +- Documentation/nvme-changed-ns-list-log.1 | 4 +- Documentation/nvme-changed-ns-list-log.html | 2 +- Documentation/nvme-cmdset-ind-id-ns.1 | 4 +- Documentation/nvme-cmdset-ind-id-ns.html | 2 +- Documentation/nvme-compare.1 | 10 +- Documentation/nvme-compare.html | 14 +- Documentation/nvme-compare.txt | 5 + Documentation/nvme-connect-all.1 | 12 +- Documentation/nvme-connect-all.html | 12 +- Documentation/nvme-connect.1 | 10 +- Documentation/nvme-connect.html | 8 +- Documentation/nvme-copy.1 | 4 +- Documentation/nvme-copy.html | 2 +- Documentation/nvme-create-ns.1 | 54 +- Documentation/nvme-create-ns.html | 68 +- Documentation/nvme-create-ns.txt | 21 +- Documentation/nvme-delete-ns.1 | 4 +- Documentation/nvme-delete-ns.html | 2 +- Documentation/nvme-dera-stat.1 | 4 +- Documentation/nvme-dera-stat.html | 2 +- Documentation/nvme-detach-ns.1 | 4 +- Documentation/nvme-detach-ns.html | 2 +- Documentation/nvme-device-self-test.1 | 13 +- Documentation/nvme-device-self-test.html | 21 +- Documentation/nvme-device-self-test.txt | 13 +- Documentation/nvme-dim.1 | 4 +- Documentation/nvme-dim.html | 2 +- Documentation/nvme-dir-receive.1 | 4 +- Documentation/nvme-dir-receive.html | 2 +- Documentation/nvme-dir-send.1 | 4 +- Documentation/nvme-dir-send.html | 2 +- Documentation/nvme-disconnect-all.1 | 4 +- Documentation/nvme-disconnect-all.html | 2 +- Documentation/nvme-disconnect.1 | 4 +- Documentation/nvme-disconnect.html | 2 +- Documentation/nvme-discover.1 | 12 +- Documentation/nvme-discover.html | 12 +- Documentation/nvme-dsm.1 | 4 +- Documentation/nvme-dsm.html | 2 +- Documentation/nvme-effects-log.1 | 4 +- Documentation/nvme-effects-log.html | 2 +- Documentation/nvme-endurance-event-agg-log.1 | 4 +- .../nvme-endurance-event-agg-log.html | 2 +- Documentation/nvme-endurance-log.1 | 4 +- Documentation/nvme-endurance-log.html | 2 +- Documentation/nvme-error-log.1 | 4 +- Documentation/nvme-error-log.html | 2 +- .../{nvme-id-domain.1 => nvme-fdp-configs.1} | 37 +- ...ow-topology.html => nvme-fdp-configs.html} | 89 +- Documentation/nvme-fdp-configs.txt | 42 + .../{nvme-id-domain.1 => nvme-fdp-events.1} | 37 +- ...how-topology.html => nvme-fdp-events.html} | 89 +- Documentation/nvme-fdp-events.txt | 42 + ...nvme-id-domain.1 => nvme-fdp-set-events.1} | 32 +- ...topology.html => nvme-fdp-set-events.html} | 79 +- Documentation/nvme-fdp-set-events.txt | 39 + .../{nvme-id-domain.1 => nvme-fdp-stats.1} | 31 +- ...vme-detach-ns.html => nvme-fdp-stats.html} | 53 +- Documentation/nvme-fdp-stats.txt | 37 + .../{nvme-huawei-list.1 => nvme-fdp-status.1} | 35 +- ...me-detach-ns.html => nvme-fdp-status.html} | 53 +- Documentation/nvme-fdp-status.txt | 37 + ...{nvme-set-property.1 => nvme-fdp-update.1} | 27 +- ...-huawei-list.html => nvme-fdp-update.html} | 43 +- Documentation/nvme-fdp-update.txt | 31 + .../{nvme-id-domain.1 => nvme-fdp-usage.1} | 31 +- ...show-topology.html => nvme-fdp-usage.html} | 78 +- Documentation/nvme-fdp-usage.txt | 38 + Documentation/nvme-fid-support-effects-log.1 | 4 +- .../nvme-fid-support-effects-log.html | 2 +- Documentation/nvme-flush.1 | 4 +- Documentation/nvme-flush.html | 2 +- Documentation/nvme-format.1 | 4 +- Documentation/nvme-format.html | 2 +- Documentation/nvme-fw-commit.1 | 4 +- Documentation/nvme-fw-commit.html | 2 +- Documentation/nvme-fw-download.1 | 4 +- Documentation/nvme-fw-download.html | 2 +- Documentation/nvme-fw-log.1 | 4 +- Documentation/nvme-fw-log.html | 2 +- Documentation/nvme-gen-hostnqn.1 | 4 +- Documentation/nvme-gen-hostnqn.html | 2 +- Documentation/nvme-get-feature.1 | 4 +- Documentation/nvme-get-feature.html | 2 +- Documentation/nvme-get-lba-status.1 | 4 +- Documentation/nvme-get-lba-status.html | 2 +- Documentation/nvme-get-log.1 | 4 +- Documentation/nvme-get-log.html | 2 +- Documentation/nvme-get-ns-id.1 | 4 +- Documentation/nvme-get-ns-id.html | 2 +- Documentation/nvme-get-property.1 | 4 +- Documentation/nvme-get-property.html | 2 +- Documentation/nvme-help.1 | 4 +- Documentation/nvme-help.html | 2 +- Documentation/nvme-huawei-id-ctrl.1 | 4 +- Documentation/nvme-huawei-id-ctrl.html | 2 +- Documentation/nvme-huawei-list.1 | 4 +- Documentation/nvme-huawei-list.html | 2 +- Documentation/nvme-id-ctrl.1 | 4 +- Documentation/nvme-id-ctrl.html | 2 +- Documentation/nvme-id-domain.1 | 4 +- Documentation/nvme-id-domain.html | 2 +- Documentation/nvme-id-iocs.1 | 4 +- Documentation/nvme-id-iocs.html | 2 +- Documentation/nvme-id-ns.1 | 4 +- Documentation/nvme-id-ns.html | 2 +- Documentation/nvme-id-nvmset.1 | 4 +- Documentation/nvme-id-nvmset.html | 2 +- ...dblock.1 => nvme-inspur-nvme-vendor-log.1} | 18 +- ....html => nvme-inspur-nvme-vendor-log.html} | 20 +- Documentation/nvme-inspur-nvme-vendor-log.txt | 37 + Documentation/nvme-intel-id-ctrl.1 | 4 +- Documentation/nvme-intel-id-ctrl.html | 2 +- Documentation/nvme-intel-internal-log.1 | 4 +- Documentation/nvme-intel-internal-log.html | 2 +- Documentation/nvme-intel-lat-stats.1 | 4 +- Documentation/nvme-intel-lat-stats.html | 2 +- Documentation/nvme-intel-market-name.1 | 4 +- Documentation/nvme-intel-market-name.html | 2 +- Documentation/nvme-intel-smart-log-add.1 | 4 +- Documentation/nvme-intel-smart-log-add.html | 2 +- Documentation/nvme-intel-temp-stats.1 | 4 +- Documentation/nvme-intel-temp-stats.html | 2 +- ...me-zns-open-zone.1 => nvme-io-mgmt-recv.1} | 60 +- ...-open-zone.html => nvme-io-mgmt-recv.html} | 72 +- Documentation/nvme-io-mgmt-recv.txt | 55 + ...e-zns-close-zone.1 => nvme-io-mgmt-send.1} | 56 +- ...close-zone.html => nvme-io-mgmt-send.html} | 75 +- Documentation/nvme-io-mgmt-send.txt | 54 + Documentation/nvme-io-passthru.1 | 4 +- Documentation/nvme-io-passthru.html | 2 +- Documentation/nvme-lba-status-log.1 | 4 +- Documentation/nvme-lba-status-log.html | 2 +- Documentation/nvme-list-ctrl.1 | 4 +- Documentation/nvme-list-ctrl.html | 2 +- Documentation/nvme-list-endgrp.1 | 4 +- Documentation/nvme-list-endgrp.html | 2 +- Documentation/nvme-list-ns.1 | 4 +- Documentation/nvme-list-ns.html | 2 +- Documentation/nvme-list-subsys.1 | 4 +- Documentation/nvme-list-subsys.html | 2 +- Documentation/nvme-list.1 | 4 +- Documentation/nvme-list.html | 2 +- Documentation/nvme-lockdown.1 | 4 +- Documentation/nvme-lockdown.html | 2 +- .../nvme-mi-cmd-support-effects-log.1 | 4 +- .../nvme-mi-cmd-support-effects-log.html | 2 +- Documentation/nvme-micron-clear-pcie-errors.1 | 4 +- .../nvme-micron-clear-pcie-errors.html | 2 +- Documentation/nvme-micron-internal-log.1 | 4 +- Documentation/nvme-micron-internal-log.html | 2 +- Documentation/nvme-micron-nand-stats.1 | 4 +- Documentation/nvme-micron-nand-stats.html | 2 +- Documentation/nvme-micron-pcie-stats.1 | 4 +- Documentation/nvme-micron-pcie-stats.html | 2 +- .../nvme-micron-selective-download.1 | 4 +- .../nvme-micron-selective-download.html | 2 +- Documentation/nvme-micron-smart-add-log.1 | 4 +- Documentation/nvme-micron-smart-add-log.html | 2 +- Documentation/nvme-micron-temperature-stats.1 | 4 +- .../nvme-micron-temperature-stats.html | 2 +- Documentation/nvme-netapp-ontapdevices.1 | 4 +- Documentation/nvme-netapp-ontapdevices.html | 2 +- Documentation/nvme-netapp-smdevices.1 | 4 +- Documentation/nvme-netapp-smdevices.html | 2 +- Documentation/nvme-ns-descs.1 | 4 +- Documentation/nvme-ns-descs.html | 2 +- Documentation/nvme-ns-rescan.1 | 4 +- Documentation/nvme-ns-rescan.html | 2 +- Documentation/nvme-nvm-id-ctrl.1 | 4 +- Documentation/nvme-nvm-id-ctrl.html | 2 +- ...1 => nvme-ocp-clear-fw-activate-history.1} | 27 +- ...> nvme-ocp-clear-fw-activate-history.html} | 36 +- .../nvme-ocp-clear-fw-activate-history.txt | 49 + Documentation/nvme-ocp-latency-monitor-log.1 | 4 +- .../nvme-ocp-latency-monitor-log.html | 2 +- Documentation/nvme-ocp-smart-add-log.1 | 4 +- Documentation/nvme-ocp-smart-add-log.html | 2 +- Documentation/nvme-persistent-event-log.1 | 4 +- Documentation/nvme-persistent-event-log.html | 2 +- Documentation/nvme-pred-lat-event-agg-log.1 | 4 +- .../nvme-pred-lat-event-agg-log.html | 2 +- Documentation/nvme-predictable-lat-log.1 | 4 +- Documentation/nvme-predictable-lat-log.html | 2 +- Documentation/nvme-primary-ctrl-caps.1 | 4 +- Documentation/nvme-primary-ctrl-caps.html | 2 +- Documentation/nvme-read.1 | 10 +- Documentation/nvme-read.html | 14 +- Documentation/nvme-read.txt | 5 + Documentation/nvme-reset.1 | 4 +- Documentation/nvme-reset.html | 2 +- Documentation/nvme-resv-acquire.1 | 4 +- Documentation/nvme-resv-acquire.html | 2 +- Documentation/nvme-resv-notif-log.1 | 4 +- Documentation/nvme-resv-notif-log.html | 2 +- Documentation/nvme-resv-register.1 | 4 +- Documentation/nvme-resv-register.html | 2 +- Documentation/nvme-resv-release.1 | 4 +- Documentation/nvme-resv-release.html | 2 +- Documentation/nvme-resv-report.1 | 4 +- Documentation/nvme-resv-report.html | 2 +- Documentation/nvme-rpmb.1 | 4 +- Documentation/nvme-rpmb.html | 2 +- Documentation/nvme-sanitize-log.1 | 4 +- Documentation/nvme-sanitize-log.html | 2 +- Documentation/nvme-sanitize.1 | 21 +- Documentation/nvme-sanitize.html | 15 +- Documentation/nvme-sanitize.txt | 13 +- .../nvme-seagate-clear-fw-activate-history.1 | 4 +- ...vme-seagate-clear-fw-activate-history.html | 2 +- ...me-seagate-clear-pcie-correctable-errors.1 | 4 +- ...seagate-clear-pcie-correctable-errors.html | 2 +- .../nvme-seagate-cloud-SSD-plugin-version.1 | 4 +- ...nvme-seagate-cloud-SSD-plugin-version.html | 2 +- Documentation/nvme-seagate-get-ctrl-tele.1 | 4 +- Documentation/nvme-seagate-get-ctrl-tele.html | 2 +- Documentation/nvme-seagate-get-host-tele.1 | 4 +- Documentation/nvme-seagate-get-host-tele.html | 2 +- Documentation/nvme-seagate-help.1 | 4 +- Documentation/nvme-seagate-help.html | 2 +- Documentation/nvme-seagate-plugin-version.1 | 4 +- .../nvme-seagate-plugin-version.html | 2 +- Documentation/nvme-seagate-version.1 | 4 +- Documentation/nvme-seagate-version.html | 2 +- .../nvme-seagate-vs-fw-activate-history.1 | 4 +- .../nvme-seagate-vs-fw-activate-history.html | 2 +- Documentation/nvme-seagate-vs-internal-log.1 | 4 +- .../nvme-seagate-vs-internal-log.html | 2 +- Documentation/nvme-seagate-vs-log-page-sup.1 | 4 +- .../nvme-seagate-vs-log-page-sup.html | 2 +- Documentation/nvme-seagate-vs-pcie-stats.1 | 4 +- Documentation/nvme-seagate-vs-pcie-stats.html | 2 +- Documentation/nvme-seagate-vs-smart-add-log.1 | 4 +- .../nvme-seagate-vs-smart-add-log.html | 2 +- .../nvme-seagate-vs-temperature-stats.1 | 4 +- .../nvme-seagate-vs-temperature-stats.html | 2 +- Documentation/nvme-security-recv.1 | 4 +- Documentation/nvme-security-recv.html | 2 +- Documentation/nvme-security-send.1 | 4 +- Documentation/nvme-security-send.html | 2 +- Documentation/nvme-self-test-log.1 | 4 +- Documentation/nvme-self-test-log.html | 2 +- Documentation/nvme-set-feature.1 | 4 +- Documentation/nvme-set-feature.html | 2 +- Documentation/nvme-set-property.1 | 4 +- Documentation/nvme-set-property.html | 2 +- Documentation/nvme-show-hostnqn.1 | 6 +- Documentation/nvme-show-hostnqn.html | 4 +- Documentation/nvme-show-regs.1 | 4 +- Documentation/nvme-show-regs.html | 2 +- Documentation/nvme-show-topology.1 | 4 +- Documentation/nvme-show-topology.html | 2 +- Documentation/nvme-smart-log.1 | 4 +- Documentation/nvme-smart-log.html | 2 +- Documentation/nvme-subsystem-reset.1 | 4 +- Documentation/nvme-subsystem-reset.html | 2 +- Documentation/nvme-supported-log-pages.1 | 4 +- Documentation/nvme-supported-log-pages.html | 2 +- Documentation/nvme-telemetry-log.1 | 4 +- Documentation/nvme-telemetry-log.html | 2 +- ...me-toshiba-clear-pcie-correctable-errors.1 | 4 +- ...toshiba-clear-pcie-correctable-errors.html | 2 +- Documentation/nvme-toshiba-vs-internal-log.1 | 4 +- .../nvme-toshiba-vs-internal-log.html | 2 +- Documentation/nvme-toshiba-vs-smart-add-log.1 | 4 +- .../nvme-toshiba-vs-smart-add-log.html | 2 +- Documentation/nvme-transcend-badblock.1 | 4 +- Documentation/nvme-transcend-badblock.html | 2 +- Documentation/nvme-transcend-healthvalue.1 | 4 +- Documentation/nvme-transcend-healthvalue.html | 2 +- Documentation/nvme-verify.1 | 4 +- Documentation/nvme-verify.html | 2 +- .../nvme-virtium-save-smart-to-vtview-log.1 | 4 +- ...nvme-virtium-save-smart-to-vtview-log.html | 2 +- Documentation/nvme-virtium-show-identify.1 | 4 +- Documentation/nvme-virtium-show-identify.html | 2 +- Documentation/nvme-wdc-cap-diag.1 | 4 +- Documentation/nvme-wdc-cap-diag.html | 2 +- Documentation/nvme-wdc-capabilities.1 | 4 +- Documentation/nvme-wdc-capabilities.html | 2 +- Documentation/nvme-wdc-clear-assert-dump.1 | 4 +- Documentation/nvme-wdc-clear-assert-dump.html | 2 +- .../nvme-wdc-clear-fw-activate-history.1 | 4 +- .../nvme-wdc-clear-fw-activate-history.html | 2 +- .../nvme-wdc-clear-pcie-correctable-errors.1 | 4 +- ...vme-wdc-clear-pcie-correctable-errors.html | 2 +- .../nvme-wdc-cloud-SSD-plugin-version.1 | 4 +- .../nvme-wdc-cloud-SSD-plugin-version.html | 2 +- .../nvme-wdc-cloud-boot-SSD-version.1 | 4 +- .../nvme-wdc-cloud-boot-SSD-version.html | 2 +- Documentation/nvme-wdc-drive-essentials.1 | 4 +- Documentation/nvme-wdc-drive-essentials.html | 2 +- Documentation/nvme-wdc-drive-log.1 | 4 +- Documentation/nvme-wdc-drive-log.html | 2 +- Documentation/nvme-wdc-drive-resize.1 | 4 +- Documentation/nvme-wdc-drive-resize.html | 2 +- Documentation/nvme-wdc-enc-get-log.1 | 4 +- Documentation/nvme-wdc-enc-get-log.html | 2 +- Documentation/nvme-wdc-get-crash-dump.1 | 4 +- Documentation/nvme-wdc-get-crash-dump.html | 2 +- .../nvme-wdc-get-dev-capabilities-log.1 | 4 +- .../nvme-wdc-get-dev-capabilities-log.html | 2 +- Documentation/nvme-wdc-get-drive-status.1 | 4 +- Documentation/nvme-wdc-get-drive-status.html | 2 +- .../nvme-wdc-get-error-recovery-log.1 | 4 +- .../nvme-wdc-get-error-recovery-log.html | 2 +- .../nvme-wdc-get-latency-monitor-log.1 | 4 +- .../nvme-wdc-get-latency-monitor-log.html | 2 +- Documentation/nvme-wdc-get-pfail-dump.1 | 4 +- Documentation/nvme-wdc-get-pfail-dump.html | 2 +- .../nvme-wdc-get-unsupported-reqs-log.1 | 4 +- .../nvme-wdc-get-unsupported-reqs-log.html | 2 +- Documentation/nvme-wdc-id-ctrl.1 | 4 +- Documentation/nvme-wdc-id-ctrl.html | 2 +- Documentation/nvme-wdc-log-page-directory.1 | 4 +- .../nvme-wdc-log-page-directory.html | 2 +- Documentation/nvme-wdc-namespace-resize.1 | 4 +- Documentation/nvme-wdc-namespace-resize.html | 2 +- Documentation/nvme-wdc-purge-monitor.1 | 4 +- Documentation/nvme-wdc-purge-monitor.html | 2 +- Documentation/nvme-wdc-purge.1 | 4 +- Documentation/nvme-wdc-purge.html | 2 +- Documentation/nvme-wdc-vs-cloud-log.1 | 4 +- Documentation/nvme-wdc-vs-cloud-log.html | 2 +- Documentation/nvme-wdc-vs-device-waf.1 | 4 +- Documentation/nvme-wdc-vs-device-waf.html | 2 +- Documentation/nvme-wdc-vs-drive-info.1 | 4 +- Documentation/nvme-wdc-vs-drive-info.html | 2 +- .../nvme-wdc-vs-error-reason-identifier.1 | 4 +- .../nvme-wdc-vs-error-reason-identifier.html | 2 +- .../nvme-wdc-vs-fw-activate-history.1 | 4 +- .../nvme-wdc-vs-fw-activate-history.html | 2 +- Documentation/nvme-wdc-vs-hw-rev-log.1 | 4 +- Documentation/nvme-wdc-vs-hw-rev-log.html | 2 +- Documentation/nvme-wdc-vs-internal-log.1 | 4 +- Documentation/nvme-wdc-vs-internal-log.html | 2 +- Documentation/nvme-wdc-vs-nand-stats.1 | 4 +- Documentation/nvme-wdc-vs-nand-stats.html | 2 +- Documentation/nvme-wdc-vs-smart-add-log.1 | 4 +- Documentation/nvme-wdc-vs-smart-add-log.html | 2 +- .../nvme-wdc-vs-telemetry-controller-option.1 | 4 +- ...me-wdc-vs-telemetry-controller-option.html | 2 +- Documentation/nvme-wdc-vs-temperature-stats.1 | 4 +- .../nvme-wdc-vs-temperature-stats.html | 2 +- Documentation/nvme-write-uncor.1 | 4 +- Documentation/nvme-write-uncor.html | 2 +- Documentation/nvme-write-zeroes.1 | 4 +- Documentation/nvme-write-zeroes.html | 2 +- Documentation/nvme-write.1 | 10 +- Documentation/nvme-write.html | 14 +- Documentation/nvme-write.txt | 5 + Documentation/nvme-zns-changed-zone-list.1 | 4 +- Documentation/nvme-zns-changed-zone-list.html | 2 +- Documentation/nvme-zns-close-zone.1 | 4 +- Documentation/nvme-zns-close-zone.html | 2 +- Documentation/nvme-zns-finish-zone.1 | 4 +- Documentation/nvme-zns-finish-zone.html | 2 +- Documentation/nvme-zns-id-ctrl.1 | 4 +- Documentation/nvme-zns-id-ctrl.html | 2 +- Documentation/nvme-zns-id-ns.1 | 4 +- Documentation/nvme-zns-id-ns.html | 2 +- Documentation/nvme-zns-offline-zone.1 | 4 +- Documentation/nvme-zns-offline-zone.html | 2 +- Documentation/nvme-zns-open-zone.1 | 4 +- Documentation/nvme-zns-open-zone.html | 2 +- Documentation/nvme-zns-report-zones.1 | 4 +- Documentation/nvme-zns-report-zones.html | 2 +- Documentation/nvme-zns-reset-zone.1 | 4 +- Documentation/nvme-zns-reset-zone.html | 2 +- Documentation/nvme-zns-set-zone-desc.1 | 4 +- Documentation/nvme-zns-set-zone-desc.html | 2 +- Documentation/nvme-zns-zone-append.1 | 4 +- Documentation/nvme-zns-zone-append.html | 2 +- Documentation/nvme-zns-zone-mgmt-recv.1 | 4 +- Documentation/nvme-zns-zone-mgmt-recv.html | 2 +- Documentation/nvme-zns-zone-mgmt-send.1 | 4 +- Documentation/nvme-zns-zone-mgmt-send.html | 2 +- Documentation/nvme.1 | 9 +- Documentation/nvme.html | 10 +- completions/_nvme | 3 +- completions/bash-nvme-completion.sh | 248 ++-- fabrics.c | 296 +++-- meson.build | 17 +- meson_options.txt | 5 +- nvme-builtin.h | 2 + nvme-print.c | 529 ++++++-- nvme-print.h | 11 + nvme-wrap.c | 56 + nvme-wrap.h | 21 +- nvme.c | 1168 ++++++++++++----- nvme.h | 6 - plugin.c | 4 +- plugins/fdp/fdp.c | 537 ++++++++ plugins/fdp/fdp.h | 24 + plugins/inspur/inspur-nvme.c | 235 ++++ plugins/inspur/inspur-nvme.h | 18 + plugins/inspur/inspur-utils.h | 175 +++ plugins/memblaze/memblaze-nvme.c | 203 +-- plugins/memblaze/memblaze-nvme.h | 7 - plugins/memblaze/memblaze-utils.h | 13 +- plugins/meson.build | 4 +- plugins/micron/micron-nvme.c | 1 - plugins/ocp/meson.build | 6 + plugins/ocp/ocp-clear-fw-update-history.c | 73 ++ plugins/ocp/ocp-clear-fw-update-history.h | 9 + plugins/ocp/ocp-nvme.c | 7 + plugins/ocp/ocp-nvme.h | 11 +- plugins/ocp/ocp-utils.c | 30 + plugins/ocp/ocp-utils.h | 18 + plugins/scaleflux/sfx-nvme.c | 2 +- plugins/solidigm/solidigm-nvme.c | 9 +- plugins/solidigm/solidigm-nvme.h | 5 +- release.sh | 58 +- subprojects/libnvme.wrap | 2 +- tests/README | 11 +- tests/meson.build | 9 - unit/meson.build | 28 + unit/test-suffix-si-parse.c | 64 + unit/test-uint128-si.c | 66 + {tests => unit}/test-uint128.c | 0 util/argconfig.c | 50 +- util/argconfig.h | 7 +- util/suffix.c | 49 +- util/suffix.h | 3 + util/types.c | 43 +- util/types.h | 1 + 444 files changed, 5289 insertions(+), 1980 deletions(-) create mode 100644 .github/AppImageBuilder.yml create mode 100644 .github/azure-pipelines.yml create mode 100644 .github/workflows/appimage.yml rename .github/workflows/{meson.yml => build.yml} (87%) copy Documentation/{nvme-id-domain.1 => nvme-fdp-configs.1} (61%) copy Documentation/{nvme-show-topology.html => nvme-fdp-configs.html} (89%) create mode 100644 Documentation/nvme-fdp-configs.txt copy Documentation/{nvme-id-domain.1 => nvme-fdp-events.1} (63%) copy Documentation/{nvme-show-topology.html => nvme-fdp-events.html} (89%) create mode 100644 Documentation/nvme-fdp-events.txt copy Documentation/{nvme-id-domain.1 => nvme-fdp-set-events.1} (63%) copy Documentation/{nvme-show-topology.html => nvme-fdp-set-events.html} (89%) create mode 100644 Documentation/nvme-fdp-set-events.txt copy Documentation/{nvme-id-domain.1 => nvme-fdp-stats.1} (63%) copy Documentation/{nvme-detach-ns.html => nvme-fdp-stats.html} (89%) create mode 100644 Documentation/nvme-fdp-stats.txt copy Documentation/{nvme-huawei-list.1 => nvme-fdp-status.1} (63%) copy Documentation/{nvme-detach-ns.html => nvme-fdp-status.html} (89%) create mode 100644 Documentation/nvme-fdp-status.txt copy Documentation/{nvme-set-property.1 => nvme-fdp-update.1} (67%) copy Documentation/{nvme-huawei-list.html => nvme-fdp-update.html} (91%) create mode 100644 Documentation/nvme-fdp-update.txt copy Documentation/{nvme-id-domain.1 => nvme-fdp-usage.1} (63%) copy Documentation/{nvme-show-topology.html => nvme-fdp-usage.html} (89%) create mode 100644 Documentation/nvme-fdp-usage.txt copy Documentation/{nvme-transcend-badblock.1 => nvme-inspur-nvme-vendor-log.1} (73%) copy Documentation/{nvme-transcend-badblock.html => nvme-inspur-nvme-vendor-log.html} (91%) create mode 100644 Documentation/nvme-inspur-nvme-vendor-log.txt copy Documentation/{nvme-zns-open-zone.1 => nvme-io-mgmt-recv.1} (54%) copy Documentation/{nvme-zns-open-zone.html => nvme-io-mgmt-recv.html} (88%) create mode 100644 Documentation/nvme-io-mgmt-recv.txt copy Documentation/{nvme-zns-close-zone.1 => nvme-io-mgmt-send.1} (55%) copy Documentation/{nvme-zns-close-zone.html => nvme-io-mgmt-send.html} (88%) create mode 100644 Documentation/nvme-io-mgmt-send.txt copy Documentation/{nvme-ocp-smart-add-log.1 => nvme-ocp-clear-fw-activate-history.1} (57%) copy Documentation/{nvme-ocp-latency-monitor-log.html => nvme-ocp-clear-fw-activate-history.html} (88%) create mode 100644 Documentation/nvme-ocp-clear-fw-activate-history.txt create mode 100644 plugins/fdp/fdp.c create mode 100644 plugins/fdp/fdp.h create mode 100644 plugins/inspur/inspur-nvme.c create mode 100644 plugins/inspur/inspur-nvme.h create mode 100644 plugins/inspur/inspur-utils.h create mode 100644 plugins/ocp/meson.build create mode 100644 plugins/ocp/ocp-clear-fw-update-history.c create mode 100644 plugins/ocp/ocp-clear-fw-update-history.h create mode 100644 plugins/ocp/ocp-utils.c create mode 100644 plugins/ocp/ocp-utils.h create mode 100644 unit/meson.build create mode 100644 unit/test-suffix-si-parse.c create mode 100644 unit/test-uint128-si.c rename {tests => unit}/test-uint128.c (100%) diff --git a/.github/AppImageBuilder.yml b/.github/AppImageBuilder.yml new file mode 100644 index 0000000..3675edf --- /dev/null +++ b/.github/AppImageBuilder.yml @@ -0,0 +1,60 @@ +# appimage-builder recipe see https://appimage-builder.readthedocs.io for details +version: 1 +script: + # Ensure that the mksquashfs tool is installed (workaround for the AppImageCrafters/build-appimage GHA) + - which mksquashfs || apt install squashfs-tools + # fake icons + - mkdir -p AppDir/usr/share/icons/hicolor/64x64/apps + - touch AppDir/usr/share/icons/hicolor/64x64/apps/nvme-cli.png + +AppDir: + path: AppDir + app_info: + id: linux-nvme.nvme-cli + name: nvme-cli + version: latest + icon: nvme-cli + exec: usr/sbin/nvme + exec_args: $@ + apt: + arch: amd64 + allow_unauthenticated: true + sources: + - sourceline: deb http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse + key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920D1991BC93C' + - sourceline: deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse + - sourceline: deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse + - sourceline: deb http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse + include: + - libjson-c5 + - libhugetlbfs0 + files: + include: + - /lib64/libcrypto.so.3 + - /lib64/libdbus-1.so.3 + - /lib64/libjson-c.so.5 + exclude: + - usr/share/man + - usr/share/doc/*/README.* + - usr/share/doc/*/changelog.* + - usr/share/doc/*/NEWS.* + - usr/share/doc/*/TODO.* + test: + fedora-30: + image: appimagecrafters/tests-env:fedora-30 + command: ./AppRun + debian-stable: + image: appimagecrafters/tests-env:debian-stable + command: ./AppRun + archlinux-latest: + image: appimagecrafters/tests-env:archlinux-latest + command: ./AppRun + centos-7: + image: appimagecrafters/tests-env:centos-7 + command: ./AppRun + ubuntu-xenial: + image: appimagecrafters/tests-env:ubuntu-xenial + command: ./AppRun +AppImage: + update-information: 'gh-releases-zsync|linux-nvme|nvme-cli|latest|*x86_64.AppImage.zsync' + arch: x86_64 diff --git a/.github/azure-pipelines.yml b/.github/azure-pipelines.yml new file mode 100644 index 0000000..4b52903 --- /dev/null +++ b/.github/azure-pipelines.yml @@ -0,0 +1,35 @@ +--- +# Do not run following tests +# - exclude data varification tests, too slow +# - nvme/010 +# - nvme/011 +# - nvme/012 +# - nvme/013 + +trigger: none # Disable CI triggers. + +jobs: + - job: blktests + timeoutInMinutes: 5 + pool: + name: linux-nvme + steps: + - script: | + meson $(Agent.TempDirectory)/build + ninja -C $(Agent.TempDirectory)/build + displayName: Build nvme-cli + - script: | + git clone --depth 1 https://github.com/osandov/blktests.git $(Agent.TempDirectory)/blktests + displayName: Clone blktests + - script: | + cd $(Agent.TempDirectory)/blktests + sudo sh -c 'PATH=$(Agent.TempDirectory)/build:$PATH nvme_trtype=tcp ./check -x nvme/010 -x nvme/011 -x nvme/012 -x nvme/013 nvme' + displayName: Run blktests for NVMe transport TCP + - script: | + cd $(Agent.TempDirectory)/blktests + sudo sh -c 'PATH=$(Agent.TempDirectory)/build:$PATH nvme_trtype=rdma ./check -x nvme/010 -x nvme/011 -x nvme/012 -x nvme/013 nvme' + displayName: Run blktests for NVMe transport RDMA + - script: | + cd $(Agent.TempDirectory)/blktests + sudo sh -c 'PATH=$(Agent.TempDirectory)/build:$PATH nvme_trtype=fc ./check -x nvme/010 -x nvme/011 -x nvme/012 -x nvme/013 nvme' + displayName: Run blktests for NVMe transport FC diff --git a/.github/workflows/appimage.yml b/.github/workflows/appimage.yml new file mode 100644 index 0000000..c64dfb3 --- /dev/null +++ b/.github/workflows/appimage.yml @@ -0,0 +1,33 @@ +--- +name: AppImage + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] +env: + DESTDIR: ../AppDir + +jobs: + build-appimage: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: install dependencies + run: sudo apt-get install libjson-c-dev libdbus-1-dev libhugetlbfs-dev + - uses: actions/setup-python@v4 + with: + python-version: '3.x' + - uses: BSFishy/meson-build@v1.0.3 + with: + setup-options: --werror --buildtype=release --prefix=/usr + action: install + - name: build AppImage + uses: AppImageCrafters/build-appimage@v1.3 + with: + recipe: .github/AppImageBuilder.yml + - uses: actions/upload-artifact@v3 + with: + name: AppImage + path: '*.AppImage*' diff --git a/.github/workflows/meson.yml b/.github/workflows/build.yml similarity index 87% rename from .github/workflows/meson.yml rename to .github/workflows/build.yml index ee80af3..805a962 100644 --- a/.github/workflows/meson.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,5 @@ -name: nvme-cli meson CI +--- +name: build on: push: @@ -9,24 +10,20 @@ on: workflow_dispatch: jobs: - build-disto: + build-distro: runs-on: ubuntu-latest steps: - - name: install libraries - run: sudo apt-get install libjson-c-dev libhugetlbfs-dev + - name: install dependencies + run: sudo apt-get install libjson-c-dev libhugetlbfs-dev libdbus-1-dev - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.x' - # - name: install python dependencies - # run: | - # python -m pip install --upgrade pip - # pip install nose nose2 - uses: BSFishy/meson-build@v1.0.3 with: setup-options: --werror - action: build + action: test build-cross-armhf: runs-on: ubuntu-latest @@ -44,7 +41,7 @@ jobs: - name: install armhf compiler run: sudo apt install gcc-arm-linux-gnueabihf pkg-config - name: install libraries - run: sudo apt install uuid-dev:armhf libjson-c-dev:armhf + run: sudo apt install uuid-dev:armhf libjson-c-dev:armhf libdbus-1-dev:armhf - uses: actions/checkout@v3 - uses: BSFishy/meson-build@v1.0.3 with: @@ -74,7 +71,7 @@ jobs: - name: install powerpc64le compiler run: sudo apt install gcc-powerpc64le-linux-gnu pkg-config - name: install libraries - run: sudo apt install uuid-dev:ppc64el libjson-c-dev:ppc64el + run: sudo apt install uuid-dev:ppc64el libjson-c-dev:ppc64el libdbus-1-dev:ppc64el - uses: actions/checkout@v3 - uses: BSFishy/meson-build@v1.0.3 with: @@ -91,7 +88,7 @@ jobs: build-fallback: runs-on: ubuntu-latest steps: - - name: install libraries + - name: install dependencies run: sudo apt-get install -y libpam-dev libcap-ng-dev - uses: actions/checkout@v3 - uses: actions/setup-python@v4 @@ -99,15 +96,15 @@ jobs: python-version: '3.x' - uses: BSFishy/meson-build@v1.0.3 with: - setup-options: --werror -Duuid:werror=false --wrap-mode=forcefallback + setup-options: --werror -Dopenssl:werror=false -Ddbus:werror=false --wrap-mode=forcefallback options: --verbose - action: build + action: test meson-version: 0.61.2 build-static: runs-on: ubuntu-latest steps: - - name: install libraries + - name: install dependencies run: sudo apt-get install -y libpam-dev libcap-ng-dev - uses: actions/checkout@v3 - uses: actions/setup-python@v4 @@ -115,7 +112,7 @@ jobs: python-version: '3.x' - uses: BSFishy/meson-build@v1.0.3 with: - setup-options: --werror -Duuid:werror=false --wrap-mode=forcefallback --default-library=static + setup-options: --werror -Dopenssl:werror=false -Ddbus:werror=false --wrap-mode=forcefallback --default-library=static options: --verbose - action: build + action: test meson-version: 0.61.2 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e0255a8..e4ccb70 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,11 +1,11 @@ -name: Releases +--- +name: releases on: push: branches: [ master ] tags: - '**' - jobs: build: runs-on: ubuntu-latest diff --git a/.gitignore b/.gitignore index 0745eff..da4804c 100644 --- a/.gitignore +++ b/.gitignore @@ -10,9 +10,11 @@ subprojects/* !subprojects/*.wrap cscope.* +compile_commands.json tests/__pycache__ tests/nvmetests tests/*.pyc -.build \ No newline at end of file +.build +.cache diff --git a/Documentation/cmd-plugins.txt b/Documentation/cmd-plugins.txt index 2ab6c68..f767603 100644 --- a/Documentation/cmd-plugins.txt +++ b/Documentation/cmd-plugins.txt @@ -198,3 +198,6 @@ linknvme:nvme-zns-zone-mgmt-send[1]:: linknvme:nvme-zns-zrwa-flush-zone[1]:: Flush LBAs associated with a ZRWA to a zone + +linknvme:nvme-inspur-nvme-vendor-log[1]:: + NVMe Inspur Device Vendor log page request diff --git a/Documentation/meson.build b/Documentation/meson.build index bb0c972..a526b99 100644 --- a/Documentation/meson.build +++ b/Documentation/meson.build @@ -31,6 +31,13 @@ adoc_sources = [ 'nvme-error-log', 'nvme-fid-support-effects-log', 'nvme-mi-cmd-support-effects-log', + 'nvme-fdp-configs', + 'nvme-fdp-usage', + 'nvme-fdp-stats', + 'nvme-fdp-events', + 'nvme-fdp-status', + 'nvme-fdp-update', + 'nvme-fdp-set-events', 'nvme-flush', 'nvme-format', 'nvme-fw-commit', @@ -56,6 +63,8 @@ adoc_sources = [ 'nvme-intel-market-name', 'nvme-intel-smart-log-add', 'nvme-intel-temp-stats', + 'nvme-io-mgmt-recv', + 'nvme-io-mgmt-send', 'nvme-io-passthru', 'nvme-lba-status-log', 'nvme-list', @@ -78,6 +87,7 @@ adoc_sources = [ 'nvme-nvm-id-ctrl', 'nvme-ocp-latency-monitor-log', 'nvme-ocp-smart-add-log', + 'nvme-ocp-clear-fw-activate-history', 'nvme-persistent-event-log', 'nvme-pred-lat-event-agg-log', 'nvme-predictable-lat-log', @@ -176,6 +186,7 @@ adoc_sources = [ 'nvme-zns-zone-append', 'nvme-zns-zone-mgmt-recv', 'nvme-zns-zone-mgmt-send', + 'nvme-inspur-nvme-vendor-log', ] adoc_includes = [ diff --git a/Documentation/nvme-admin-passthru.1 b/Documentation/nvme-admin-passthru.1 index eabf8da..b5f1847 100644 --- a/Documentation/nvme-admin-passthru.1 +++ b/Documentation/nvme-admin-passthru.1 @@ -2,12 +2,12 @@ .\" Title: nvme-admin-passthru .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ADMIN\-PASSTHR" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ADMIN\-PASSTHR" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-admin-passthru.html b/Documentation/nvme-admin-passthru.html index 41da63e..df793f1 100644 --- a/Documentation/nvme-admin-passthru.html +++ b/Documentation/nvme-admin-passthru.html @@ -998,7 +998,7 @@ Or if you want to save that structure to a file: diff --git a/Documentation/nvme-ana-log.1 b/Documentation/nvme-ana-log.1 index 2c0e905..1612c3b 100644 --- a/Documentation/nvme-ana-log.1 +++ b/Documentation/nvme-ana-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-ana-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ANA\-LOG" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ANA\-LOG" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-ana-log.html b/Documentation/nvme-ana-log.html index e93ae20..6fd8b75 100644 --- a/Documentation/nvme-ana-log.html +++ b/Documentation/nvme-ana-log.html @@ -823,7 +823,7 @@ Print the ANA log page in a human readable format: diff --git a/Documentation/nvme-attach-ns.1 b/Documentation/nvme-attach-ns.1 index 53746ea..c2339dc 100644 --- a/Documentation/nvme-attach-ns.1 +++ b/Documentation/nvme-attach-ns.1 @@ -2,12 +2,12 @@ .\" Title: nvme-attach-ns .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ATTACH\-NS" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ATTACH\-NS" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-attach-ns.html b/Documentation/nvme-attach-ns.html index b213377..874b250 100644 --- a/Documentation/nvme-attach-ns.html +++ b/Documentation/nvme-attach-ns.html @@ -817,7 +817,7 @@ controller identifiers.

diff --git a/Documentation/nvme-boot-part-log.1 b/Documentation/nvme-boot-part-log.1 index c1e2438..0ece2a2 100644 --- a/Documentation/nvme-boot-part-log.1 +++ b/Documentation/nvme-boot-part-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-boot-part-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-BOOT\-PART\-LO" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-BOOT\-PART\-LO" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-boot-part-log.html b/Documentation/nvme-boot-part-log.html index 4dce5ef..b311966 100644 --- a/Documentation/nvme-boot-part-log.html +++ b/Documentation/nvme-boot-part-log.html @@ -835,7 +835,7 @@ Retrieve Boot Partition data to boot_part_log.bin diff --git a/Documentation/nvme-capacity-mgmt.1 b/Documentation/nvme-capacity-mgmt.1 index ea0418c..119d52b 100644 --- a/Documentation/nvme-capacity-mgmt.1 +++ b/Documentation/nvme-capacity-mgmt.1 @@ -2,12 +2,12 @@ .\" Title: nvme-capacity-mgmt .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CAPACITY\-MGMT" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CAPACITY\-MGMT" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-capacity-mgmt.html b/Documentation/nvme-capacity-mgmt.html index 1ca3d42..fc01efc 100644 --- a/Documentation/nvme-capacity-mgmt.html +++ b/Documentation/nvme-capacity-mgmt.html @@ -839,7 +839,7 @@ device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).

diff --git a/Documentation/nvme-changed-ns-list-log.1 b/Documentation/nvme-changed-ns-list-log.1 index 0f8f52d..dc88509 100644 --- a/Documentation/nvme-changed-ns-list-log.1 +++ b/Documentation/nvme-changed-ns-list-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-changed-ns-list-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CHANGED\-NS\-L" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CHANGED\-NS\-L" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-changed-ns-list-log.html b/Documentation/nvme-changed-ns-list-log.html index 2358d44..fa107d3 100644 --- a/Documentation/nvme-changed-ns-list-log.html +++ b/Documentation/nvme-changed-ns-list-log.html @@ -835,7 +835,7 @@ Print the raw Changed Namespace List log to a file: diff --git a/Documentation/nvme-cmdset-ind-id-ns.1 b/Documentation/nvme-cmdset-ind-id-ns.1 index f034482..d8082f3 100644 --- a/Documentation/nvme-cmdset-ind-id-ns.1 +++ b/Documentation/nvme-cmdset-ind-id-ns.1 @@ -2,12 +2,12 @@ .\" Title: nvme-cmdset-ind-id-ns .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CMDSET\-IND\-I" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CMDSET\-IND\-I" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-cmdset-ind-id-ns.html b/Documentation/nvme-cmdset-ind-id-ns.html index 73b5a3c..1d2192d 100644 --- a/Documentation/nvme-cmdset-ind-id-ns.html +++ b/Documentation/nvme-cmdset-ind-id-ns.html @@ -879,7 +879,7 @@ Have the program return the raw structure in binary: diff --git a/Documentation/nvme-compare.1 b/Documentation/nvme-compare.1 index 8d53902..f90e068 100644 --- a/Documentation/nvme-compare.1 +++ b/Documentation/nvme-compare.1 @@ -2,12 +2,12 @@ .\" Title: nvme-compare .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-COMPARE" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-COMPARE" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -50,6 +50,7 @@ nvme-compare \- Send an NVMe Compare command, provide results [\-\-show\-command | \-v] [\-\-dry\-run | \-w] [\-\-latency | \-t] + [\-\-storage\-tag | \-g ] [\-\-storage\-tag\-check | \-C ] [\-\-force] .fi @@ -205,6 +206,11 @@ be set\&. Otherwise \-\-dry\-run option will be Print out the latency the IOCTL took (in us)\&. .RE .PP +\-\-storage\-tag=, \-g +.RS 4 +Variable Sized Expected Logical Block Storage Tag(ELBST)\&. +.RE +.PP \-\-storage\-tag\-check=, \-C .RS 4 This bit specifies the Storage Tag field shall be checked as part of end\-to\-end data protection processing\&. diff --git a/Documentation/nvme-compare.html b/Documentation/nvme-compare.html index e058fb0..0c4d611 100644 --- a/Documentation/nvme-compare.html +++ b/Documentation/nvme-compare.html @@ -767,6 +767,7 @@ nvme-compare(1) Manual Page [--show-command | -v] [--dry-run | -w] [--latency | -t] + [--storage-tag<storage-tag> | -g <storage-tag>] [--storage-tag-check<storage-tag-check> | -C <storage-tag-check>] [--force]
@@ -1043,6 +1044,17 @@ metadata is passes.

+--storage-tag=<storage-tag> +
+
+-g <storage-tag> +
+
+

+ Variable Sized Expected Logical Block Storage Tag(ELBST). +

+
+
--storage-tag-check=<storage-tag-check>
@@ -1083,7 +1095,7 @@ metadata is passes.

diff --git a/Documentation/nvme-compare.txt b/Documentation/nvme-compare.txt index 11299bd..0137d8d 100644 --- a/Documentation/nvme-compare.txt +++ b/Documentation/nvme-compare.txt @@ -26,6 +26,7 @@ SYNOPSIS [--show-command | -v] [--dry-run | -w] [--latency | -t] + [--storage-tag | -g ] [--storage-tag-check | -C ] [--force] @@ -140,6 +141,10 @@ metadata is passes. --latency:: Print out the latency the IOCTL took (in us). +--storage-tag=:: +-g :: + Variable Sized Expected Logical Block Storage Tag(ELBST). + --storage-tag-check=:: -C :: This bit specifies the Storage Tag field shall be checked as part of end-to-end diff --git a/Documentation/nvme-connect-all.1 b/Documentation/nvme-connect-all.1 index 8f4b81b..f2dbcb5 100644 --- a/Documentation/nvme-connect-all.1 +++ b/Documentation/nvme-connect-all.1 @@ -2,12 +2,12 @@ .\" Title: nvme-connect-all .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CONNECT\-ALL" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CONNECT\-ALL" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -60,7 +60,7 @@ nvme-connect-all \- Discover and Connect to Fabrics controllers\&. .sp Send one or more Discovery requests to a NVMe over Fabrics Discovery Controller, and create controllers for the returned discovery records\&. .sp -If no parameters are given, then \fInvme connect\-all\fR will attempt to find a /etc/nvme/discovery\&.conf file to use to supply a list of connect\-all commands to run\&. If no /etc/nvme/discovery\&.conf file exists, the command will quit with an error\&. +If no parameters are given, then \fInvme connect\-all\fR will attempt to find a /usr/local/etc/nvme/discovery\&.conf file to use to supply a list of connect\-all commands to run\&. If no /usr/local/etc/nvme/discovery\&.conf file exists, the command will quit with an error\&. .sp Otherwise a specific Discovery Controller should be specified using the \-\-transport, \-\-traddr and if necessary the \-\-trsvcid and a Discovery request will be sent to the specified Discovery Controller\&. .sp @@ -134,7 +134,7 @@ This field specifies the network interface used on the host to connect to the Co .PP \-q , \-\-hostnqn= .RS 4 -Overrides the default Host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. The Host NQN uniquely identifies the NVMe Host, and may be used by the the Discovery Controller to control what NVMe Target resources are allocated to the NVMe Host for a connection\&. +Overrides the default Host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /usr/local/etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. The Host NQN uniquely identifies the NVMe Host, and may be used by the the Discovery Controller to control what NVMe Target resources are allocated to the NVMe Host for a connection\&. .RE .PP \-I , \-\-hostid= @@ -153,7 +153,7 @@ will dump the output to stdout\&. .PP \-C , \-\-config\-file= .RS 4 -Use the specified JSON configuration file instead of the default /etc/nvme/config\&.json file or +Use the specified JSON configuration file instead of the default /usr/local/etc/nvme/config\&.json file or \fInone\fR to not read in an existing configuration file\&. The JSON configuration file format is documented in \m[blue]\fBhttps://github\&.com/linux\-nvme/libnvme/doc/config\-schema\&.json\fR\m[] @@ -252,7 +252,7 @@ Connect to all records returned by the Discover Controller with IP4 address 192\ .\} Issue a \fInvme connect\-all\fR -command using a /etc/nvme/discovery\&.conf file: +command using a /usr/local/etc/nvme/discovery\&.conf file: .sp .if n \{\ .RS 4 diff --git a/Documentation/nvme-connect-all.html b/Documentation/nvme-connect-all.html index 46d806b..89eae33 100644 --- a/Documentation/nvme-connect-all.html +++ b/Documentation/nvme-connect-all.html @@ -782,8 +782,8 @@ nvme-connect-all(1) Manual Page

Send one or more Discovery requests to a NVMe over Fabrics Discovery Controller, and create controllers for the returned discovery records.

If no parameters are given, then nvme connect-all will attempt to -find a /etc/nvme/discovery.conf file to use to supply a list of -connect-all commands to run. If no /etc/nvme/discovery.conf file +find a /usr/local/etc/nvme/discovery.conf file to use to supply a list of +connect-all commands to run. If no /usr/local/etc/nvme/discovery.conf file exists, the command will quit with an error.

Otherwise a specific Discovery Controller should be specified using the --transport, --traddr and if necessary the --trsvcid and a Discovery @@ -912,7 +912,7 @@ cellspacing="0" cellpadding="4">

Overrides the default Host NQN that identifies the NVMe Host. If this option is not specified, the default is read from - /etc/nvme/hostnqn first. If that does not exist, the + /usr/local/etc/nvme/hostnqn first. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next. The Host NQN uniquely identifies the NVMe Host, and may be used by the the Discovery Controller to control what NVMe Target resources are @@ -953,7 +953,7 @@ cellspacing="0" cellpadding="4">

Use the specified JSON configuration file instead of the - default /etc/nvme/config.json file or none to not read in + default /usr/local/etc/nvme/config.json file or none to not read in an existing configuration file. The JSON configuration file format is documented in https://github.com/linux-nvme/libnvme/doc/config-schema.json @@ -1120,7 +1120,7 @@ the RDMA network. Port 4420 is used by default:

  • -Issue a nvme connect-all command using a /etc/nvme/discovery.conf file: +Issue a nvme connect-all command using a /usr/local/etc/nvme/discovery.conf file:

    @@ -1156,7 +1156,7 @@ nvme-connect(1)

    diff --git a/Documentation/nvme-connect.1 b/Documentation/nvme-connect.1 index 7de1e87..f657eb1 100644 --- a/Documentation/nvme-connect.1 +++ b/Documentation/nvme-connect.1 @@ -2,12 +2,12 @@ .\" Title: nvme-connect .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CONNECT" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CONNECT" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -130,7 +130,7 @@ This field specifies the network interface used on the host to connect to the Co .PP \-q , \-\-hostnqn= .RS 4 -Overrides the default Host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. The Host NQN uniquely identifies the NVMe Host\&. +Overrides the default Host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /usr/local/etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. The Host NQN uniquely identifies the NVMe Host\&. .RE .PP \-I , \-\-hostid= @@ -140,7 +140,7 @@ UUID(Universally Unique Identifier) to be discovered which should be formatted\& .PP \-J , \-\-config\-file= .RS 4 -Use the specified JSON configuration file instead of the default /etc/nvme/config\&.json file or +Use the specified JSON configuration file instead of the default /usr/local/etc/nvme/config\&.json file or \fInone\fR to not read in an existing configuration file\&. The JSON configuration file format is documented in \m[blue]\fBhttps://github\&.com/linux\-nvme/libnvme/doc/config\-schema\&.json\fR\m[] @@ -149,7 +149,7 @@ to not read in an existing configuration file\&. The JSON configuration file for \-S , \-\-dhchap\-secret= .RS 4 NVMe In\-band authentication secret; needs to be in ASCII format as specified in NVMe 2\&.0 section 8\&.13\&.5\&.8 -\fISecret representation\fR\&. If this option is not specified, the default is read from /etc/nvme/hostkey\&. If that does not exist no in\-band authentication is attempted\&. +\fISecret representation\fR\&. If this option is not specified, the default is read from /usr/local/etc/nvme/hostkey\&. If that does not exist no in\-band authentication is attempted\&. .RE .PP \-C , \-\-dhchap\-ctrl\-secret= diff --git a/Documentation/nvme-connect.html b/Documentation/nvme-connect.html index 4119b57..19fc688 100644 --- a/Documentation/nvme-connect.html +++ b/Documentation/nvme-connect.html @@ -906,7 +906,7 @@ cellspacing="0" cellpadding="4">

    Overrides the default Host NQN that identifies the NVMe Host. If this option is not specified, the default is read from - /etc/nvme/hostnqn first. If that does not exist, the autogenerated + /usr/local/etc/nvme/hostnqn first. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next. The Host NQN uniquely identifies the NVMe Host.

    @@ -932,7 +932,7 @@ cellspacing="0" cellpadding="4">

    Use the specified JSON configuration file instead of the - default /etc/nvme/config.json file or none to not read in + default /usr/local/etc/nvme/config.json file or none to not read in an existing configuration file. The JSON configuration file format is documented in https://github.com/linux-nvme/libnvme/doc/config-schema.json @@ -949,7 +949,7 @@ cellspacing="0" cellpadding="4"> NVMe In-band authentication secret; needs to be in ASCII format as specified in NVMe 2.0 section 8.13.5.8 Secret representation. If this option is not specified, the default is read from - /etc/nvme/hostkey. If that does not exist no in-band authentication + /usr/local/etc/nvme/hostkey. If that does not exist no in-band authentication is attempted.

    @@ -1162,7 +1162,7 @@ and Christoph Hellwig

    diff --git a/Documentation/nvme-copy.1 b/Documentation/nvme-copy.1 index 34e8161..12e9ee2 100644 --- a/Documentation/nvme-copy.1 +++ b/Documentation/nvme-copy.1 @@ -2,12 +2,12 @@ .\" Title: nvme-copy .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-COPY" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-COPY" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-copy.html b/Documentation/nvme-copy.html index a896ba8..08e9eb9 100644 --- a/Documentation/nvme-copy.html +++ b/Documentation/nvme-copy.html @@ -982,7 +982,7 @@ logical block ranges to a single consecutive destination logical block range.

  • diff --git a/Documentation/nvme-create-ns.1 b/Documentation/nvme-create-ns.1 index 96cb562..4e191fc 100644 --- a/Documentation/nvme-create-ns.1 +++ b/Documentation/nvme-create-ns.1 @@ -2,12 +2,12 @@ .\" Title: nvme-create-ns .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-CREATE\-NS" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-CREATE\-NS" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -43,19 +43,15 @@ nvme-create-ns \- Send NVMe Namespace management command to create namespace, re [\-\-lbstm= | \-l ] [\-\-block\-size= | \-b ] [\-\-timeout= | \-t ] -DESCRIPTION + [\-\-nsze\-si= | \-S ] + [\-\-ncap\-si= | \-C ] .fi +.SH "DESCRIPTION" .sp -.nf -For the NVMe device given, sends a namespace management command to create -the namespace with the requested settings\&. On success, the namespace -identifier assigned by the controller is returned\&. - -The parameter is mandatory and may be either the NVMe character -device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&. - -OPTIONS -.fi +For the NVMe device given, sends a namespace management command to create the namespace with the requested settings\&. On success, the namespace identifier assigned by the controller is returned\&. +.sp +The parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&. +.SH "OPTIONS" .PP \-s, \-\-nsze .RS 4 @@ -106,9 +102,39 @@ Logical Block Storage Tag Mask for end\-to\-end protection\&. .RS 4 Target block size the new namespace should be formatted as\&. Potential FLBAS values will be values will be scanned and the lowest numbered will be selected for the create\-ns operation\&. Conflicts with \-\-flbas argument\&. .RE +.PP +\-S, \-\-nsze\-si +.RS 4 +The namespace size (NSZE) in standard SI units\&. The value SI suffixed is divided by the namespace LBA size to set as NSZE\&. If the value not suffixed it is set as same with the nsze option\&. +.RE +.PP +\-C, \-\-ncap\-si +.RS 4 +The namespace capacity (NCAP) in standard SI units\&. The value SI suffixed is divided by the namespace LBA size to set as NCAP\&. If the value not suffixed it is set as same with the ncap option\&. +.RE .SH "EXAMPLES" .sp -No examples provided yet\&. +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Create a namespace: +.sp +.if n \{\ +.RS 4 +.\} +.nf +# nvme create\-ns /dev/nvme0 \-\-nsze 11995709440 \-\-ncap 1199570940 \-\-flbas 0 \-\-dps 0 \-\-nmic 0 +# nvme create\-ns /dev/nvme0 \-\-nsze\-si 6\&.14T \-\-ncap 1199570940 \-\-flbas 0 \-\-dps 0 \-\-nmic 0 +.fi +.if n \{\ +.RE +.\} +.RE .SH "NVME" .sp Part of the nvme\-user suite diff --git a/Documentation/nvme-create-ns.html b/Documentation/nvme-create-ns.html index 1ce2ef9..dec4ee0 100644 --- a/Documentation/nvme-create-ns.html +++ b/Documentation/nvme-create-ns.html @@ -760,20 +760,25 @@ nvme-create-ns(1) Manual Page [--lbstm=<lbstm> | -l <lbstm>] [--block-size=<block-size> | -b <block-size>] [--timeout=<timeout> | -t <timeout>] -DESCRIPTION + [--nsze-si=<nsze-si> | -S <nsze-si>] + [--ncap-si=<ncap-si> | -C <ncap-si>]
    -
    -
    -
    For the NVMe device given, sends a namespace management command to create
    +
    +
    +
    +

    DESCRIPTION

    +
    +

    For the NVMe device given, sends a namespace management command to create the namespace with the requested settings. On success, the namespace -identifier assigned by the controller is returned. - -The <device> parameter is mandatory and may be either the NVMe character -device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1). - -OPTIONS -

    +identifier assigned by the controller is returned.

    +

    The <device> parameter is mandatory and may be either the NVMe character +device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).

    + + +
    +

    OPTIONS

    +
    -s @@ -890,13 +895,50 @@ OPTIONS selected for the create-ns operation. Conflicts with --flbas argument.

    +
    +-S +
    +
    +--nsze-si +
    +
    +

    + The namespace size (NSZE) in standard SI units. + The value SI suffixed is divided by the namespace LBA size to set as NSZE. + If the value not suffixed it is set as same with the nsze option. +

    +
    +
    +-C +
    +
    +--ncap-si +
    +
    +

    + The namespace capacity (NCAP) in standard SI units. + The value SI suffixed is divided by the namespace LBA size to set as NCAP. + If the value not suffixed it is set as same with the ncap option. +

    +

    EXAMPLES

    -

    No examples provided yet.

    +
      +
    • +

      +Create a namespace: +

      +
      +
      +
      # nvme create-ns /dev/nvme0 --nsze 11995709440 --ncap 1199570940 --flbas 0 --dps 0 --nmic 0
      +# nvme create-ns /dev/nvme0 --nsze-si 6.14T --ncap 1199570940 --flbas 0 --dps 0 --nmic 0
      +
      +
    • +
    @@ -910,7 +952,7 @@ OPTIONS diff --git a/Documentation/nvme-create-ns.txt b/Documentation/nvme-create-ns.txt index a17c70d..dfa5656 100644 --- a/Documentation/nvme-create-ns.txt +++ b/Documentation/nvme-create-ns.txt @@ -19,6 +19,9 @@ SYNOPSIS [--lbstm= | -l ] [--block-size= | -b ] [--timeout= | -t ] + [--nsze-si= | -S ] + [--ncap-si= | -C ] + DESCRIPTION ----------- For the NVMe device given, sends a namespace management command to create @@ -75,10 +78,26 @@ OPTIONS values will be values will be scanned and the lowest numbered will be selected for the create-ns operation. Conflicts with --flbas argument. +-S:: +--nsze-si:: + The namespace size (NSZE) in standard SI units. + The value SI suffixed is divided by the namespace LBA size to set as NSZE. + If the value not suffixed it is set as same with the nsze option. + +-C:: +--ncap-si:: + The namespace capacity (NCAP) in standard SI units. + The value SI suffixed is divided by the namespace LBA size to set as NCAP. + If the value not suffixed it is set as same with the ncap option. EXAMPLES -------- -No examples provided yet. +* Create a namespace: ++ +------------ +# nvme create-ns /dev/nvme0 --nsze 11995709440 --ncap 1199570940 --flbas 0 --dps 0 --nmic 0 +# nvme create-ns /dev/nvme0 --nsze-si 6.14T --ncap 1199570940 --flbas 0 --dps 0 --nmic 0 +------------ NVME ---- diff --git a/Documentation/nvme-delete-ns.1 b/Documentation/nvme-delete-ns.1 index b6897ea..b0a90e7 100644 --- a/Documentation/nvme-delete-ns.1 +++ b/Documentation/nvme-delete-ns.1 @@ -2,12 +2,12 @@ .\" Title: nvme-id-ns .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ID\-NS" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ID\-NS" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-delete-ns.html b/Documentation/nvme-delete-ns.html index 57246f6..c9a4c8a 100644 --- a/Documentation/nvme-delete-ns.html +++ b/Documentation/nvme-delete-ns.html @@ -799,7 +799,7 @@ The '--namespace-id' option is mandatory.

    diff --git a/Documentation/nvme-dera-stat.1 b/Documentation/nvme-dera-stat.1 index d429bac..b99e453 100644 --- a/Documentation/nvme-dera-stat.1 +++ b/Documentation/nvme-dera-stat.1 @@ -2,12 +2,12 @@ .\" Title: nvme-dera-stat .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DERA\-STAT" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DERA\-STAT" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-dera-stat.html b/Documentation/nvme-dera-stat.html index 5737d77..6b621cd 100644 --- a/Documentation/nvme-dera-stat.html +++ b/Documentation/nvme-dera-stat.html @@ -797,7 +797,7 @@ Print the Dera Device status and Additional SMART log page in a human readable f diff --git a/Documentation/nvme-detach-ns.1 b/Documentation/nvme-detach-ns.1 index 8efed67..57b95d6 100644 --- a/Documentation/nvme-detach-ns.1 +++ b/Documentation/nvme-detach-ns.1 @@ -2,12 +2,12 @@ .\" Title: nvme-detach-ns .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DETACH\-NS" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DETACH\-NS" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-detach-ns.html b/Documentation/nvme-detach-ns.html index 1140a2f..477e40c 100644 --- a/Documentation/nvme-detach-ns.html +++ b/Documentation/nvme-detach-ns.html @@ -810,7 +810,7 @@ controller identifiers.

    diff --git a/Documentation/nvme-device-self-test.1 b/Documentation/nvme-device-self-test.1 index a9461ff..69d3651 100644 --- a/Documentation/nvme-device-self-test.1 +++ b/Documentation/nvme-device-self-test.1 @@ -2,12 +2,12 @@ .\" Title: nvme-device-self-test .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DEVICE\-SELF\-" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DEVICE\-SELF\-" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -33,7 +33,7 @@ nvme-device-self-test \- Perform the necessary tests to observe the performance .sp .nf \fInvme device\-self\-test\fR [\-\-namespace\-id= | \-n ] - [\-\-self\-test\-code= | \-s ] + [\-\-self\-test\-code= | \-s ] [\-\-wait | \-w] .fi .SH "DESCRIPTION" .sp @@ -51,7 +51,12 @@ Indicate the namespace in which the device self\-test has to be carried out .PP \-s , \-\-self\-test\-code= .RS 4 -This field specifies the action taken by the device self\-test command : 1h: Start a short device self\-test operation 2h: Start a extended device self\-test operation eh: Start a vendor specific device self\-test operation fh: abort the device self\-test operation +This field specifies the action taken by the device self\-test command : 0h: Show current state of device self\-test operation 1h: Start a short device self\-test operation 2h: Start a extended device self\-test operation eh: Start a vendor specific device self\-test operation fh: Abort the device self\-test operation Default is 0h\&. +.RE +.PP +\-w, \-\-wait +.RS 4 +Wait for the device self test to complete before exiting The device self\-test is aborted by SIGINT signal interrupt for the wait The option is ignored if the abort self\-test code option specified\&. .RE .SH "EXAMPLES" .sp diff --git a/Documentation/nvme-device-self-test.html b/Documentation/nvme-device-self-test.html index 45ce554..ca5f09f 100644 --- a/Documentation/nvme-device-self-test.html +++ b/Documentation/nvme-device-self-test.html @@ -750,7 +750,7 @@ nvme-device-self-test(1) Manual Page
    nvme device-self-test <device> [--namespace-id=<NUM> | -n <NUM>]
    -                        [--self-test-code=<NUM> | -s <NUM>]
    + [--self-test-code=<NUM> | -s <NUM>] [--wait | -w]
    @@ -788,10 +788,25 @@ device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).

    This field specifies the action taken by the device self-test command : + 0h: Show current state of device self-test operation 1h: Start a short device self-test operation 2h: Start a extended device self-test operation eh: Start a vendor specific device self-test operation - fh: abort the device self-test operation + fh: Abort the device self-test operation + Default is 0h. +

    + +
    +-w +
    +
    +--wait +
    +
    +

    + Wait for the device self test to complete before exiting + The device self-test is aborted by SIGINT signal interrupt for the wait + The option is ignored if the abort self-test code option specified.

    @@ -833,7 +848,7 @@ Abort the device self-test operation in the namespace-id 1: diff --git a/Documentation/nvme-device-self-test.txt b/Documentation/nvme-device-self-test.txt index 62bba88..d098277 100644 --- a/Documentation/nvme-device-self-test.txt +++ b/Documentation/nvme-device-self-test.txt @@ -9,7 +9,7 @@ SYNOPSIS -------- [verse] 'nvme device-self-test' [--namespace-id= | -n ] - [--self-test-code= | -s ] + [--self-test-code= | -s ] [--wait | -w] DESCRIPTION ----------- @@ -28,12 +28,19 @@ OPTIONS -s :: --self-test-code=:: - This field specifies the action taken by the device self-test command : + This field specifies the action taken by the device self-test command : + 0h: Show current state of device self-test operation 1h: Start a short device self-test operation 2h: Start a extended device self-test operation eh: Start a vendor specific device self-test operation - fh: abort the device self-test operation + fh: Abort the device self-test operation + Default is 0h. +-w:: +--wait:: + Wait for the device self test to complete before exiting + The device self-test is aborted by SIGINT signal interrupt for the wait + The option is ignored if the abort self-test code option specified. EXAMPLES -------- diff --git a/Documentation/nvme-dim.1 b/Documentation/nvme-dim.1 index 866eb7d..8cfa143 100644 --- a/Documentation/nvme-dim.1 +++ b/Documentation/nvme-dim.1 @@ -2,12 +2,12 @@ .\" Title: nvme-dim .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DIM" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DIM" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-dim.html b/Documentation/nvme-dim.html index cee3630..30ce918 100644 --- a/Documentation/nvme-dim.html +++ b/Documentation/nvme-dim.html @@ -863,7 +863,7 @@ Deregister from Central Discovery Controller (CDC) associated with nvme4 diff --git a/Documentation/nvme-dir-receive.1 b/Documentation/nvme-dir-receive.1 index c4b46ea..83c460f 100644 --- a/Documentation/nvme-dir-receive.1 +++ b/Documentation/nvme-dir-receive.1 @@ -2,12 +2,12 @@ .\" Title: nvme-dir-receive .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DIR\-RECEIVE" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DIR\-RECEIVE" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-dir-receive.html b/Documentation/nvme-dir-receive.html index b13de02..135f733 100644 --- a/Documentation/nvme-dir-receive.html +++ b/Documentation/nvme-dir-receive.html @@ -969,7 +969,7 @@ Get streams directive status : diff --git a/Documentation/nvme-dir-send.1 b/Documentation/nvme-dir-send.1 index 2733697..1d52230 100644 --- a/Documentation/nvme-dir-send.1 +++ b/Documentation/nvme-dir-send.1 @@ -2,12 +2,12 @@ .\" Title: nvme-dir-send .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DIR\-SEND" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DIR\-SEND" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-dir-send.html b/Documentation/nvme-dir-send.html index 9710f8b..6707f1f 100644 --- a/Documentation/nvme-dir-send.html +++ b/Documentation/nvme-dir-send.html @@ -982,7 +982,7 @@ Release stream ID 3 : diff --git a/Documentation/nvme-disconnect-all.1 b/Documentation/nvme-disconnect-all.1 index f40e9b8..297e2a1 100644 --- a/Documentation/nvme-disconnect-all.1 +++ b/Documentation/nvme-disconnect-all.1 @@ -2,12 +2,12 @@ .\" Title: nvme-disconnect-all .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DISCONNECT\-AL" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DISCONNECT\-AL" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-disconnect-all.html b/Documentation/nvme-disconnect-all.html index 0e5c5b4..8857a29 100644 --- a/Documentation/nvme-disconnect-all.html +++ b/Documentation/nvme-disconnect-all.html @@ -795,7 +795,7 @@ Disconnect all existing nvme controllers: diff --git a/Documentation/nvme-disconnect.1 b/Documentation/nvme-disconnect.1 index 703cc23..09062da 100644 --- a/Documentation/nvme-disconnect.1 +++ b/Documentation/nvme-disconnect.1 @@ -2,12 +2,12 @@ .\" Title: nvme-disconnect .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DISCONNECT" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DISCONNECT" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-disconnect.html b/Documentation/nvme-disconnect.html index 4f77f80..8ba09f6 100644 --- a/Documentation/nvme-disconnect.html +++ b/Documentation/nvme-disconnect.html @@ -839,7 +839,7 @@ Disconnect the controller nvme4 diff --git a/Documentation/nvme-discover.1 b/Documentation/nvme-discover.1 index 547900c..cc5dc49 100644 --- a/Documentation/nvme-discover.1 +++ b/Documentation/nvme-discover.1 @@ -2,12 +2,12 @@ .\" Title: nvme-discover .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DISCOVER" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DISCOVER" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -63,7 +63,7 @@ nvme-discover \- Send Get Log Page request to Discovery Controller\&. .sp Send one or more Get Log Page requests to a NVMe\-over\-Fabrics Discovery Controller\&. .sp -If no parameters are given, then \fInvme discover\fR will attempt to find a /etc/nvme/discovery\&.conf file to use to supply a list of Discovery commands to run\&. If no /etc/nvme/discovery\&.conf file exists, the command will quit with an error\&. +If no parameters are given, then \fInvme discover\fR will attempt to find a /usr/local/etc/nvme/discovery\&.conf file to use to supply a list of Discovery commands to run\&. If no /usr/local/etc/nvme/discovery\&.conf file exists, the command will quit with an error\&. .sp Otherwise, a specific Discovery Controller should be specified using the \-\-transport, \-\-traddr, and if necessary the \-\-trsvcid flags\&. A Discovery request will then be sent to the specified Discovery Controller\&. .SH "BACKGROUND" @@ -142,7 +142,7 @@ This field specifies the network interface used on the host to connect to the Co .PP \-q , \-\-hostnqn= .RS 4 -Overrides the default host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. +Overrides the default host NQN that identifies the NVMe Host\&. If this option is not specified, the default is read from /usr/local/etc/nvme/hostnqn first\&. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next\&. .RE .PP \-I , \-\-hostid= @@ -166,7 +166,7 @@ This field takes a device as input\&. Device is in the format of nvme*, eg\&. nv .PP \-C , \-\-config\-file= .RS 4 -Use the specified JSON configuration file instead of the default /etc/nvme/config\&.json file or +Use the specified JSON configuration file instead of the default /usr/local/etc/nvme/config\&.json file or \fInone\fR to not read in an existing configuration file\&. The JSON configuration file format is documented in \m[blue]\fBhttps://github\&.com/linux\-nvme/libnvme/doc/config\-schema\&.json\fR\m[] @@ -278,7 +278,7 @@ Query the Discover Controller with IP4 address 192\&.168\&.1\&.3 for all resourc .\} Issue a \fInvme discover\fR -command using a /etc/nvme/discovery\&.conf file: +command using a /usr/local/etc/nvme/discovery\&.conf file: .sp .if n \{\ .RS 4 diff --git a/Documentation/nvme-discover.html b/Documentation/nvme-discover.html index 81063a4..17d8e51 100644 --- a/Documentation/nvme-discover.html +++ b/Documentation/nvme-discover.html @@ -785,8 +785,8 @@ nvme-discover(1) Manual Page

    Send one or more Get Log Page requests to a NVMe-over-Fabrics Discovery Controller.

    If no parameters are given, then nvme discover will attempt to -find a /etc/nvme/discovery.conf file to use to supply a list of -Discovery commands to run. If no /etc/nvme/discovery.conf file +find a /usr/local/etc/nvme/discovery.conf file to use to supply a list of +Discovery commands to run. If no /usr/local/etc/nvme/discovery.conf file exists, the command will quit with an error.

    Otherwise, a specific Discovery Controller should be specified using the --transport, --traddr, and if necessary the --trsvcid flags. A Discovery @@ -937,7 +937,7 @@ cellspacing="0" cellpadding="4">

    Overrides the default host NQN that identifies the NVMe Host. If this option is not specified, the default is read from - /etc/nvme/hostnqn first. If that does not exist, the + /usr/local/etc/nvme/hostnqn first. If that does not exist, the autogenerated NQN value from the NVMe Host kernel module is used next.

    @@ -987,7 +987,7 @@ cellspacing="0" cellpadding="4">

    Use the specified JSON configuration file instead of the - default /etc/nvme/config.json file or none to not read in + default /usr/local/etc/nvme/config.json file or none to not read in an existing configuration file. The JSON configuration file format is documented in https://github.com/linux-nvme/libnvme/doc/config-schema.json @@ -1176,7 +1176,7 @@ Port 4420 is used by default:

  • -Issue a nvme discover command using a /etc/nvme/discovery.conf file: +Issue a nvme discover command using a /usr/local/etc/nvme/discovery.conf file:

    @@ -1218,7 +1218,7 @@ nvme-connect-all(1)

    diff --git a/Documentation/nvme-dsm.1 b/Documentation/nvme-dsm.1 index e6f4fe2..b03a15d 100644 --- a/Documentation/nvme-dsm.1 +++ b/Documentation/nvme-dsm.1 @@ -2,12 +2,12 @@ .\" Title: nvme-dsm .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-DSM" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-DSM" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-dsm.html b/Documentation/nvme-dsm.html index 942198f..ccfff82 100644 --- a/Documentation/nvme-dsm.html +++ b/Documentation/nvme-dsm.html @@ -893,7 +893,7 @@ any settings from the flags may have provided.

    diff --git a/Documentation/nvme-effects-log.1 b/Documentation/nvme-effects-log.1 index 4e1856f..e136ccf 100644 --- a/Documentation/nvme-effects-log.1 +++ b/Documentation/nvme-effects-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-effects-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-EFFECTS\-LOG" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-EFFECTS\-LOG" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-effects-log.html b/Documentation/nvme-effects-log.html index ec6a645..efc7c48 100644 --- a/Documentation/nvme-effects-log.html +++ b/Documentation/nvme-effects-log.html @@ -847,7 +847,7 @@ Have the program return the raw structure in binary: diff --git a/Documentation/nvme-endurance-event-agg-log.1 b/Documentation/nvme-endurance-event-agg-log.1 index 6d45580..df4c723 100644 --- a/Documentation/nvme-endurance-event-agg-log.1 +++ b/Documentation/nvme-endurance-event-agg-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-endurance-event-agg-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ENDURANCE\-EVE" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ENDURANCE\-EVE" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-endurance-event-agg-log.html b/Documentation/nvme-endurance-event-agg-log.html index 5950eae..dc52e46 100644 --- a/Documentation/nvme-endurance-event-agg-log.html +++ b/Documentation/nvme-endurance-event-agg-log.html @@ -851,7 +851,7 @@ Print the raw Endurance log to a file: diff --git a/Documentation/nvme-endurance-log.1 b/Documentation/nvme-endurance-log.1 index bfea30b..1a09df9 100644 --- a/Documentation/nvme-endurance-log.1 +++ b/Documentation/nvme-endurance-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-endurance-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ENDURANCE\-LOG" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ENDURANCE\-LOG" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-endurance-log.html b/Documentation/nvme-endurance-log.html index fc79319..c8b2bd8 100644 --- a/Documentation/nvme-endurance-log.html +++ b/Documentation/nvme-endurance-log.html @@ -834,7 +834,7 @@ Print the raw Endurance log to a file: diff --git a/Documentation/nvme-error-log.1 b/Documentation/nvme-error-log.1 index 527e173..03b4777 100644 --- a/Documentation/nvme-error-log.1 +++ b/Documentation/nvme-error-log.1 @@ -2,12 +2,12 @@ .\" Title: nvme-error-log .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ERROR\-LOG" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-ERROR\-LOG" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- diff --git a/Documentation/nvme-error-log.html b/Documentation/nvme-error-log.html index 480e3a7..51c5b4d 100644 --- a/Documentation/nvme-error-log.html +++ b/Documentation/nvme-error-log.html @@ -849,7 +849,7 @@ Print the raw output to a file: diff --git a/Documentation/nvme-id-domain.1 b/Documentation/nvme-fdp-configs.1 similarity index 61% copy from Documentation/nvme-id-domain.1 copy to Documentation/nvme-fdp-configs.1 index cb93376..499e5bc 100644 --- a/Documentation/nvme-id-domain.1 +++ b/Documentation/nvme-fdp-configs.1 @@ -1,13 +1,13 @@ '\" t -.\" Title: nvme-id-domain +.\" Title: nvme-fdp-configs .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot -.\" Date: 11/02/2022 +.\" Date: 01/30/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" -.TH "NVME\-ID\-DOMAIN" "1" "11/02/2022" "NVMe" "NVMe Manual" +.TH "NVME\-FDP\-CONFIGS" "1" "01/30/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -28,23 +28,33 @@ .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" -nvme-id-domain \- Send NVMe Identify Domain List, return result and structure +nvme-fdp-configs \- Get Flexible Data Placement Configurations .SH "SYNOPSIS" .sp .nf -\fInvme id\-domain\fR [\-\-dom\-id= | \-d ] - [\-o | \-\-output\-format=] +\fInvme fdp configs\fR [\-\-endgrp\-id= | \-e ] + [\-\-human\-readable | \-H] + [\-\-raw\-binary | \-b] + [\-\-output\-format= | \-o ] .fi .SH "DESCRIPTION" .sp -For the NVMe device given, send an identify command and return the domain list data structure\&. -.sp -The parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&. +For the NVMe device given, and the endurance group identifier specified, list the possible configurations for Flexible Data Placement\&. .SH "OPTIONS" .PP -\-d , \-\-dom\-id= +\-e , \-\-endgrp\-id= .RS 4 -Retrieve the identify domain list data structure for the given domain id\&. If this value is not given, domain id will be 0xffff\&. +The endurance group identifier to use when requesting the log page\&. +.RE +.PP +\-H, \-\-human\-readable +.RS 4 +Parse, print and describe individual parts of bitfields\&. +.RE +.PP +\-b, \-\-raw\-binary +.RS 4 +Print the raw buffer to the standard output stream\&. .RE .PP \-o , \-\-output\-format= @@ -54,9 +64,6 @@ Set the reporting format to \fIjson\fR, or \fIbinary\fR\&. Only one output format can be used at a time\&. .RE -.SH "EXAMPLES" -.sp -No examples yet\&. .SH "NVME" .sp -Part of the nvme\-user suite +Part of nvme\-cli diff --git a/Documentation/nvme-show-topology.html b/Documentation/nvme-fdp-configs.html similarity index 89% copy from Documentation/nvme-show-topology.html copy to Documentation/nvme-fdp-configs.html index 96611a4..76a7be1 100644 --- a/Documentation/nvme-show-topology.html +++ b/Documentation/nvme-fdp-configs.html @@ -5,7 +5,7 @@ -nvme-show-topology(1) +nvme-fdp-configs(1)