• S
    block: add request tracking · dbffbdcf
    Stefan Hajnoczi 提交于
    The block layer does not know about pending requests.  This information
    is necessary for copy-on-read since overlapping requests must be
    serialized to prevent races that corrupt the image.
    
    The BlockDriverState gets a new tracked_request list field which
    contains all pending requests.  Each request is a BdrvTrackedRequest
    record with sector_num, nb_sectors, and is_write fields.
    
    Note that request tracking is always enabled but hopefully this extra
    work is so small that it doesn't justify adding an enable/disable flag.
    Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
    Signed-off-by: NKevin Wolf <kwolf@redhat.com>
    dbffbdcf
block.c 100.4 KB