Skip to content

Commit a5cce66

Browse files
igawkawasaki
authored andcommitted
common/nvme, nvme/{041,044,047,062}: check return code of nvme connect
Don't ignore the nvme connect return codes. This ensures that all transport behave the same. Signed-off-by: Daniel Wagner <[email protected]> [Shin'ichiro: fixed indent] Signed-off-by: Shin'ichiro Kawasaki <[email protected]>
1 parent 7b7829f commit a5cce66

File tree

5 files changed

+23
-9
lines changed

5 files changed

+23
-9
lines changed

common/nvme

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,7 @@ _nvme_connect_subsys() {
285285
local ctrl_loss_tmo=""
286286
local no_wait=false
287287
local no_wait_ns=false
288+
local expect_failure=false
288289
local hdr_digest=false
289290
local data_digest=false
290291
local tls=false
@@ -352,6 +353,10 @@ _nvme_connect_subsys() {
352353
no_wait_ns=true
353354
shift 1
354355
;;
356+
--expect-failure)
357+
expect_failure=true
358+
shift 1
359+
;;
355360
--hdr-digest)
356361
hdr_digest=true
357362
shift 1
@@ -433,6 +438,16 @@ _nvme_connect_subsys() {
433438
fi
434439
ARGS+=(--output-format=json)
435440
connect=$(nvme connect "${ARGS[@]}" 2> /dev/null)
441+
ret=$?
442+
if [[ ${expect_failure} = false ]]; then
443+
if [[ ${ret} != 0 ]]; then
444+
echo "FAIL: nvme connect return error code"
445+
fi
446+
else
447+
if [[ ${ret} == 0 ]]; then
448+
echo "FAIL: nvme connect did not return error code"
449+
fi
450+
fi
436451

437452
# Wait until device file and sysfs attributes get ready
438453
if [[ ${no_wait} = false ]]; then

tests/nvme/041

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ test() {
4040

4141
# Test unauthenticated connection (should fail)
4242
echo "Test unauthenticated connection (should fail)"
43-
_nvme_connect_subsys --no-wait
43+
_nvme_connect_subsys --no-wait --expect-failure
4444

4545
_nvme_disconnect_subsys
4646

tests/nvme/044

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,8 @@ test() {
5959
# and invalid ctrl authentication
6060
echo "Test invalid ctrl authentication (should fail)"
6161
_nvme_connect_subsys --dhchap-secret "${hostkey}" \
62-
--dhchap-ctrl-secret "${hostkey}" --no-wait
62+
--dhchap-ctrl-secret "${hostkey}" \
63+
--no-wait --expect-failure
6364

6465
_nvme_disconnect_subsys
6566

@@ -76,7 +77,8 @@ test() {
7677
echo "Test invalid ctrl key (should fail)"
7778
invkey="DHHC-1:00:Jc/My1o0qtLCWRp+sHhAVafdfaS7YQOMYhk9zSmlatobqB8C:"
7879
_nvme_connect_subsys --dhchap-secret "${hostkey}" \
79-
--dhchap-ctrl-secret "${invkey}" --no-wait
80+
--dhchap-ctrl-secret "${invkey}" \
81+
--no-wait --expect-failure
8082

8183
_nvme_disconnect_subsys
8284

tests/nvme/047

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,7 @@ test() {
3131

3232
_nvmet_target_setup
3333

34-
_nvme_connect_subsys \
35-
--nr-write-queues 1 || echo FAIL
34+
_nvme_connect_subsys --nr-write-queues 1
3635

3736
ns=$(_find_nvme_ns "${def_subsys_uuid}")
3837

@@ -41,9 +40,7 @@ test() {
4140

4241
_nvme_disconnect_subsys >> "$FULL" 2>&1
4342

44-
_nvme_connect_subsys \
45-
--nr-write-queues 1 \
46-
--nr-poll-queues 1 || echo FAIL
43+
_nvme_connect_subsys --nr-write-queues 1 --nr-poll-queues 1
4744

4845
_run_fio_rand_io --filename="/dev/${ns}" --size="${rand_io_size}"
4946

tests/nvme/062

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ test() {
7171

7272
# Test unencrypted connection
7373
echo "Test unencrypted connection w/ tls required (should fail)"
74-
_nvme_connect_subsys --no-wait
74+
_nvme_connect_subsys --no-wait --expect-failure
7575

7676
_nvme_disconnect_subsys
7777

0 commit comments

Comments
 (0)