[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 02/55] block: Reset device model callbacks on detach
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] [PATCH 02/55] block: Reset device model callbacks on detach |
Date: |
Wed, 20 Jul 2011 18:23:36 +0200 |
BlockDriverState members change_cb and change_opaque are initially
null. The device model may set them, with bdrv_set_change_cb(). If
the device model gets detached (hot unplug), they're left dangling.
Only safe because device hot unplug automatically destroys the
BlockDriverState. But that's a questionable feature, best not to rely
on it.
Signed-off-by: Markus Armbruster <address@hidden>
---
block.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/block.c b/block.c
index 24a25d5..c49a825 100644
--- a/block.c
+++ b/block.c
@@ -730,6 +730,8 @@ void bdrv_detach(BlockDriverState *bs, DeviceState *qdev)
{
assert(bs->peer == qdev);
bs->peer = NULL;
+ bs->change_cb = NULL;
+ bs->change_opaque = NULL;
}
DeviceState *bdrv_get_attached(BlockDriverState *bs)
--
1.7.2.3
- Re: [Qemu-devel] [PATCH 18/55] scsi-disk: Reject CD-specific SCSI commands to disks, (continued)
[Qemu-devel] [PATCH 24/55] ide/atapi: Track tray locked state, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 17/55] ide/atapi: Switch from BlockDriverState's tray_open to own, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 19/55] scsi-disk: Factor out scsi_disk_emulate_start_stop(), Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 02/55] block: Reset device model callbacks on detach,
Markus Armbruster <=
[Qemu-devel] [PATCH 36/55] ide: Give vmstate structs internal linkage where possible, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 20/55] scsi-disk: Track tray open/close state, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 49/55] block: Declare qemu_blockalign() in block.h, not block_int.h, Markus Armbruster, 2011/07/20
[Qemu-devel] [PATCH 50/55] block: New bdrv_set_buffer_alignment(), Markus Armbruster, 2011/07/20