Round 316: Smartctl ext, Hdparm ext, Sdparm ext, Nvme ext, Fio ext (20 commands)
ober
2a70268d86fadfa3cf961a5ac63992b6fc8f0f6f
--- a/docs/jemacs-vs-emacs.md +++ b/docs/jemacs-vs-emacs.md @@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features | ebib-import-file | :orange_circle: | Import file into Ebib | | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer | +### Round 316 — Smartctl ext, Hdparm ext, Sdparm ext, Nvme ext, Fio ext + +| Feature | Status | Notes | +|---------|--------|-------| +| `smartctl-attributes` | :orange_circle: | Show SMART attributes | +| `smartctl-capabilities` | :orange_circle: | Show SMART capabilities | +| `smartctl-error-log` | :orange_circle: | Show SMART error log | +| `smartctl-selftest` | :orange_circle: | Run SMART self-test | +| `hdparm-settings` | :orange_circle: | Show drive settings | +| `hdparm-security` | :orange_circle: | Show drive security | +| `hdparm-acoustic` | :orange_circle: | Acoustic management | +| `hdparm-readonly` | :orange_circle: | Toggle read-only mode | +| `sdparm-inquiry` | :orange_circle: | SCSI device inquiry | +| `sdparm-list` | :orange_circle: | List SCSI parameters | +| `sdparm-set` | :orange_circle: | Set SCSI parameter | +| `sdparm-get` | :orange_circle: | Get SCSI parameter | +| `nvme-list` | :orange_circle: | List NVMe devices | +| `nvme-smart` | :orange_circle: | Show NVMe SMART log | +| `nvme-identify` | :orange_circle: | Identify NVMe device | +| `nvme-format` | :orange_circle: | Format NVMe device | +| `fio-run` | :orange_circle: | Run fio benchmark | +| `fio-parse` | :orange_circle: | Parse fio output | +| `fio-generate` | :orange_circle: | Generate fio job file | +| `fio-compare` | :orange_circle: | Compare fio results | + ### Round 315 — Sysstat ext, Iostat ext, Sar ext, Pidstat ext, Mpstat ext | Feature | Status | Notes | --- a/src/jerboa-emacs/editor-extra-final.ss +++ b/src/jerboa-emacs/editor-extra-final.ss @@ -23769,4 +23769,64 @@ (def (cmd-mpstat-per-cpu app) (let* ((echo (app-state-echo app))) - (echo-message! echo "Mpstat: showing per-CPU statistics"))) \ No newline at end of file + (echo-message! echo "Mpstat: showing per-CPU statistics"))) + +;;; Round 316 — Sdparm ext, Nvme ext, Fio ext (batch 2) + +(def (cmd-sdparm-set app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Parameter=value device: " + (lambda (spec) + (echo-message! echo (str "Sdparm: setting " spec)))))) + +(def (cmd-sdparm-get app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Parameter device: " + (lambda (spec) + (echo-message! echo (str "Sdparm: getting " spec)))))) + +(def (cmd-nvme-list app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "NVMe: listing devices"))) + +(def (cmd-nvme-smart app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "NVMe: SMART log for " dev)))))) + +(def (cmd-nvme-identify app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "NVMe: identifying " dev)))))) + +(def (cmd-nvme-format app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "NVMe: formatting " dev)))))) + +(def (cmd-fio-run app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Job file: " + (lambda (job) + (echo-message! echo (str "Fio: running " job)))))) + +(def (cmd-fio-parse app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Output file: " + (lambda (file) + (echo-message! echo (str "Fio: parsing " file)))))) + +(def (cmd-fio-generate app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Workload type: " + (lambda (wl) + (echo-message! echo (str "Fio: generating job for " wl)))))) + +(def (cmd-fio-compare app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Result files: " + (lambda (files) + (echo-message! echo (str "Fio: comparing " files)))))) \ No newline at end of file --- a/src/jerboa-emacs/editor-extra-modes.ss +++ b/src/jerboa-emacs/editor-extra-modes.ss @@ -24480,3 +24480,63 @@ (let* ((echo (app-state-echo app))) (echo-message! echo "Sar: showing memory usage"))) +;;; Round 316 — Smartctl ext, Hdparm ext, Sdparm ext, Nvme ext, Fio ext (batch 1) + +(def (cmd-smartctl-attributes app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "SMART: showing attributes for " dev)))))) + +(def (cmd-smartctl-capabilities app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "SMART: showing capabilities for " dev)))))) + +(def (cmd-smartctl-error-log app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "SMART: showing error log for " dev)))))) + +(def (cmd-smartctl-selftest app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "SMART: running self-test on " dev)))))) + +(def (cmd-hdparm-settings app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "Hdparm: showing settings for " dev)))))) + +(def (cmd-hdparm-security app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "Hdparm: showing security for " dev)))))) + +(def (cmd-hdparm-acoustic app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "Hdparm: acoustic management for " dev)))))) + +(def (cmd-hdparm-readonly app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "Hdparm: toggling read-only for " dev)))))) + +(def (cmd-sdparm-inquiry app) + (let* ((echo (app-state-echo app))) + (echo-read-string echo "Device: " + (lambda (dev) + (echo-message! echo (str "Sdparm: inquiry for " dev)))))) + +(def (cmd-sdparm-list app) + (let* ((echo (app-state-echo app))) + (echo-message! echo "Sdparm: listing parameters"))) + --- a/src/jerboa-emacs/editor-extra-regs2.ss +++ b/src/jerboa-emacs/editor-extra-regs2.ss @@ -8053,4 +8053,25 @@ (register-command! 'tapestat-extended cmd-tapestat-extended) (register-command! 'mpstat-show cmd-mpstat-show) (register-command! 'mpstat-per-cpu cmd-mpstat-per-cpu) + ;; Round 316 + (register-command! 'smartctl-attributes cmd-smartctl-attributes) + (register-command! 'smartctl-capabilities cmd-smartctl-capabilities) + (register-command! 'smartctl-error-log cmd-smartctl-error-log) + (register-command! 'smartctl-selftest cmd-smartctl-selftest) + (register-command! 'hdparm-settings cmd-hdparm-settings) + (register-command! 'hdparm-security cmd-hdparm-security) + (register-command! 'hdparm-acoustic cmd-hdparm-acoustic) + (register-command! 'hdparm-readonly cmd-hdparm-readonly) + (register-command! 'sdparm-inquiry cmd-sdparm-inquiry) + (register-command! 'sdparm-list cmd-sdparm-list) + (register-command! 'sdparm-set cmd-sdparm-set) + (register-command! 'sdparm-get cmd-sdparm-get) + (register-command! 'nvme-list cmd-nvme-list) + (register-command! 'nvme-smart cmd-nvme-smart) + (register-command! 'nvme-identify cmd-nvme-identify) + (register-command! 'nvme-format cmd-nvme-format) + (register-command! 'fio-run cmd-fio-run) + (register-command! 'fio-parse cmd-fio-parse) + (register-command! 'fio-generate cmd-fio-generate) + (register-command! 'fio-compare cmd-fio-compare) )