parent
550233e86d
commit
57935e2d90
@ -1 +1 @@
|
||||
SOURCES/nvme-cli-2.0.tar.gz
|
||||
SOURCES/nvme-cli-2.2.1.tar.gz
|
||||
|
@ -1 +1 @@
|
||||
ba824c8c79b2f5bbe77f3940481981ef02fa9787 SOURCES/nvme-cli-2.0.tar.gz
|
||||
1b66c5cb0d83948557c431157130565f1710b665 SOURCES/nvme-cli-2.2.1.tar.gz
|
||||
|
@ -1,102 +0,0 @@
|
||||
From 43c1ac652b74182e483f2e8033a5f5fe417fb429 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Wagner <dwagner@suse.de>
|
||||
Date: Mon, 11 Jul 2022 13:39:39 +0200
|
||||
Subject: [PATCH] nvme: Return status/error code for effects-log command
|
||||
|
||||
collect_effects_log eats up the return code from
|
||||
nvme_get_log_cmd_effects. Forward it to the shell..
|
||||
|
||||
Fixes: 155fbebfe7b7 ("Update effects-log to handle multiple command sets")
|
||||
|
||||
Signed-off-by: Daniel Wagner <dwagner@suse.de>
|
||||
---
|
||||
nvme.c | 44 ++++++++++++++++++++++++--------------------
|
||||
1 file changed, 24 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/nvme.c b/nvme.c
|
||||
index a2a9996a..6df08d7e 100644
|
||||
--- a/nvme.c
|
||||
+++ b/nvme.c
|
||||
@@ -587,18 +587,22 @@ ret:
|
||||
return err;
|
||||
}
|
||||
|
||||
-void collect_effects_log(int fd, enum nvme_csi csi, struct list_head *list, int flags)
|
||||
+static int collect_effects_log(int fd, enum nvme_csi csi,
|
||||
+ struct list_head *list, int flags)
|
||||
{
|
||||
+ nvme_effects_log_node_t *node;
|
||||
int err;
|
||||
- nvme_effects_log_node_t *node = malloc(sizeof(nvme_effects_log_node_t));
|
||||
+
|
||||
+ node = malloc(sizeof(nvme_effects_log_node_t));
|
||||
if (!node)
|
||||
- return;
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
node->csi = csi;
|
||||
|
||||
err = nvme_get_log_cmd_effects(fd, csi, &node->effects);
|
||||
if (!err) {
|
||||
list_add(list, &node->node);
|
||||
- return;
|
||||
+ return err;
|
||||
}
|
||||
else if (err > 0)
|
||||
nvme_show_status(err);
|
||||
@@ -606,6 +610,7 @@ void collect_effects_log(int fd, enum nvme_csi csi, struct list_head *list, int
|
||||
fprintf(stderr, "effects log page: %s\n", nvme_strerror(errno));
|
||||
|
||||
free(node);
|
||||
+ return err;
|
||||
}
|
||||
|
||||
static int get_effects_log(int argc, char **argv, struct command *cmd, struct plugin *plugin)
|
||||
@@ -676,29 +681,28 @@ static int get_effects_log(int argc, char **argv, struct command *cmd, struct pl
|
||||
nvme_command_set_supported = NVME_CAP_CSS(cap) & NVME_CAP_CSS_NVM;
|
||||
other_command_sets_supported = NVME_CAP_CSS(cap) & NVME_CAP_CSS_CSI;
|
||||
|
||||
+ if (nvme_command_set_supported)
|
||||
+ err = collect_effects_log(fd, NVME_CSI_NVM,
|
||||
+ &log_pages, flags);
|
||||
|
||||
- if (nvme_command_set_supported) {
|
||||
- collect_effects_log(fd, NVME_CSI_NVM, &log_pages, flags);
|
||||
- }
|
||||
-
|
||||
- if (other_command_sets_supported) {
|
||||
- collect_effects_log(fd, NVME_CSI_ZNS, &log_pages, flags);
|
||||
- }
|
||||
-
|
||||
- nvme_print_effects_log_pages(&log_pages, flags);
|
||||
+ if (!err && other_command_sets_supported)
|
||||
+ err = collect_effects_log(fd, NVME_CSI_ZNS,
|
||||
+ &log_pages, flags);
|
||||
|
||||
- }
|
||||
- else {
|
||||
- collect_effects_log(fd, cfg.csi, &log_pages, flags);
|
||||
- nvme_print_effects_log_pages(&log_pages, flags);
|
||||
+ } else {
|
||||
+ err = collect_effects_log(fd, cfg.csi, &log_pages, flags);
|
||||
}
|
||||
|
||||
+ if (!err)
|
||||
+ nvme_print_effects_log_pages(&log_pages, flags);
|
||||
+ else if (err > 0)
|
||||
+ nvme_show_status(err);
|
||||
+ else
|
||||
+ perror("effects log page");
|
||||
|
||||
close_fd:
|
||||
- while ((node = list_pop(&log_pages, nvme_effects_log_node_t, node))) {
|
||||
+ while ((node = list_pop(&log_pages, nvme_effects_log_node_t, node)))
|
||||
free(node);
|
||||
- }
|
||||
-
|
||||
close(fd);
|
||||
ret:
|
||||
return err;
|
||||
--
|
||||
2.31.1
|
||||
|
@ -1,69 +0,0 @@
|
||||
From 25fd8c707b106ca0763402566ad657ef710bf09e Mon Sep 17 00:00:00 2001
|
||||
From: Brad Mouring <brad@the-bradlands.net>
|
||||
Date: Mon, 2 May 2022 22:38:24 -0500
|
||||
Subject: [PATCH] completions: Collapse declaration and attribute assignment
|
||||
|
||||
Previously, the associative arrays for the vendor/subcommands and
|
||||
vendor/functions listings were split into a declaration of type
|
||||
(using "typeset") and attribute definition (using "readonly"). On
|
||||
bash 5.1.16 (at least), this lead to the following error (reported
|
||||
after enabling -xv to expand and print shell inputs)
|
||||
|
||||
...
|
||||
+ . /usr/share/bash-completion/completions/nvme
|
||||
# bash tab completion for the nvme command line utility
|
||||
# (unfortunately, bash won't let me add descriptions to cmds)
|
||||
# Kelly Kaoudis kelly.n.kaoudis at intel.com, Aug. 2015
|
||||
|
||||
# Constant to indicate command has no options
|
||||
readonly NO_OPTS=""
|
||||
++ readonly NO_OPTS=
|
||||
++ NO_OPTS=
|
||||
|
||||
# Associative array of plugins and associated subcommands
|
||||
# Order here is same as PLUGIN_OBJS in Makefile
|
||||
typeset -A _plugin_subcmds
|
||||
++ typeset -A _plugin_subcmds
|
||||
readonly _plugin_subcmds=(
|
||||
[intel]="id-ctrl internal-log lat-stats \
|
||||
...
|
||||
++ _plugin_subcmds=(['intel']='id-ctrl internal-log lat-stats...
|
||||
bash: 'intel': syntax error: operand expected (error token is "'intel'")
|
||||
...
|
||||
|
||||
Using the available flags for "typeset" to declare the variables as
|
||||
readonly arrays resolved the issue (and allows for bash completion
|
||||
to work as-expected)
|
||||
|
||||
Signed-off-by: Brad Mouring <bmouring@gmail.com>
|
||||
---
|
||||
completions/bash-nvme-completion.sh | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh
|
||||
index 5e0eb23b..51931bc1 100644
|
||||
--- a/completions/bash-nvme-completion.sh
|
||||
+++ b/completions/bash-nvme-completion.sh
|
||||
@@ -7,8 +7,7 @@ readonly NO_OPTS=""
|
||||
|
||||
# Associative array of plugins and associated subcommands
|
||||
# Order here is same as PLUGIN_OBJS in Makefile
|
||||
-typeset -A _plugin_subcmds
|
||||
-readonly _plugin_subcmds=(
|
||||
+typeset -Ar _plugin_subcmds=(
|
||||
[intel]="id-ctrl internal-log lat-stats \
|
||||
set-bucket-thresholds lat-stats-tracking \
|
||||
market-name smart-log-add temp-stats"
|
||||
@@ -55,8 +54,7 @@ readonly _plugin_subcmds=(
|
||||
)
|
||||
|
||||
# Associative array mapping plugins to coresponding option completions
|
||||
-typeset -A _plugin_funcs
|
||||
-readonly _plugin_funcs=(
|
||||
+typeset -Ar _plugin_funcs=(
|
||||
[intel]="plugin_intel_opts"
|
||||
[amzn]="plugin_amzn_opts"
|
||||
[memblaze]="plugin_memblaze_opts"
|
||||
--
|
||||
2.31.1
|
||||
|
@ -1,28 +0,0 @@
|
||||
From eac9f9b70081ff2df2e2ea11efb8fc6ec3754f64 Mon Sep 17 00:00:00 2001
|
||||
From: Evgeny Grin <k2k@narod.ru>
|
||||
Date: Fri, 17 Jun 2022 15:00:39 +0300
|
||||
Subject: [PATCH] bash-nvme-completion.sh: fixed error when sourced twice
|
||||
|
||||
One-line "readonly" with assignment produce error if completion file
|
||||
is sourced for the second time (/etc/profile reload, su etc.)
|
||||
---
|
||||
completions/bash-nvme-completion.sh | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh
|
||||
index e5d9ff19..7b8a2121 100644
|
||||
--- a/completions/bash-nvme-completion.sh
|
||||
+++ b/completions/bash-nvme-completion.sh
|
||||
@@ -5,7 +5,8 @@
|
||||
# Kelly Kaoudis kelly.n.kaoudis at intel.com, Aug. 2015
|
||||
|
||||
# Constant to indicate command has no options
|
||||
-readonly NO_OPTS=""
|
||||
+NO_OPTS=""
|
||||
+readonly NO_OPTS
|
||||
|
||||
# Associative array of plugins and associated subcommands
|
||||
# Order here is same as PLUGIN_OBJS in Makefile
|
||||
--
|
||||
2.31.1
|
||||
|
@ -1,26 +0,0 @@
|
||||
From 4284d4cc299e8604f898856bdd38fc4979e56586 Mon Sep 17 00:00:00 2001
|
||||
From: Evgeny Grin <k2k@narod.ru>
|
||||
Date: Fri, 17 Jun 2022 15:08:02 +0300
|
||||
Subject: [PATCH] bash-nvme-completion.sh: fixed typo with seagate plugin
|
||||
|
||||
Obvious typo resulted in broken completion for seagete plugin
|
||||
---
|
||||
completions/bash-nvme-completion.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh
|
||||
index 7b8a2121..00593b96 100644
|
||||
--- a/completions/bash-nvme-completion.sh
|
||||
+++ b/completions/bash-nvme-completion.sh
|
||||
@@ -940,7 +940,7 @@ plugin_micron_opts () {
|
||||
return 0
|
||||
}
|
||||
|
||||
-lugin_seagate_opts () {
|
||||
+plugin_seagate_opts () {
|
||||
local opts=""
|
||||
local compargs=""
|
||||
|
||||
--
|
||||
2.31.1
|
||||
|
Loading…
Reference in new issue