scripts/nvmf_perf: move get_nvme_devices to SPDK Target
These functions are used only by SPDKTarget class, so move them out of common module. Signed-off-by: Karol Latecki <karol.latecki@intel.com> Change-Id: I489443f76fbdf4cb3def19a557f4a953a098bbce Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14853 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Michal Berger <michal.berger@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>
This commit is contained in:
parent
0b995d4aba
commit
ede1049911
@ -7,22 +7,6 @@ from collections import OrderedDict
|
|||||||
from json.decoder import JSONDecodeError
|
from json.decoder import JSONDecodeError
|
||||||
|
|
||||||
|
|
||||||
def get_nvme_devices_count():
|
|
||||||
output = get_nvme_devices_bdf()
|
|
||||||
return len(output)
|
|
||||||
|
|
||||||
|
|
||||||
def get_nvme_devices_bdf():
|
|
||||||
print("Getting BDFs for NVMe section")
|
|
||||||
output = check_output("rootdir=$PWD; \
|
|
||||||
source test/common/autotest_common.sh; \
|
|
||||||
get_nvme_bdfs 01 08 02",
|
|
||||||
executable="/bin/bash", shell=True)
|
|
||||||
output = [str(x, encoding="utf-8") for x in output.split()]
|
|
||||||
print("Done getting BDFs")
|
|
||||||
return output
|
|
||||||
|
|
||||||
|
|
||||||
def read_json_stats(file):
|
def read_json_stats(file):
|
||||||
with open(file, "r") as json_data:
|
with open(file, "r") as json_data:
|
||||||
data = json.load(json_data)
|
data = json.load(json_data)
|
||||||
|
@ -980,6 +980,14 @@ class SPDKTarget(Target):
|
|||||||
self.log.info("====DSA settings:====")
|
self.log.info("====DSA settings:====")
|
||||||
self.log.info("DSA enabled: %s" % (self.enable_dsa))
|
self.log.info("DSA enabled: %s" % (self.enable_dsa))
|
||||||
|
|
||||||
|
def get_nvme_devices_count(self):
|
||||||
|
return len(self.get_nvme_devices())
|
||||||
|
|
||||||
|
def get_nvme_devices(self):
|
||||||
|
bdev_subsys_json_obj = json.loads(self.exec_cmd([os.path.join(self.spdk_dir, "scripts/gen_nvme.sh")]))
|
||||||
|
bdev_bdfs = [bdev["params"]["traddr"] for bdev in bdev_subsys_json_obj["config"]]
|
||||||
|
return bdev_bdfs
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_num_cores(core_mask):
|
def get_num_cores(core_mask):
|
||||||
if "0x" in core_mask:
|
if "0x" in core_mask:
|
||||||
@ -1037,7 +1045,7 @@ class SPDKTarget(Target):
|
|||||||
def spdk_tgt_add_nvme_conf(self, req_num_disks=None):
|
def spdk_tgt_add_nvme_conf(self, req_num_disks=None):
|
||||||
self.log.info("Adding NVMe bdevs to config via RPC")
|
self.log.info("Adding NVMe bdevs to config via RPC")
|
||||||
|
|
||||||
bdfs = get_nvme_devices_bdf()
|
bdfs = self.get_nvme_devices()
|
||||||
bdfs = [b.replace(":", ".") for b in bdfs]
|
bdfs = [b.replace(":", ".") for b in bdfs]
|
||||||
|
|
||||||
if req_num_disks:
|
if req_num_disks:
|
||||||
@ -1056,7 +1064,7 @@ class SPDKTarget(Target):
|
|||||||
def spdk_tgt_add_subsystem_conf(self, ips=None, req_num_disks=None):
|
def spdk_tgt_add_subsystem_conf(self, ips=None, req_num_disks=None):
|
||||||
self.log.info("Adding subsystems to config")
|
self.log.info("Adding subsystems to config")
|
||||||
if not req_num_disks:
|
if not req_num_disks:
|
||||||
req_num_disks = get_nvme_devices_count()
|
req_num_disks = self.get_nvme_devices_count()
|
||||||
|
|
||||||
for ip, bdev_num in self.spread_bdevs(req_num_disks):
|
for ip, bdev_num in self.spread_bdevs(req_num_disks):
|
||||||
port = str(4420 + bdev_num)
|
port = str(4420 + bdev_num)
|
||||||
@ -1097,7 +1105,7 @@ class SPDKTarget(Target):
|
|||||||
if self.null_block:
|
if self.null_block:
|
||||||
self.subsys_no = 1
|
self.subsys_no = 1
|
||||||
else:
|
else:
|
||||||
self.subsys_no = get_nvme_devices_count()
|
self.subsys_no = self.get_nvme_devices_count()
|
||||||
self.log.info("Starting SPDK NVMeOF Target process")
|
self.log.info("Starting SPDK NVMeOF Target process")
|
||||||
nvmf_app_path = os.path.join(self.spdk_dir, "build/bin/nvmf_tgt")
|
nvmf_app_path = os.path.join(self.spdk_dir, "build/bin/nvmf_tgt")
|
||||||
proc = subprocess.Popen([nvmf_app_path, "--wait-for-rpc", "-m", self.core_mask])
|
proc = subprocess.Popen([nvmf_app_path, "--wait-for-rpc", "-m", self.core_mask])
|
||||||
|
Loading…
Reference in New Issue
Block a user