Skip to content
  • Markus Armbruster's avatar
    hw: Convert from BlockDriverState to BlockBackend, mostly · 4be74634
    Markus Armbruster authored
    
    
    Device models should access their block backends only through the
    block-backend.h API.  Convert them, and drop direct includes of
    inappropriate headers.
    
    Just four uses of BlockDriverState are left:
    
    * The Xen paravirtual block device backend (xen_disk.c) opens images
      itself when set up via xenbus, bypassing blockdev.c.  I figure it
      should go through qmp_blockdev_add() instead.
    
    * Device model "usb-storage" prompts for keys.  No other device model
      does, and this one probably shouldn't do it, either.
    
    * ide_issue_trim_cb() uses bdrv_aio_discard() instead of
      blk_aio_discard() because it fishes its backend out of a BlockAIOCB,
      which has only the BlockDriverState.
    
    * PC87312State has an unused BlockDriverState[] member.
    
    The next two commits take care of the latter two.
    
    Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
    Reviewed-by: default avatarMax Reitz <mreitz@redhat.com>
    Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
    4be74634