class VPartitionManager
Defined at line 50 of file ../../src/storage/fvm/driver/vpartition_manager.h
Forward Declaration
Public Methods
void VPartitionManager (VPartitionManager && )
Defined at line 52 of file ../../src/storage/fvm/driver/vpartition_manager.h
void VPartitionManager (const VPartitionManager & )
Defined at line 52 of file ../../src/storage/fvm/driver/vpartition_manager.h
VPartitionManager & operator= (const VPartitionManager & )
Defined at line 52 of file ../../src/storage/fvm/driver/vpartition_manager.h
VPartitionManager & operator= (VPartitionManager && )
Defined at line 52 of file ../../src/storage/fvm/driver/vpartition_manager.h
size_t BlockOpSize ()
Block Protocol
Defined at line 59 of file ../../src/storage/fvm/driver/vpartition_manager.h
void Queue (block_op_t * txn, block_impl_queue_callback completion_cb, void * cookie)
Defined at line 60 of file ../../src/storage/fvm/driver/vpartition_manager.h
VPartitionEntry * GetAllocatedVPartEntry (size_t index)
Acquire access to a VPart Entry which has already been modified (and
will, as a consequence, not be de-allocated underneath us).
Defined at line 66 of file ../../src/storage/fvm/driver/vpartition_manager.h
zx_status_t Bind (void * , zx_device_t * dev)
static
Defined at line 71 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void VPartitionManager (zx_device_t * parent, const block_info_t & info, size_t block_op_size, const block_impl_protocol_t * bp)
Defined at line 62 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void ~VPartitionManager ()
Defined at line 68 of file ../../src/storage/fvm/driver/vpartition_manager.cc
size_t DiskSize ()
Defined at line 88 of file ../../src/storage/fvm/driver/vpartition_manager.h
size_t slice_size ()
Defined at line 89 of file ../../src/storage/fvm/driver/vpartition_manager.h
uint64_t VSliceMax ()
Defined at line 90 of file ../../src/storage/fvm/driver/vpartition_manager.h
const block_info_t & Info ()
Defined at line 91 of file ../../src/storage/fvm/driver/vpartition_manager.h
fvm::Header GetHeader ()
Returns a copy of the current header. See also GetHeaderLocked for a mutable version of the
header from inside the lock.
Defined at line 96 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void DdkInit (ddk::InitTxn txn)
Defined at line 101 of file ../../src/storage/fvm/driver/vpartition_manager.cc
Diagnostics & diagnostics ()
Returns a reference to the Diagnostics that this instance publishes to.
Defined at line 113 of file ../../src/storage/fvm/driver/vpartition_manager.h
zx_status_t Load ()
Read the underlying block device, initialize the recorded VPartitions.
Defined at line 207 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx_status_t AllocateSlices (VPartition * vp, size_t vslice_start, size_t count)
Allocate 'count' slices, write back the FVM.
Defined at line 488 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx_status_t FreeSlices (VPartition * vp, size_t vslice_start, size_t count)
Deallocate 'count' slices, write back the FVM.
If a request is made to remove vslice_count = 0, deallocates the entire
VPartition.
Defined at line 605 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void GetInfoInternal (VolumeManagerInfo * info)
Returns global information about the FVM.
Defined at line 674 of file ../../src/storage/fvm/driver/vpartition_manager.cc
uint64_t GetPartitionLimitInternal (size_t index)
Defined at line 683 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx_status_t GetPartitionLimitInternal (const uint8_t * guid, uint64_t * slice_count)
Defined at line 691 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx_status_t SetPartitionLimitInternal (const uint8_t * guid, uint64_t slice_count)
Defined at line 706 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx_status_t SetPartitionNameInternal (const uint8_t * guid, std::string_view name)
Defined at line 730 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void DdkUnbind (ddk::UnbindTxn txn)
Defined at line 927 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void DdkRelease ()
Defined at line 934 of file ../../src/storage/fvm/driver/vpartition_manager.cc
void DdkChildPreRelease (void * child)
Defined at line 942 of file ../../src/storage/fvm/driver/vpartition_manager.cc
zx::result<std::unique_ptr<VPartition>> AllocatePartition (uint64_t slice_count, const fuchsia_storage_block::wire::Guid & type, const fuchsia_storage_block::wire::Guid & instance, fidl::StringView name, uint32_t flags)
Allocates the partition, returning it without adding it to the device manager. Production code
will go through the FIDL API, this is exposed separately to allow testing without FIDL.
Defined at line 821 of file ../../src/storage/fvm/driver/vpartition_manager.cc