On 4/15/21 9:58 AM, Johannes Thumshirn wrote:
When relocating a block group the freed up space is not discarded in one
big block, but each extent is discarded on it's own with -odisard=sync.
For a zoned filesystem we need to discard the whole block group at once,
so btrfs_discard_extent() will translate the discard into a
REQ_OP_ZONE_RESET operation, which then resets the device's zone.
Link:
https://lore.kernel.org/linux-btrfs/459e2932c48e12e883dcfd3dda828d9da251d5b5.1617962110.git.johannes.thumsh...@wdc.com
Signed-off-by: Johannes Thumshirn <johannes.thumsh...@wdc.com>
What would be cool is if we could disable discard per bg so we don't discard at
all during the relocation, and then discard the whole block group no matter if
we have zoned or not. However not really something you need to do, just
thinking out loud
Reviewed-by: Josef Bacik <jo...@toxicpanda.com>
Thanks,
Josef