gfs2: Fix gfs2_testbit to use clone bitmaps
authorBob Peterson <rpeterso@redhat.com>
Tue, 7 Aug 2018 15:07:00 +0000 (10:07 -0500)
committerBob Peterson <rpeterso@redhat.com>
Tue, 7 Aug 2018 15:07:00 +0000 (10:07 -0500)
commitdffe12a82826082d2129ef91b17b257254cb60fc
tree8fea704759c5760f46a27468f6d8ec4dbbcc5c15
parent21e2156f3c4b2ad8b780a6d02342ca0e028a8acd
gfs2: Fix gfs2_testbit to use clone bitmaps

Function gfs2_testbit is called in three places. Two of those places,
gfs2_alloc_extent and gfs2_unaligned_extlen, should be using the clone
bitmaps, not the "real" bitmaps. Function gfs2_unaligned_extlen is used
by the block reservations scheme to determine the length of an extent of
free blocks. Before this patch, it wasn't using the clone bitmap, which
means recently-freed blocks were treated as free blocks for the purposes
of an allocation.

This patch adds a new parameter to gfs2_testbit to indicate whether or
not the clone bitmaps should be used (if available).

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Reviewed-by: Andreas Gruenbacher <agruenba@redhat.com>
fs/gfs2/incore.h
fs/gfs2/rgrp.c