Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tests: Use fio zbd zonemode when testing SMR drives #1

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jsvaerke
Copy link

Fix two issues encountered with CDL on SMR drives:

  • tell fio to use zbd zonemode when using SMR drives
  • add extra overhead time to maximum runtime, as fio can take a long time initializing internal zone data structures

Fix two issues encountered with CDL on SMR drives:
- tell fio to use zbd zonemode when using SMR drives
- add extra overhead time to maximum runtime, as fio can
  take a long time initializing internal zone data structures
@floatious
Copy link
Collaborator

The code itself looks fine to me.

However, please:

  1. Split this into two commits, with one logical change per commit.
  2. Improve the commit messages to be a bit more descriptive of why they are needed.

@@ -750,6 +763,10 @@ function fio_common_cmdline()

fi

if [ "$(devtype ${dev})" == "smr" ]; then
fiocmd+=" --zonemode=zbd"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doing this only is far from enough because the drive may actually have absolutely nothing to read if all zones are empty and we have no conventional zones. If the drive has conventional zones, then read tests will endup reading only the tiny conventional zones LBA range which will not generate enough seek overhead to get a correct results for most tests that rely on failed IOs due to the IO time limits being exceeded. So we need preconditioning of the SMR drive by filling zones before starting the tests. E.g. filling up 1 zone every 100 zone should be enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants