Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ClearDevice ¶
func ClearDevice(device PmemDeviceInfo, flush bool) error
func FlushDevice ¶
func FlushDevice(dev PmemDeviceInfo, blocks uint64) error
func WaitDeviceAppears ¶ added in v0.5.0
func WaitDeviceAppears(dev PmemDeviceInfo) error
Types ¶
type PmemDeviceInfo ¶
type PmemDeviceInfo struct { //Name name of the block device Name string //Path actual device path Path string //Size size allocated for block device Size uint64 }
PmemDeviceInfo represents a block device
type PmemDeviceManager ¶
type PmemDeviceManager interface { //GetCapacity returns the available maximum capacity that can be assigned to a Device/Volume GetCapacity() (map[string]uint64, error) //CreateDevice creates a new block device with give name, size and namespace mode CreateDevice(name string, size uint64, nsmode string) error //GetDevice returns the block device information for given name GetDevice(name string) (PmemDeviceInfo, error) //DeleteDevice deletes an existing block device with give name. // If 'flush' is 'true', then the device data is zerod beofore deleting the device DeleteDevice(name string, flush bool) error //FlushDeviceData zeros all blocks in the blocke device with given name FlushDeviceData(name string) error //ListDevices returns all the block devices information that was created by this device manager ListDevices() ([]PmemDeviceInfo, error) }
PmemDeviceManager interface to manage the PMEM block devices
func NewPmemDeviceManagerLVM ¶
func NewPmemDeviceManagerLVM() (PmemDeviceManager, error)
NewPmemDeviceManagerLVM Instantiates a new LVM based pmem device manager The pre-requisite for this manager is that all the pmem regions which should be managed by this LMV manager are devided into namespaces and grouped as volume groups.
func NewPmemDeviceManagerNdctl ¶
func NewPmemDeviceManagerNdctl() (PmemDeviceManager, error)
NewPmemDeviceManagerNdctl Instantiates a new ndctl based pmem device manager
Click to show internal directories.
Click to hide internal directories.