From patchwork Tue Aug 22 08:38:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Wagner X-Patchwork-Id: 13360349 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id DD4AEEE49A3 for ; Tue, 22 Aug 2023 08:38:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233882AbjHVIiI (ORCPT ); Tue, 22 Aug 2023 04:38:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41144 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232858AbjHVIiI (ORCPT ); Tue, 22 Aug 2023 04:38:08 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 516521AD; Tue, 22 Aug 2023 01:38:02 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 0617C2296F; Tue, 22 Aug 2023 08:38:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1692693481; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aFH7C3etxPrD96fDEvOOGPP4eu7f+nPrFbOOuzz2T7M=; b=rL5PWOBTlKyQiVzga/fgpMvb4M6Wk1uEv7sldXH5TgiYUorqy2u7NB/vMJTozRBIgctaoB zW3IQfGwAajE0Hz9bhtZ3JXV4eLf2WWdCrjk4chls/pMVzUuGF8xFx/G3n4NzccWnErAiV S4V8Hcoma06nSnpBy400akpuj/bxfgQ= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1692693481; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aFH7C3etxPrD96fDEvOOGPP4eu7f+nPrFbOOuzz2T7M=; b=bOd+NzUzAiEmZK4SoHKW5MC54LLa/c9y32QfO4y8B2OFMJQudx2g+Ry4JdaFuiDwcUgqKl +COZ+mKvbwZBKEDg== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id EED3B132B9; Tue, 22 Aug 2023 08:38:00 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id grVLOuhz5GQocAAAMHmgww (envelope-from ); Tue, 22 Aug 2023 08:38:00 +0000 From: Daniel Wagner To: linux-nvme@lists.infradead.org Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, Chaitanya Kulkarni , Shin'ichiro Kawasaki , Hannes Reinecke , Sagi Grimberg , Jason Gunthorpe , Daniel Wagner Subject: [PATCH blktests v3 1/3] nvme/{033,034,035,036}: use default subsysnqn variable directly Date: Tue, 22 Aug 2023 10:38:10 +0200 Message-ID: <20230822083812.24612-2-dwagner@suse.de> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230822083812.24612-1-dwagner@suse.de> References: <20230822083812.24612-1-dwagner@suse.de> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org There is no need to introduce an extra local variable when it uses the default subsysnqn anyway. Signed-off-by: Daniel Wagner --- tests/nvme/033 | 9 ++++----- tests/nvme/034 | 9 ++++----- tests/nvme/035 | 9 ++++----- tests/nvme/036 | 11 +++++------ 4 files changed, 17 insertions(+), 21 deletions(-) diff --git a/tests/nvme/033 b/tests/nvme/033 index 46a520ae01fa..d924883460c2 100755 --- a/tests/nvme/033 +++ b/tests/nvme/033 @@ -49,18 +49,17 @@ test_device() { _setup_nvmet - local subsys="${def_subsysnqn}" local nsdev local port - port=$(_nvmet_passthru_target_setup "${subsys}") + port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") - nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${subsys}") + nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") compare_dev_info "${nsdev}" - _nvme_disconnect_subsys "${subsys}" - _nvmet_passthru_target_cleanup "${port}" "${subsys}" + _nvme_disconnect_subsys "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/034 b/tests/nvme/034 index 3c65d92cbaea..e79eef5e756d 100755 --- a/tests/nvme/034 +++ b/tests/nvme/034 @@ -19,18 +19,17 @@ test_device() { _setup_nvmet - local subsys="${def_subsysnqn}" local ctrldev local nsdev local port - port=$(_nvmet_passthru_target_setup "${subsys}") - nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${subsys}") + port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") _run_fio_verify_io --size="${nvme_img_size}" --filename="${nsdev}" - _nvme_disconnect_subsys "${subsys}" - _nvmet_passthru_target_cleanup "${port}" "${subsys}" + _nvme_disconnect_subsys "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/035 b/tests/nvme/035 index c705d9cf25a4..f0dfc92ceeea 100755 --- a/tests/nvme/035 +++ b/tests/nvme/035 @@ -25,18 +25,17 @@ test_device() { _setup_nvmet - local subsys="${def_subsysnqn}" local ctrldev local nsdev local port - port=$(_nvmet_passthru_target_setup "${subsys}") - nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${subsys}") + port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") _xfs_run_fio_verify_io "${nsdev}" "${nvme_img_size}" - _nvme_disconnect_subsys "${subsys}" - _nvmet_passthru_target_cleanup "${port}" "${subsys}" + _nvme_disconnect_subsys "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/036 b/tests/nvme/036 index 2e933cc41928..61b9e2309da7 100755 --- a/tests/nvme/036 +++ b/tests/nvme/036 @@ -18,21 +18,20 @@ test_device() { _setup_nvmet - local subsys="${def_subsysnqn}" local ctrldev local port - port=$(_nvmet_passthru_target_setup "${subsys}") - nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${subsys}") + port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") - ctrldev=$(_find_nvme_dev "${subsys}") + ctrldev=$(_find_nvme_dev "${def_subsysnqn}") if ! nvme reset "/dev/${ctrldev}" >> "$FULL" 2>&1; then echo "ERROR: reset failed" fi - _nvme_disconnect_subsys "${subsys}" - _nvmet_passthru_target_cleanup "${port}" "${subsys}" + _nvme_disconnect_subsys "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" echo "Test complete" } From patchwork Tue Aug 22 08:38:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Wagner X-Patchwork-Id: 13360350 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 827C2EE4993 for ; Tue, 22 Aug 2023 08:38:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233891AbjHVIiP (ORCPT ); Tue, 22 Aug 2023 04:38:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60666 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233893AbjHVIiN (ORCPT ); Tue, 22 Aug 2023 04:38:13 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA18519C; Tue, 22 Aug 2023 01:38:02 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 98D1E22977; Tue, 22 Aug 2023 08:38:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1692693481; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=AHjaua7ygfxY6mA4Y6jXFA0sHF3wfeJpyf/2h4QX28E=; b=psM0TyNf9dC4NinDsbaHQ3y0x4XmdTF/HPgLVs3gL3z4BNUyNNaC7ios2zEwKQyS2JHqBv u0JfVt7nJNuQBoejkbCgLi3lWVaaZQM5yXes32xfuGgb9YT/I4TC11YJi9cdo/4xAsSEwY DYgayqox2TcwCOx74gKWFx3QunPhOGE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1692693481; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=AHjaua7ygfxY6mA4Y6jXFA0sHF3wfeJpyf/2h4QX28E=; b=v3Ts4UJpBGSHRLgdqezjVWtI3pLXuPIZ0PiW11bayX+93t01f1gvO2mUB4rydEJ0EDzI1C 7Lg7D/HGNwGCIWCQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8C9EB132B9; Tue, 22 Aug 2023 08:38:01 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id DAMOIulz5GQucAAAMHmgww (envelope-from ); Tue, 22 Aug 2023 08:38:01 +0000 From: Daniel Wagner To: linux-nvme@lists.infradead.org Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, Chaitanya Kulkarni , Shin'ichiro Kawasaki , Hannes Reinecke , Sagi Grimberg , Jason Gunthorpe , Daniel Wagner Subject: [PATCH blktests v3 2/3] nvme/{033,034,035,036,37}: drop port handle between passthru target setup and cleanup Date: Tue, 22 Aug 2023 10:38:11 +0200 Message-ID: <20230822083812.24612-3-dwagner@suse.de> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230822083812.24612-1-dwagner@suse.de> References: <20230822083812.24612-1-dwagner@suse.de> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org The passthru nvmet setup and cleanup helpers are using the port as handle to track resources. Instead returning the port from the setup call, we figure out in the cleanup code which resources have been allocated. This avoids passing around awkward handles. Signed-off-by: Daniel Wagner --- tests/nvme/033 | 5 ++--- tests/nvme/034 | 5 ++--- tests/nvme/035 | 5 ++--- tests/nvme/036 | 5 ++--- tests/nvme/037 | 5 ++--- tests/nvme/rc | 30 ++++++++++++++++++++++++------ 6 files changed, 34 insertions(+), 21 deletions(-) diff --git a/tests/nvme/033 b/tests/nvme/033 index d924883460c2..6cc4f57e6d60 100755 --- a/tests/nvme/033 +++ b/tests/nvme/033 @@ -50,16 +50,15 @@ test_device() { _setup_nvmet local nsdev - local port - port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + _nvmet_passthru_target_setup "${def_subsysnqn}" nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") compare_dev_info "${nsdev}" _nvme_disconnect_subsys "${def_subsysnqn}" - _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/034 b/tests/nvme/034 index e79eef5e756d..3bd1c3ad2f61 100755 --- a/tests/nvme/034 +++ b/tests/nvme/034 @@ -21,15 +21,14 @@ test_device() { local ctrldev local nsdev - local port - port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + _nvmet_passthru_target_setup "${def_subsysnqn}" nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") _run_fio_verify_io --size="${nvme_img_size}" --filename="${nsdev}" _nvme_disconnect_subsys "${def_subsysnqn}" - _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/035 b/tests/nvme/035 index f0dfc92ceeea..712fe1dbcfb8 100755 --- a/tests/nvme/035 +++ b/tests/nvme/035 @@ -27,15 +27,14 @@ test_device() { local ctrldev local nsdev - local port - port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + _nvmet_passthru_target_setup "${def_subsysnqn}" nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") _xfs_run_fio_verify_io "${nsdev}" "${nvme_img_size}" _nvme_disconnect_subsys "${def_subsysnqn}" - _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/036 b/tests/nvme/036 index 61b9e2309da7..89ccd256a67c 100755 --- a/tests/nvme/036 +++ b/tests/nvme/036 @@ -19,9 +19,8 @@ test_device() { _setup_nvmet local ctrldev - local port - port=$(_nvmet_passthru_target_setup "${def_subsysnqn}") + _nvmet_passthru_target_setup "${def_subsysnqn}" nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" "${def_subsysnqn}") ctrldev=$(_find_nvme_dev "${def_subsysnqn}") @@ -31,7 +30,7 @@ test_device() { fi _nvme_disconnect_subsys "${def_subsysnqn}" - _nvmet_passthru_target_cleanup "${port}" "${def_subsysnqn}" + _nvmet_passthru_target_cleanup "${def_subsysnqn}" echo "Test complete" } diff --git a/tests/nvme/037 b/tests/nvme/037 index 5a78444b7e78..a2815b3ff2d7 100755 --- a/tests/nvme/037 +++ b/tests/nvme/037 @@ -20,15 +20,14 @@ test_device() { local subsys="blktests-subsystem-" local iterations=10 local ctrldev - local port for ((i = 0; i < iterations; i++)); do - port=$(_nvmet_passthru_target_setup "${subsys}${i}") + _nvmet_passthru_target_setup "${subsys}${i}" nsdev=$(_nvmet_passthru_target_connect "${nvme_trtype}" \ "${subsys}${i}") _nvme_disconnect_subsys "${subsys}${i}" >>"${FULL}" 2>&1 - _nvmet_passthru_target_cleanup "${port}" "${subsys}${i}" + _nvmet_passthru_target_cleanup "${subsys}${i}" done echo "Test complete" diff --git a/tests/nvme/rc b/tests/nvme/rc index 10a0d6d27f02..fdffc07da34a 100644 --- a/tests/nvme/rc +++ b/tests/nvme/rc @@ -745,6 +745,19 @@ _remove_nvmet_subsystem_from_port() { rm "${NVMET_CFS}/ports/${port}/subsystems/${nvmet_subsystem}" } +_get_nvmet_ports() { + local nvmet_subsystem="$1" + local -n nvmet_ports="$2" + local cfs_path="${NVMET_CFS}/ports" + local sarg + + sarg="s;^${cfs_path}/\([0-9]\+\)/subsystems/${nvmet_subsystem}$;\1;p" + + for path in "${cfs_path}/"*"/subsystems/${nvmet_subsystem}"; do + nvmet_ports+=("$(echo "${path}" | sed -n -s "${sarg}")") + done +} + _set_nvmet_hostkey() { local nvmet_hostnqn="$1" local nvmet_hostkey="$2" @@ -807,13 +820,12 @@ _find_nvme_passthru_loop_dev() { _nvmet_passthru_target_setup() { local subsys_name=$1 + local port _create_nvmet_passthru "${subsys_name}" port="$(_create_nvmet_port "${nvme_trtype}")" _add_nvmet_subsys_to_port "${port}" "${subsys_name}" _create_nvmet_host "${subsys_name}" "${def_hostnqn}" - - echo "$port" } _nvmet_passthru_target_connect() { @@ -832,11 +844,17 @@ _nvmet_passthru_target_connect() { } _nvmet_passthru_target_cleanup() { - local port=$1 - local subsys_name=$2 + local subsys_name=$1 + local ports + local port + + _get_nvmet_ports "${subsys_name}" ports + + for port in "${ports[@]}"; do + _remove_nvmet_subsystem_from_port "${port}" "${subsys_name}" + _remove_nvmet_port "${port}" + done - _remove_nvmet_subsystem_from_port "${port}" "${subsys_name}" - _remove_nvmet_port "${port}" _remove_nvmet_passhtru "${subsys_name}" _remove_nvmet_host "${def_hostnqn}" } From patchwork Tue Aug 22 08:38:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Wagner X-Patchwork-Id: 13360351 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 09A9EEE49A3 for ; Tue, 22 Aug 2023 08:38:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233902AbjHVIiQ (ORCPT ); Tue, 22 Aug 2023 04:38:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60670 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233894AbjHVIiN (ORCPT ); Tue, 22 Aug 2023 04:38:13 -0400 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7BF6A1AE; Tue, 22 Aug 2023 01:38:03 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 2BB5F1F85D; Tue, 22 Aug 2023 08:38:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1692693482; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=DqL2sMcaHhRS4XGXqpth3e/SV2SBKNsHssmjl8r+6/0=; b=qX4ULHi4W6VxkBDnV6JdeAvtF2BmF5Dpq1eSJ6XOC/BX6u++ABjxzyibjHeJVM3S0tZEzq JClVQ/BiwZMkVShf787V5cxNyvRmkLtRbBNENrZT5fSDEl9kU0D6se+naGjazauWH9ewvk dxem0ixg0O8DgjzXPl/9QqbSr3oI+FM= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1692693482; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=DqL2sMcaHhRS4XGXqpth3e/SV2SBKNsHssmjl8r+6/0=; b=7F/p0Xs8kc7yj34zamuRf91kisMhe2JagN3GW/hRJEF83WgT1C3001xFgUtvKXkTSJfC5V 4sBeKUF/t/NgkUDA== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 182C9132B9; Tue, 22 Aug 2023 08:38:02 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id pO3MBepz5GQ1cAAAMHmgww (envelope-from ); Tue, 22 Aug 2023 08:38:02 +0000 From: Daniel Wagner To: linux-nvme@lists.infradead.org Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, Chaitanya Kulkarni , Shin'ichiro Kawasaki , Hannes Reinecke , Sagi Grimberg , Jason Gunthorpe , Daniel Wagner Subject: [PATCH blktests v3 3/3] nvme: introduce nvmet_target_{setup/cleanup} common code Date: Tue, 22 Aug 2023 10:38:12 +0200 Message-ID: <20230822083812.24612-4-dwagner@suse.de> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230822083812.24612-1-dwagner@suse.de> References: <20230822083812.24612-1-dwagner@suse.de> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org Almost all fabric tests have the identically code for setting up and cleaning up the target side. Introduce two new helpers. Signed-off-by: Daniel Wagner --- tests/nvme/003 | 14 +++------- tests/nvme/004 | 21 +++------------ tests/nvme/005 | 20 ++------------- tests/nvme/006 | 19 ++------------ tests/nvme/007 | 14 ++-------- tests/nvme/008 | 21 ++------------- tests/nvme/009 | 16 ++---------- tests/nvme/010 | 21 ++------------- tests/nvme/011 | 16 ++---------- tests/nvme/012 | 21 ++------------- tests/nvme/013 | 16 ++---------- tests/nvme/014 | 21 ++------------- tests/nvme/015 | 16 ++---------- tests/nvme/018 | 16 ++---------- tests/nvme/019 | 21 ++------------- tests/nvme/020 | 16 ++---------- tests/nvme/021 | 16 ++---------- tests/nvme/022 | 16 ++---------- tests/nvme/023 | 21 ++------------- tests/nvme/024 | 16 ++---------- tests/nvme/025 | 16 ++---------- tests/nvme/026 | 16 ++---------- tests/nvme/027 | 17 +++---------- tests/nvme/028 | 17 +++---------- tests/nvme/029 | 21 ++------------- tests/nvme/040 | 19 ++------------ tests/nvme/041 | 18 ++----------- tests/nvme/042 | 17 ++----------- tests/nvme/043 | 17 ++----------- tests/nvme/044 | 19 +++----------- tests/nvme/045 | 18 +++---------- tests/nvme/047 | 21 ++------------- tests/nvme/048 | 17 ++----------- tests/nvme/rc | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++ 34 files changed, 141 insertions(+), 519 deletions(-) diff --git a/tests/nvme/003 b/tests/nvme/003 index 71b82ce758a3..b5ea2720100e 100755 --- a/tests/nvme/003 +++ b/tests/nvme/003 @@ -22,15 +22,8 @@ test() { _setup_nvmet - local loop_dev - local port - port="$(_create_nvmet_port "${nvme_trtype}")" - - loop_dev="$(losetup -f)" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" nqn.2014-08.org.nvmexpress.discovery @@ -46,9 +39,8 @@ test() { fi _nvme_disconnect_subsys nqn.2014-08.org.nvmexpress.discovery - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" + + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/004 b/tests/nvme/004 index 697c758d3059..31af8737857b 100755 --- a/tests/nvme/004 +++ b/tests/nvme/004 @@ -22,19 +22,8 @@ test() { _setup_nvmet - local port - local loop_dev - port="$(_create_nvmet_port "${nvme_trtype}")" - - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -44,12 +33,8 @@ test() { cat "/sys/block/${nvmedev}n1/wwid" _nvme_disconnect_subsys ${def_subsysnqn} - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - losetup -d "$loop_dev" - rm "${def_file_path}" + + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/005 b/tests/nvme/005 index 4ca87ff48016..f9956e960a56 100755 --- a/tests/nvme/005 +++ b/tests/nvme/005 @@ -21,20 +21,9 @@ test() { _setup_nvmet - local port - local loop_dev local nvmedev - port="$(_create_nvmet_port "${nvme_trtype}")" - - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -43,13 +32,8 @@ test() { echo 1 > "/sys/class/nvme/${nvmedev}/reset_controller" _nvme_disconnect_ctrl "${nvmedev}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_host "${def_hostnqn}" - losetup -d "$loop_dev" - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/006 b/tests/nvme/006 index 910204aaeb90..d85f64b702eb 100755 --- a/tests/nvme/006 +++ b/tests/nvme/006 @@ -20,25 +20,10 @@ test() { _setup_nvmet - local port - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" + _nvmet_target_setup - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - - losetup -d "$loop_dev" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/007 b/tests/nvme/007 index db00bdcc2d08..feac5060a950 100755 --- a/tests/nvme/007 +++ b/tests/nvme/007 @@ -19,20 +19,10 @@ test() { _setup_nvmet - local port - truncate -s "${nvme_img_size}" "${def_file_path}" + _nvmet_target_setup --blkdev=file - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/008 b/tests/nvme/008 index bd5e10fbfb99..f4b45b2f1c11 100755 --- a/tests/nvme/008 +++ b/tests/nvme/008 @@ -20,19 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -42,14 +32,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/009 b/tests/nvme/009 index c9a4b57ac288..63614c91a96d 100755 --- a/tests/nvme/009 +++ b/tests/nvme/009 @@ -19,16 +19,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -38,12 +31,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/010 b/tests/nvme/010 index 19bb7f3fc7a7..e782a9bb06f3 100755 --- a/tests/nvme/010 +++ b/tests/nvme/010 @@ -20,19 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -45,14 +35,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/011 b/tests/nvme/011 index 0e54c2588bc8..7329e0505f59 100755 --- a/tests/nvme/011 +++ b/tests/nvme/011 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -42,12 +35,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/012 b/tests/nvme/012 index c6b82c821bf2..6072eed3532a 100755 --- a/tests/nvme/012 +++ b/tests/nvme/012 @@ -24,19 +24,9 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -48,14 +38,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/013 b/tests/nvme/013 index 441db7477d75..c9be60675cc4 100755 --- a/tests/nvme/013 +++ b/tests/nvme/013 @@ -23,16 +23,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -44,12 +37,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/014 b/tests/nvme/014 index 3656f9399687..d49e8f3cce4d 100755 --- a/tests/nvme/014 +++ b/tests/nvme/014 @@ -20,22 +20,12 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev local size local bs local count - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -54,14 +44,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/015 b/tests/nvme/015 index bc04e39c628c..b418d785ab27 100755 --- a/tests/nvme/015 +++ b/tests/nvme/015 @@ -20,19 +20,12 @@ test() { _setup_nvmet - local port local nvmedev local size local bs local count - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -51,12 +44,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/018 b/tests/nvme/018 index 68729c3cb070..19e439f3f3e0 100755 --- a/tests/nvme/018 +++ b/tests/nvme/018 @@ -21,16 +21,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -48,12 +41,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/019 b/tests/nvme/019 index 33a25d52e9fd..15e98c40134f 100755 --- a/tests/nvme/019 +++ b/tests/nvme/019 @@ -20,21 +20,11 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev local nblk_range="10,10,10,10,10,10,10,10,10,10" local sblk_range="100,200,300,400,500,600,700,800,900,1000" - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -46,14 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/020 b/tests/nvme/020 index f436cdc8b262..aae40e7131e0 100755 --- a/tests/nvme/020 +++ b/tests/nvme/020 @@ -19,18 +19,11 @@ test() { _setup_nvmet - local port local nvmedev local nblk_range="10,10,10,10,10,10,10,10,10,10" local sblk_range="100,200,300,400,500,600,700,800,900,1000" - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -42,12 +35,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/021 b/tests/nvme/021 index 5043fe4916be..f9bed1546307 100755 --- a/tests/nvme/021 +++ b/tests/nvme/021 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -43,12 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/022 b/tests/nvme/022 index 8b6f610c4894..e3e67b0996df 100755 --- a/tests/nvme/022 +++ b/tests/nvme/022 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -43,12 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/023 b/tests/nvme/023 index 90af0338e81f..c8d1e4619822 100755 --- a/tests/nvme/023 +++ b/tests/nvme/023 @@ -20,19 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -46,14 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/024 b/tests/nvme/024 index 7a89ddd79fd9..2308b42968e1 100755 --- a/tests/nvme/024 +++ b/tests/nvme/024 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -42,12 +35,7 @@ test() { fi _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/025 b/tests/nvme/025 index 90f214eff6c8..b3851d8ceb14 100755 --- a/tests/nvme/025 +++ b/tests/nvme/025 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -43,12 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/026 b/tests/nvme/026 index ec352acaa489..38acfcc373b4 100755 --- a/tests/nvme/026 +++ b/tests/nvme/026 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -43,12 +36,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/027 b/tests/nvme/027 index 339f7605a9f5..2d65b3e1a820 100755 --- a/tests/nvme/027 +++ b/tests/nvme/027 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -40,14 +33,10 @@ test() { if ! nvme ns-rescan "/dev/${nvmedev}" >> "$FULL" 2>&1; then echo "ERROR: ns-rescan failed" fi - _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" + _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/028 b/tests/nvme/028 index 7f387eb337f6..eec1807884a9 100755 --- a/tests/nvme/028 +++ b/tests/nvme/028 @@ -20,16 +20,9 @@ test() { _setup_nvmet - local port local nvmedev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -40,14 +33,10 @@ test() { if ! nvme list-subsys 2>> "$FULL" | grep -q "${nvme_trtype}"; then echo "ERROR: list-subsys" fi - _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" + _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/029 b/tests/nvme/029 index 461e6c6c4454..bbc481437fc8 100755 --- a/tests/nvme/029 +++ b/tests/nvme/029 @@ -53,19 +53,9 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" @@ -83,14 +73,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/040 b/tests/nvme/040 index ed6df3bbed52..7759bac9b43c 100755 --- a/tests/nvme/040 +++ b/tests/nvme/040 @@ -21,18 +21,10 @@ test() { _setup_nvmet - local port - local loop_dev local nvmedev local fio_pid - truncate -s "${nvme_img_size}" "${def_file_path}" - loop_dev="$(losetup -f --show "${def_file_path}")" - - port="$(_create_nvmet_port "${nvme_trtype}")" - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" nvmedev=$(_find_nvme_dev "${def_subsysnqn}") @@ -54,14 +46,7 @@ test() { { kill "${fio_pid}"; wait; } &> /dev/null - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm -f "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/041 b/tests/nvme/041 index bc84412ccb46..99c24ad4e6a2 100755 --- a/tests/nvme/041 +++ b/tests/nvme/041 @@ -24,7 +24,6 @@ test() { _setup_nvmet - local port local hostkey local ctrldev @@ -34,13 +33,7 @@ test() { return 1 fi - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" "${hostkey}" + _nvmet_target_setup --blkdev=file --hostkey "${hostkey}" # Test unauthenticated connection (should fail) echo "Test unauthenticated connection (should fail)" @@ -59,14 +52,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - - _remove_nvmet_port "${port}" - - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/042 b/tests/nvme/042 index 47e1b95ffdc6..f0e196a13ba0 100755 --- a/tests/nvme/042 +++ b/tests/nvme/042 @@ -24,18 +24,12 @@ test() { _setup_nvmet - local port local hmac local key_len local hostkey local ctrldev - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file for hmac in 0 1 2 3; do echo "Testing hmac ${hmac}" @@ -71,14 +65,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" done - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - - _remove_nvmet_port "${port}" - - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/043 b/tests/nvme/043 index 15676f88d556..c95f38e6c71b 100755 --- a/tests/nvme/043 +++ b/tests/nvme/043 @@ -25,7 +25,6 @@ test() { _setup_nvmet - local port local hash local dhgroup local hostkey @@ -37,12 +36,7 @@ test() { return 1 fi - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" "${hostkey}" + _nvmet_target_setup --blkdev=file --hostkey "${hostkey}" for hash in "hmac(sha256)" "hmac(sha384)" "hmac(sha512)" ; do @@ -72,14 +66,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" done - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - - _remove_nvmet_port "${port}" - - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/044 b/tests/nvme/044 index 9407ac6338c8..f48458a82323 100755 --- a/tests/nvme/044 +++ b/tests/nvme/044 @@ -25,7 +25,6 @@ test() { _setup_nvmet - local port local hostkey local ctrlkey local ctrldev @@ -42,13 +41,8 @@ test() { return 1 fi - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" \ - "${hostkey}" "${ctrlkey}" + _nvmet_target_setup --blkdev=file --ctrlkey "${ctrlkey}" \ + --hostkey "${hostkey}" _set_nvmet_dhgroup "${def_hostnqn}" "ffdhe2048" @@ -95,14 +89,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - - _remove_nvmet_port "${port}" - - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/045 b/tests/nvme/045 index 396bcdefbcba..902eb26bef8e 100755 --- a/tests/nvme/045 +++ b/tests/nvme/045 @@ -26,7 +26,6 @@ test() { _setup_nvmet - local port local hostkey local new_hostkey local ctrlkey @@ -46,12 +45,8 @@ test() { return 1 fi - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" "${hostkey}" "${ctrlkey}" + _nvmet_target_setup --blkdev=file --ctrlkey "${ctrlkey}" \ + --hostkey "${hostkey}" _set_nvmet_dhgroup "${def_hostnqn}" "ffdhe2048" @@ -114,14 +109,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - - _remove_nvmet_port "${port}" - - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/047 b/tests/nvme/047 index 1da24b5638a6..94d7d50f9f98 100755 --- a/tests/nvme/047 +++ b/tests/nvme/047 @@ -22,20 +22,10 @@ test() { _setup_nvmet - local port local nvmedev - local loop_dev local rand_io_size - truncate -s "${nvme_img_size}" "${def_file_path}" - - loop_dev="$(losetup -f --show "${def_file_path}")" - - _create_nvmet_subsystem "${def_subsysnqn}" "${loop_dev}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" \ --nr-write-queues 1 || echo FAIL @@ -55,14 +45,7 @@ test() { _nvme_disconnect_subsys "${def_subsysnqn}" >> "$FULL" 2>&1 - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - losetup -d "${loop_dev}" - - rm "${def_file_path}" + _nvmet_target_cleanup echo "Test complete" } diff --git a/tests/nvme/048 b/tests/nvme/048 index 19234a5b3791..06e1fa6b4f65 100755 --- a/tests/nvme/048 +++ b/tests/nvme/048 @@ -87,16 +87,8 @@ test() { local cfs_path="${NVMET_CFS}/subsystems/${def_subsysnqn}" local skipped=false - local port - truncate -s "${nvme_img_size}" "${def_file_path}" - - _create_nvmet_subsystem "${def_subsysnqn}" "${def_file_path}" \ - "${def_subsys_uuid}" - port="$(_create_nvmet_port "${nvme_trtype}")" - - _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" - _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" + _nvmet_target_setup --blkdev=file if [[ -f "${cfs_path}/attr_qid_max" ]] ; then _nvme_connect_subsys "${nvme_trtype}" "${def_subsysnqn}" \ @@ -118,12 +110,7 @@ test() { skipped=true fi - _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" - _remove_nvmet_subsystem "${def_subsysnqn}" - _remove_nvmet_port "${port}" - _remove_nvmet_host "${def_hostnqn}" - - rm "${def_file_path}" + _nvmet_target_cleanup if [[ "${skipped}" = true ]] ; then return 1 diff --git a/tests/nvme/rc b/tests/nvme/rc index fdffc07da34a..261892ed2070 100644 --- a/tests/nvme/rc +++ b/tests/nvme/rc @@ -359,6 +359,12 @@ _cleanup_nvmet() { if [[ "${nvme_trtype}" == "rdma" ]]; then stop_soft_rdma fi + + blkdev="$(losetup -l | awk '$6 == "'"${def_file_path}"'" { print $1 }')" + for dev in ${blkdev}; do + losetup -d "${dev}" + done + rm -f "${def_file_path}" } _setup_nvmet() { @@ -818,6 +824,69 @@ _find_nvme_passthru_loop_dev() { echo "/dev/${dev}n${nsid}" } +_nvmet_target_setup() { + local blkdev_type="device" + local blkdev + local ctrlkey="" + local hostkey="" + local port + + while [[ $# -gt 0 ]]; do + case $1 in + --blkdev) + blkdev_type="$2" + shift 2 + ;; + --ctrlkey) + ctrlkey="$2" + shift 2 + ;; + --hostkey) + hostkey="$2" + shift 2 + ;; + *) + shift + ;; + esac + done + + truncate -s "${nvme_img_size}" "${def_file_path}" + if [[ "${blkdev_type}" == "device" ]]; then + blkdev="$(losetup -f --show "${def_file_path}")" + else + blkdev="${def_file_path}" + fi + + _create_nvmet_subsystem "${def_subsysnqn}" "${blkdev}" \ + "${def_subsys_uuid}" + port="$(_create_nvmet_port "${nvme_trtype}")" + _add_nvmet_subsys_to_port "${port}" "${def_subsysnqn}" + _create_nvmet_host "${def_subsysnqn}" "${def_hostnqn}" \ + "${hostkey}" "${ctrlkey}" +} + +_nvmet_target_cleanup() { + local ports + local port + local blkdev + + _get_nvmet_ports "${def_subsysnqn}" ports + + for port in "${ports[@]}"; do + _remove_nvmet_subsystem_from_port "${port}" "${def_subsysnqn}" + _remove_nvmet_port "${port}" + done + _remove_nvmet_subsystem "${def_subsysnqn}" + _remove_nvmet_host "${def_hostnqn}" + + blkdev="$(losetup -l | awk '$6 == "'"${def_file_path}"'" { print $1 }')" + if [[ -n "${blkdev}" ]] ; then + losetup -d "${blkdev}" + fi + rm "${def_file_path}" +} + _nvmet_passthru_target_setup() { local subsys_name=$1 local port