def subsystem_namespace_mapping_test(trtype, traddr, subsystem_cnt, volume_cnt): nvmf = nvmf_common.Nvmf("[ Subsystem-Namespace Mapping ", True, spdk_rpc_path) bringup_argument = { 'log_path': args.log_path, 'ibof_root': ibof_root, 'transport': trtype, 'target_ip': traddr, 'subsystem_cnt': subsystem_cnt, 'volume_cnt': volume_cnt, 'stdout_type': stdout_type } common_test_lib.bringup_multiple_volume(**bringup_argument) map = nvmf.get_subsystem_ns_map() ret = nvmf.check_subsystem_ns_mapping(map, "subsystem1", "bdev_3") success = (ret == True) ret = nvmf.check_subsystem_ns_mapping(map, "subsystem3", "bdev_3") success &= (ret == False) common_test_lib.terminate_pos(ibof_root, stdout_type) common_test_lib.print_result("[ Subsystem-Namespace Mapping Test ]", success) return success
def read_out_range_fail_test(): test_name = "Read out of range" common_test_lib.print_start(test_name) common_test_lib.bringup_pos(**bringup_argument) ret = execute_fio(readwrite="read", offset=volume_size, verify=False) common_test_lib.terminate_pos(pos_root, stdout_type) success = (ret == 1) common_test_lib.print_result(test_name, success) return success
def verify_test(): test_name = "Verify" common_test_lib.print_start(test_name) common_test_lib.bringup_pos(**bringup_argument) ret = execute_fio(readwrite="write", offset=0, verify=True) common_test_lib.terminate_pos(pos_root, stdout_type) success = (ret == 0) common_test_lib.print_result(test_name, success) return success
def create_transport_test(EXPECT, trtype, b, n): nvmf = nvmf_common.Nvmf("[ Create Transport ", EXPECT, spdk_rpc_path) common_test_lib.start_pos(args.log_path, ibof_root) ret = nvmf.create_transport(trtype, b, n) common_test_lib.expect_true(ret, "Transport Creation") common_test_lib.terminate_pos(ibof_root, stdout_type) success = (EXPECT == ret) common_test_lib.print_result("[ Create Transport Test ]", success) return success
def ClearEnv(): ## in this function, do not check error. for proc in psutil.process_iter(): try: if "fio" in proc.name(): proc.kill() proc.wait() except psutil.NoSuchProcess: pass common_test_lib.terminate_pos(POS_ROOT, subprocess.DEVNULL) command = NVME_CLI_CMD + ' disconnect -n ' + NQN ret = subprocess.call(command, shell=True)
def create_subsystem_test(EXPECT, nqn, serial_num, model_num, max_ns, allow_any_host): nvmf = nvmf_common.Nvmf("[ Create Subsystem ", EXPECT, spdk_rpc_path) common_test_lib.start_pos(args.log_path, ibof_root) ret = nvmf.create_subsystem(nqn, serial_num, model_num, max_ns, allow_any_host) common_test_lib.expect_true(ret, "Subsystem Creation") common_test_lib.terminate_pos(ibof_root, stdout_type) success = (EXPECT == ret) common_test_lib.print_result("[ Create Subsystem Test ]", success) return success
def PowerOff(): stdout_type = subprocess.DEVNULL common_test_lib.terminate_pos(POS_ROOT, stdout_type) print("########## disconnect nvmf controllers ##########") command = NVME_CLI_CMD + ' disconnect -n ' + NQN ret = subprocess.call(command, shell=True) if (ret != 0): print("##### Disconnect Failed!! ######") return ret print("########### Power off Completed #################") return 0
def delete_subsystem_test(EXPECT, nqn, allow_any_host): nvmf = nvmf_common.Nvmf("[ Delete Subsystem ", EXPECT, spdk_rpc_path) common_test_lib.start_pos(args.log_path, ibof_root) ret = nvmf.create_subsystem("nqn.2019-04.pos:subsystem1",\ "POS00000000000001","POS_VOLUME_EXTENTION", "256", allow_any_host) common_test_lib.expect_true(ret, "Subsystem Creation") ret = nvmf.delete_subsystem(nqn) common_test_lib.expect_true(ret, "Subsystem Deletion") common_test_lib.terminate_pos(ibof_root, stdout_type) success = (EXPECT == ret) common_test_lib.print_result("[ Delete Subsystem Test ]", success) return success
def add_subsystem_listener_test(EXPECT, nqn, trtype, traddr, trsvid, allow_any_host): nvmf = nvmf_common.Nvmf("[ Add Subsystem Listener ", EXPECT, spdk_rpc_path) common_test_lib.start_pos(args.log_path, ibof_root) ret = nvmf.create_transport(trtype, "64", "2048") common_test_lib.expect_true(ret, "Transport Creation") ret = nvmf.create_subsystem("nqn.2019-04.pos:subsystem1",\ "POS00000000000001","POS_VOLUME_EXTENTION", "256", allow_any_host) common_test_lib.expect_true(ret, "Subsystem Creation") ret = nvmf.add_subsystem_listener(nqn, trtype, traddr, trsvid) common_test_lib.expect_true(ret, "Subsystem Listener Added") common_test_lib.terminate_pos(ibof_root, stdout_type) success = (EXPECT == ret) common_test_lib.print_result("[ Add Subsystem Listener Test ]", success) return success