[dm-devel] [PATCH] dm zoned: Potential NULL dereference in dmz_do_reclaim()
Dmitry Fomichev
Dmitry.Fomichev at wdc.com
Mon Aug 19 16:11:18 UTC 2019
Dan,
On Mon, 2019-08-19 at 12:58 +0300, Dan Carpenter wrote:
> This function is supposed to return error pointers so it matches the
> dmz_get_rnd_zone_for_reclaim() function. The current code could lead to
> a NULL dereference in dmz_do_reclaim()
>
> Fixes: b234c6d7a703 ("dm zoned: improve error handling in reclaim")
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
> ---
> drivers/md/dm-zoned-metadata.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/md/dm-zoned-metadata.c b/drivers/md/dm-zoned-metadata.c
> index 2a5bc51fd6d5..595a73110e17 100644
> --- a/drivers/md/dm-zoned-metadata.c
> +++ b/drivers/md/dm-zoned-metadata.c
> @@ -1588,7 +1588,7 @@ static struct dm_zone *dmz_get_seq_zone_for_reclaim(struct dmz_metadata *zmd)
> struct dm_zone *zone;
>
> if (list_empty(&zmd->map_seq_list))
> - return NULL;
> + return ERR_PTR(-EBUSY);
>
> list_for_each_entry(zone, &zmd->map_seq_list, link) {
> if (!zone->bzone)
> @@ -1597,7 +1597,7 @@ static struct dm_zone *dmz_get_seq_zone_for_reclaim(struct dmz_metadata *zmd)
> return zone;
> }
>
> - return NULL;
> + return ERR_PTR(-EBUSY);
> }
>
> /*
thanks for noticing this -
Reviewed-by: Dmitry Fomichev <dmitry.fomichev at wdc.com>
More information about the dm-devel
mailing list