Re: [PATCH 00/12] zbd: fix problems of random write with unaligned block size
Damien Le Moal <[email protected]> Mon, 26 Jan 2026 15:50:28 +0900
| Newsgroups | org.kernel.vger.fio |
|---|---|
| Organization | Western Digital Research |
| Message-ID | <[email protected]> |
On 1/9/26 11:35 AM, Shin'ichiro Kawasaki wrote: > When random write workload runs with zonemode=zbd and block size > unaligned to the zone size or the initial write pointer position, two > problems are observed. The first one is write target zone selection. > When one zone is filled by the write workload, the same zone is selected > as the next write target. This results in writes concentrating on > certain zones despite the workload specifies random write. > > The second problem is write performance. The writes with unaligned block > size leaves small remainder areas at the end of write target zones. To > free up the zone resource, current fio does zone finish operations to > the zones with the small remainder. Fio also calls io_u_quiesce() to > prepare for the zone finish operation and the write target zone > switching. These zone finish operation and io_u_quiesce() calls > significantly degrade the random write performance. > > This series address these problems. The first patch addresses the write > target zone selection problem. The following four patches address the > performance problem. Next three patches clean up the code by removing > the zone finish operation. The last four patches adjust documentation > and the test set for the changes in the series. > > Shin'ichiro Kawasaki (12): > zbd: fix zone selection of random writes > zbd: set norandommap=1 when zonemode=zbd is specified > zbd: write zone remainders smaller than minimum block size > zbd: fix write zone accounting > zbd: remove io_u_quiesce() at write target zone switch > zbd: remove zbd_finish_zone() > oslib: remove blkzoned_finish_zone() > ioengine: remove finish_zone() > doc: explain norandommap restriction and small remainder of > zonemode=zbd > t/zbd: avoid test case 14 failure due to no randam map > t/zbd: avoid test case 33 failure due to zone end remainder > t/zbd: avoid test case 71 failure due to zone end remainder For the series: Tested-by Damien Le Moal <[email protected]> -- Damien Le Moal Western Digital Research