• M
    block: Add blk_new_open() · ca49a4fd
    Max Reitz 提交于
    blk_new_with_bs() creates a BlockBackend with an empty BlockDriverState
    attached to it. Empty BDSs are not nice, therefore add an alternative
    function which combines blk_new_with_bs() with bdrv_open().
    
    Note: In contrast to bdrv_open() which takes a BlockDriver parameter,
    blk_new_open() does not take such a parameter. This is because
    bdrv_open() opens a BlockDriverState, therefore it is natural to be able
    to set the BlockDriver for that BDS. The fact that bdrv_open() can open
    more than a single BDS is merely some form of a byproduct.
    
    blk_new_open() on the other hand is intended to be used to create a
    whole tree of BlockDriverStates. Therefore, setting a single BlockDriver
    does not make much sense. Instead, the drivers to be used for each of
    the nodes must be configured through the "options" QDict; including the
    driver of the root BDS.
    Signed-off-by: NMax Reitz <mreitz@redhat.com>
    Reviewed-by: NEric Blake <eblake@redhat.com>
    Reviewed-by: NKevin Wolf <kwolf@redhat.com>
    Message-id: 1423162705-32065-3-git-send-email-mreitz@redhat.com
    Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
    ca49a4fd
block-backend.h 7.7 KB