diff options
author | 2018-10-02 14:59:54 +0100 | |
---|---|---|
committer | 2021-02-17 19:30:26 +0100 | |
commit | 725d0e9d464d567cd9290e29879d8bffc92013f8 (patch) | |
tree | 1951e94f350258b056dd5c790f3317a07ddb5d95 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | gfs2: Rename rs_{free -> requested} and rd_{reserved -> requested} (diff) | |
download | wireguard-linux-725d0e9d464d567cd9290e29879d8bffc92013f8.tar.xz wireguard-linux-725d0e9d464d567cd9290e29879d8bffc92013f8.zip |
gfs2: Add per-reservation reserved block accounting
Add a rs_reserved field to struct gfs2_blkreserv to keep track of the number of
blocks reserved by this particular reservation, and a rd_reserved field to
struct gfs2_rgrpd to keep track of the total number of reserved blocks in the
resource group. Those blocks are exclusively reserved, as opposed to the
rs_requested / rd_requested blocks which are tracked in the reservation tree
(rd_rstree) and which can be stolen if necessary.
When making a reservation with gfs2_inplace_reserve, rs_reserved is set to
somewhere between ap->min_target and ap->target depending on the number of free
blocks in the resource group. When allocating blocks with gfs2_alloc_blocks,
rs_reserved is decremented accordingly. Eventually, any reserved but not
consumed blocks are returned to the resource group by gfs2_inplace_release.
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions