class ReservedExtent
Defined at line 63 of file ../../src/storage/blobfs/allocator/extent_reserver.h
Wraps an extent reservation in RAII to hold the reservation active, and release it when it goes
out of scope.
Public Methods
void ReservedExtent (ReservedExtent && o)
Defined at line 48 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
ReservedExtent & operator= (ReservedExtent && o)
Defined at line 53 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
void ~ReservedExtent ()
Defined at line 46 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
const Extent & extent ()
Access the underlying extent which has been reserved.
Unsafe to call if this extent has not actually been reserved.
Defined at line 61 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
void ReservedExtent (const ReservedExtent & )
Defined at line 65 of file ../../src/storage/blobfs/allocator/extent_reserver.h
ReservedExtent & operator= (const ReservedExtent & )
Defined at line 65 of file ../../src/storage/blobfs/allocator/extent_reserver.h
ReservedExtent SplitAt (uint64_t block_split)
Split a reserved extent from [start, start + length) such that:
This retains [start, start + block_split),
and returns [start + block_split, start + length)
This function requires that |block_split|
<
|extent.block_count|.
Defined at line 66 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
void Reset ()
Releases the underlying reservation, unreserving the extent and preventing continued access
to |extent()|.
Defined at line 75 of file ../../src/storage/blobfs/allocator/extent_reserver.cc
Friends
class ExtentReserver