]> git.baikalelectronics.ru Git - kernel.git/commit
GFS2: Take account of blockages when using reserved blocks
authorSteven Whitehouse <swhiteho@redhat.com>
Mon, 30 Jul 2012 10:06:08 +0000 (11:06 +0100)
committerSteven Whitehouse <swhiteho@redhat.com>
Thu, 13 Sep 2012 09:30:58 +0000 (10:30 +0100)
commitb07ff72c67a06773f1c65ab79d21152e28429765
treecc7f26be5373eeb7a9489d7d3a17f3a3a88a2f12
parent6b08ecc3fcec4f47251a784167aad8c3b99e1c5a
GFS2: Take account of blockages when using reserved blocks

The claim_reserved_blks() function was not taking account of
the possibility of "blockages" while performing allocation.
This can be caused by another node allocating something in
the same extent which has been reserved locally.

This patch tests for this condition and then skips the remainder
of the reservation in this case. This is a relatively rare event,
so that it should not affect the general performance improvement
which the block reservations provide.

The claim_reserved_blks() function also appears not to be able
to deal with reservations which cross bitmap boundaries, but
that can be dealt with in a future patch since we don't generate
boundary crossing reservations currently.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Reported-by: David Teigland <teigland@redhat.com>
Cc: Bob Peterson <rpeterso@redhat.com>
fs/gfs2/rgrp.c