Struct devicemapper::ThinPoolDev [−][src]
pub struct ThinPoolDev { /* fields omitted */ }
Expand description
DM construct to contain thin provisioned devices
Implementations
Use DM to create a “thin-pool”. A “thin-pool” is shared space for other thin provisioned devices to use.
See section “Setting up a fresh pool device”: https://www.kernel.org/doc/Documentation/device-mapper/thin-provisioning.txt
Construct a new ThinPoolDev with the given data and meta devs. Returns an error if the device is already known to the kernel. Returns an error if data_block_size is not within required range. Precondition: the metadata device does not contain any pool metadata.
Obtain the data block size for this thin pool device.
Set up a thin pool from the given metadata and data device. Returns an error if data_block_size is not within required range. Precondition: There is existing metadata for this thinpool device on the metadata device. If the metadata is corrupted, subsequent errors will result, so it is expected that the metadata is well-formed and consistent with the data on the data device.
Set the low water mark. This action puts the device in a state where it is ready to be resumed.
Get the current status of the thinpool. Returns an error if there was an error getting the status value.
pub fn set_meta_table(
&mut self,
dm: &DM,
table: Vec<TargetLine<LinearDevTargetParams>>
) -> DmResult<()>
pub fn set_meta_table(
&mut self,
dm: &DM,
table: Vec<TargetLine<LinearDevTargetParams>>
) -> DmResult<()>
Set the table for the existing metadata device. This action puts the device in a state where it is ready to be resumed. Warning: It is the client’s responsibility to make sure the designated table is compatible with the device’s existing table. If are not, this function will still succeed, but some kind of data corruption will be the inevitable result.
pub fn set_data_table(
&mut self,
dm: &DM,
table: Vec<TargetLine<LinearDevTargetParams>>
) -> DmResult<()>
pub fn set_data_table(
&mut self,
dm: &DM,
table: Vec<TargetLine<LinearDevTargetParams>>
) -> DmResult<()>
Set the data device’s existing table. This action puts the device in a state where it is ready to be resumed. Warning: It is the client’s responsibility to make sure the designated table is compatible with the device’s existing table. If not, this function will still succeed, but some kind of data corruption will be the inevitable result.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ThinPoolDev
impl Send for ThinPoolDev
impl Sync for ThinPoolDev
impl Unpin for ThinPoolDev
impl UnwindSafe for ThinPoolDev