From 72ed3703fb8e53de066b9d02486e9874d27a20cb Mon Sep 17 00:00:00 2001 From: Yongxue Hong Date: Wed, 24 Jun 2020 16:23:12 +0800 Subject: [PATCH] fio_linux: Support nvme storage backend Signed-off-by: Yongxue Hong --- qemu/tests/cfg/fio_linux.cfg | 4 ++++ qemu/tests/fio_linux.py | 12 +++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/qemu/tests/cfg/fio_linux.cfg b/qemu/tests/cfg/fio_linux.cfg index 3a098752..7b2e7964 100644 --- a/qemu/tests/cfg/fio_linux.cfg +++ b/qemu/tests/cfg/fio_linux.cfg @@ -17,6 +17,10 @@ fio_options += '${fio_default_options} --rw=randrw' s390x: fio_install_timeout = 600 + nvme_direct: + fio_filename = '/home/test' + boot_drive_stg0 = no + force_create_image_stg0 = no variants: - aio_native: image_aio_stg0 = native diff --git a/qemu/tests/fio_linux.py b/qemu/tests/fio_linux.py index b06cc806..b06b9802 100644 --- a/qemu/tests/fio_linux.py +++ b/qemu/tests/fio_linux.py @@ -40,6 +40,10 @@ def run(test, params, env): test.error("Failed to get '%s' drive path" % data_image) yield drive_path[5:] + def _run_fio_test(target): + for option in params['fio_options'].split(';'): + fio.run('--filename=%s %s' % (target, option)) + data_images = params["images"].split()[1:] info = [] for image in data_images: @@ -53,9 +57,11 @@ def run(test, params, env): session = vm.wait_for_login(timeout=float(params.get("login_timeout", 240))) fio = generate_instance(params, vm, 'fio') try: - for did in _get_data_disks(): - for option in params['fio_options'].split(';'): - fio.run('--filename=%s %s' % (did, option)) + if params.get('image_backend') == 'nvme_direct': + _run_fio_test(params.get('fio_filename')) + else: + for did in _get_data_disks(): + _run_fio_test(did) finally: fio.clean() session.close() -- GitLab