On 2020/04/08 9:07, Vincent Fu wrote: > On 4/7/20 4:48 PM, Jens Axboe wrote: > > On 4/6/20 6:58 PM, Damien Le Moal wrote: > >> This series extend support for zonemode=zbd beyond Linux only and as is > >> allows the use of this zonemode on any platform with regular block > >> devices. The same also applies to Linux systems that do not have zoned > >> block device support (e.g. enterprise distributions with kernels version > >> lower than 4.10). For zoned block device support, Linux implementation > >> is preserved. Other OS specific code can be added with automatic > >> configuration with the configure script to add zoned block device > >> support. > >> > >> Additionally, ioengine operations are updated to allow an IO engine to > >> provide implementations for the zone operations needed to support zoned > >> block devices. This is convenient for cases where the system OS/kernel > >> does not have any support implementation available. > >> > >> Finally, the libzbc IO engine is introduced to support zoned block > >> devices on Linux distributions without native kernel level support (E.g. > >> RedHat/CentOS). SImilarly to the sg ioengine, this new IO engine usesi > >> passthrough commands implemeted by libzbc API to directly access SMR > >> drives. > > > > Looks ok to me, I've applied it. But please send a job file that uses > > it as well to put in examples/, thanks. > > > > The AppVeyor Windows builds fail due to the zbd changes: > > https://ci.appveyor.com/project/axboe/fio/builds/32024485 > > configure reports: > > Zoned block device support no > libzbc engine no > > but nevertheless an attempt is made to build the zbd code. With the changes, zbd.c should be compiled for any OS to enable zonemode=zbd with regular block devices. But oslib/linux-blkzoned.c should not be compiled. What is the compilation error ? Is it something in zbd.c ? I do not have any Windows machine to test builds. -- Damien Le Moal Western Digital Research