Skip to content

Fix that the function libzbc_report_zones fails prematurely when encountering SOBR zone types if using libzbc engine#2083

Open
rorychen wants to merge 1 commit intoaxboe:masterfrom
rorychen:run_HSMR
Open

Fix that the function libzbc_report_zones fails prematurely when encountering SOBR zone types if using libzbc engine#2083
rorychen wants to merge 1 commit intoaxboe:masterfrom
rorychen:run_HSMR

Conversation

@rorychen
Copy link
Copy Markdown

@rorychen rorychen commented Apr 24, 2026

Support random write on SWR zones on Hybrid SMR drives with libzbc engine

Hybrid SMR has SWR zones. This change can support libzbc engine to run random write workload on SWR zones of Hybrid SMR drives. Require libzbc revision >= 6.0.

Signed-off-by: Rory Chen rory.c.chen@seagate.com

@vincentkfu
Copy link
Copy Markdown
Collaborator

@kawasaki @damien-lemoal

@vincentkfu
Copy link
Copy Markdown
Collaborator

@rorychen please investigate the build errors.

@rorychen
Copy link
Copy Markdown
Author

Hi Vincent,

I fixed it and verified the compile on bench. Sorry for wrong characters in last code.

Comment thread zbd_types.h
ZBD_ZONE_TYPE_SWR = 0x2, /* Sequential write required */
ZBD_ZONE_TYPE_SWP = 0x3, /* Sequential write preferred */
ZBD_ZONE_TYPE_SOBR= 0x4,  /* Sequential Of Before Required */
ZBD_ZONE_TYPE_SOBR = 0x4, /* Sequential Of Before Required */
Copy link
Copy Markdown
Contributor

@damien-lemoal damien-lemoal Apr 25, 2026

Choose a reason for hiding this comment

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

While at it, please fix the typo: Sequential or Before Required
Also, this patch should be folded into the previous one.

Copy link
Copy Markdown
Contributor

@damien-lemoal damien-lemoal left a comment

Choose a reason for hiding this comment

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

The patch title does not make sense given the changes. All I see is that you are handling the SOBR zone type as a valid one, but there is nothing related to "running" nor to "SWR" in these changes.

Furthermore, "Hybrid SMR" is not a technical/standard term. Please refer to ZBC/ZAC "Zone Domains" or "Zone Realms" feature.

Finally, your patch also has not commit message nor a Signed-off-by tag. The commit message should really be added to explain what is missing and how your change improves support for Zone Domains/Zone Realms drives.

…untering SOBR zone types if using libzbc engine. With the fix, fio will not quit early when reading the zone informatio from SATA HDD drives with Zone Domain features enabled.
@rorychen
Copy link
Copy Markdown
Author

The patch title does not make sense given the changes. All I see is that you are handling the SOBR zone type as a valid one, but there is nothing related to "running" nor to "SWR" in these changes.

Furthermore, "Hybrid SMR" is not a technical/standard term. Please refer to ZBC/ZAC "Zone Domains" or "Zone Realms" feature.

Finally, your patch also has not commit message nor a Signed-off-by tag. The commit message should really be added to explain what is missing and how your change improves support for Zone Domains/Zone Realms drives.

Thanks for the suggestion. Yes, it's not for the fix related to SWR and the patch title is not accurate. I reword the commit message and combine 2 commits to one new commit. The background is that I'd like to run fio with libzbc engine on SWR zones on a SATA HDD drive with Zone Domain feature enabled but fio aborted unexpectedly. The reason is that current function libzbc_report_zones lacks the handling for SOBR zone type so fio would quit early when processing zone information after reporting the zones from one SATA HDD with Zone Domain feature enabled.

@rorychen rorychen changed the title Support random write on SWR zones on Hybrid SMR drives with libzbc engine Fix that the function libzbc_report_zones fails prematurely when encountering SOBR zone types if using libzbc engine Apr 25, 2026
@damien-lemoal
Copy link
Copy Markdown
Contributor

Your patch format is not correct: the entire commit message is the commit title. Please see "git log" for examples of correctly formatted commits: the first line is the title, followed by a blank line and the commit message. After that, add a blank line and your Signed-off-by tag.

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