GFS2: Fix unclaimed_blocks() wrapping bug and clean up
authorSteven Whitehouse <swhiteho@redhat.com>
Sat, 25 Aug 2012 17:21:47 +0000 (18:21 +0100)
committerSteven Whitehouse <swhiteho@redhat.com>
Mon, 24 Sep 2012 09:47:21 +0000 (10:47 +0100)
commitc743ffd09fa7d3464c6f74767a3ae2ca5dc3ebf7
treea3d6e4b359f6523c91f742b091c714ad72453c58
parent9e733d3923fb0e4eeae7b827019332d246576a22
GFS2: Fix unclaimed_blocks() wrapping bug and clean up

When rgd->rd_free_clone is less than rgd->rd_reserved, the
unclaimed_blocks() calculation would wrap and produce
incorrect results. This patch checks for this condition
when this function is called from gfs2_mblk_search()

In addition, the use of this particular function in other
places in the code has been dropped by means of a general
clean up of gfs2_inplace_reserve(). This function is now
much easier to follow.

Also the setting of the rgd->rd_last_alloc field is corrected.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/rgrp.c