dm zoned: Fix reclaim zone selection
authorShin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Fri, 19 Jun 2020 07:49:56 +0000 (16:49 +0900)
committerMike Snitzer <snitzer@redhat.com>
Fri, 19 Jun 2020 16:29:39 +0000 (12:29 -0400)
commitf2cd9a5e85dc25e10f6318bc6fbcb7dcff262561
tree8a4cfca800c0266879e513dce92c8c242c160f70
parent3ee39573e567eded4f73e1e22216034bc29f3813
dm zoned: Fix reclaim zone selection

When dm zoned has multiple devices, random zones are never selected for
reclaim if all reserved sequential write zones are in use and no
sequential write required zones can be selected for reclaim. This can
lead to deadlocks as selecting a cache zone allows reclaiming a
sequential zone, ensuring forward progress.

Fix this by always defaulting to selecting a random zone when no
sequential write required zone can be selected.

[Damien: fix commit message]

Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm-zoned-metadata.c