Re: [BUG] active zones exceeded error with max_open_zones
Shinichiro Kawasaki <[email protected]>
| Newsgroups | org.kernel.vger.fio |
|---|---|
| Message-ID | <ptncklg56axp5463pdaadt5a3xxepeu4vnnl3qqtg3k2elpsmj@lcl7boaxswn5> |
On Apr 23, 2025 / 13:11, Sean Anderson wrote: > Hi, > > I'm getting an "active zones exceeded" error when running fio with > --rw=randwrite mode: > > # fio --bs=4k --rw=randwrite --norandommap --fsync=1 --number_ios=16384 --name=flushes --direct=1 --zonemode=zbd --max_open_zones=1978 --filename=/dev/my_zone_dev > flushes: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=psync, iodepth=1 Hi, The block size is 4k. And according to the blkzone report, it looks like the gap between the zone size and zone capacity is 512b. So, I guess the fio can not fill the gap by 4k writes. It looks likely this unalignment between the gap and the block size left unwritten small remainders in many zones, then many zones are kept open and the device exceeded the max active zone limit. Based on this guess, I suggest to try with 512 byte block size to align it with the gap. > fio-3.39 Recently, I contributed a fix which handles the case many small remainders are left by random write workload to zoned block devices [1]. The fix was upstreamed after the fio version 3.39. I also suggest to try out the latest fio code with 4k blocksize. [1] https://github.com/axboe/fio/commit/e2e29bf6f8300186d267fa46a7b266d14d174575