test fix: test_ioclass_eviction_priority
Using workload path per each io class Signed-off-by: Karolina Rogowska <karolina.rogowska@intel.com>
This commit is contained in:
parent
a70a862c6d
commit
5f59376ea9
@ -3,8 +3,6 @@
|
||||
# SPDX-License-Identifier: BSD-3-Clause-Clear
|
||||
#
|
||||
|
||||
from datetime import timedelta
|
||||
|
||||
from api.cas import casadm
|
||||
from api.cas import ioclass_config
|
||||
from api.cas.cache_config import (
|
||||
@ -89,13 +87,14 @@ def get_io_class_usage(cache, io_class_id, percent=False):
|
||||
).usage_stats
|
||||
|
||||
|
||||
def run_io_dir(path, size_4k):
|
||||
def run_io_dir(path, size_4k, offset=0):
|
||||
dd = (
|
||||
Dd()
|
||||
.input("/dev/zero")
|
||||
.output(f"{path}")
|
||||
.count(size_4k)
|
||||
.block_size(Size(1, Unit.Blocks4096))
|
||||
.seek(offset)
|
||||
)
|
||||
TestRun.LOGGER.info(f"{dd}")
|
||||
output = dd.run()
|
||||
|
@ -8,13 +8,13 @@ from math import isclose
|
||||
|
||||
import pytest
|
||||
|
||||
from .io_class_common import *
|
||||
from api.cas.cache_config import CacheMode, CacheLineSize
|
||||
from api.cas.ioclass_config import IoClass
|
||||
from storage_devices.disk import DiskType, DiskTypeSet, DiskTypeLowerThan
|
||||
from test_tools import fs_utils
|
||||
from test_tools.disk_utils import Filesystem
|
||||
from test_utils.os_utils import sync, Udev
|
||||
from .io_class_common import *
|
||||
|
||||
|
||||
@pytest.mark.require_disk("cache", DiskTypeSet([DiskType.optane, DiskType.nand]))
|
||||
@ -130,11 +130,15 @@ def test_ioclass_eviction_priority(cache_line_size):
|
||||
::-1
|
||||
] # List is ordered by eviction priority
|
||||
io_classes_evicted = []
|
||||
io_offset = 0
|
||||
for io_class in io_classes_to_evict:
|
||||
io_size = int((io_class.max_occupancy * cache_size) / Unit.Blocks4096)
|
||||
run_io_dir(
|
||||
f"{target_io_class.dir_path}/tmp_file",
|
||||
int((io_class.max_occupancy * cache_size) / Unit.Blocks4096),
|
||||
f"{target_io_class.dir_path}/tmp_file_{io_class.id}",
|
||||
io_size,
|
||||
io_offset
|
||||
)
|
||||
io_offset += io_size
|
||||
part_to_evict_end_occupancy = get_io_class_occupancy(
|
||||
cache, io_class.id, percent=True
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user