• Apollon Oikonomopoulos's avatar
    Shared block storage support · b6135bbc
    Apollon Oikonomopoulos authored
    
    
    This patch introduces basic shared block storage support.
    
    It introduces a new storage backend, bdev.PersistentBlockDevice, to
    use as a backend for shared block storage. The new bdev requires a new
    BLOCKDEV_DRIVER_MANUAL constant with the value "manual" and uses it as
    the first part of the block device unique_id.
    
    A new disk template, DT_BLOCK is introduced as well and added to
    DTS_EXT_MIRROR and DTS_MAY_ADOPT. Also added DTS_MUST_ADOPT constant
    and use it to check for the presence of the adopt keyword during LU
    invocation. We enforce the /dev/disk limitation upon adoption, but we
    allow block devices to reside anywhere under /dev.
    
    This is very basic support and includes no storage manipulation (provisioning,
    resizing, renaming) which will have to be implemented through a "driver"
    framework.
    Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
    [iustin@google.com: slight changes to bdev.py]
    Signed-off-by: default avatarIustin Pop <iustin@google.com>
    Reviewed-by: default avatarIustin Pop <iustin@google.com>
    b6135bbc
cmdlib.py 403 KB