]> 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)
commit437eeb1616d6c2fd4c41bd8c82e2e2a228fa99dc
treecc7f26be5373eeb7a9489d7d3a17f3a3a88a2f12
parenteb4854e7ff9dc97aa4ae298fb11ef04b077fb616
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