On 25/11/2020 01:57, Naohiro Aota wrote: > On Tue, Nov 24, 2020 at 07:36:18PM +0800, Anand Jain wrote: >> On 10/11/20 7:26 pm, Naohiro Aota wrote: >>> This commit implements a zoned chunk/dev_extent allocator. The zoned >>> allocator aligns the device extents to zone boundaries, so that a zone >>> reset affects only the device extent and does not change the state of >>> blocks in the neighbor device extents. >>> >>> Also, it checks that a region allocation is not overlapping any of the >>> super block zones, and ensures the region is empty. >>> >>> Signed-off-by: Naohiro Aota <naohiro.aota@xxxxxxx> >> >> Looks good. >> >> Chunks and stripes are aligned to the zone_size. I guess zone_size won't >> change after the block device has been formatted with it? For testing, >> what if the device image is dumped onto another zoned device with a >> different zone_size? > > Zone size is a drive characteristic, so it never change on the same device. > > Dump/restore on another device with a different zone_size should be banned, > because we cannot ensure device extents are aligned to zone boundaries. Does this mean 'btrfs replace' is banned as well? Or is it allowed to a similar-enough device? What about 'add' followed by 'remove'?