Revision 9315cbfd
b/hw/virtio-blk.c | ||
---|---|---|
543 | 543 |
return features; |
544 | 544 |
} |
545 | 545 |
|
546 |
static void virtio_blk_set_status(VirtIODevice *vdev, uint8_t status) |
|
547 |
{ |
|
548 |
VirtIOBlock *s = to_virtio_blk(vdev); |
|
549 |
uint32_t features; |
|
550 |
|
|
551 |
if (!(status & VIRTIO_CONFIG_S_DRIVER_OK)) { |
|
552 |
return; |
|
553 |
} |
|
554 |
|
|
555 |
features = vdev->guest_features; |
|
556 |
bdrv_set_enable_write_cache(s->bs, !!(features & (1 << VIRTIO_BLK_F_WCE))); |
|
557 |
} |
|
558 |
|
|
546 | 559 |
static void virtio_blk_save(QEMUFile *f, void *opaque) |
547 | 560 |
{ |
548 | 561 |
VirtIOBlock *s = opaque; |
... | ... | |
623 | 636 |
s->vdev.get_config = virtio_blk_update_config; |
624 | 637 |
s->vdev.set_config = virtio_blk_set_config; |
625 | 638 |
s->vdev.get_features = virtio_blk_get_features; |
639 |
s->vdev.set_status = virtio_blk_set_status; |
|
626 | 640 |
s->vdev.reset = virtio_blk_reset; |
627 | 641 |
s->bs = blk->conf.bs; |
628 | 642 |
s->conf = &blk->conf; |
Also available in: Unified diff