Kevin Wolf 19ebd13ed4 commit: Fix use after free in completion
The final bdrv_set_backing_hd() could be working on already freed nodes
because the commit job drops its references (through BlockBackends) to
both overlay_bs and top already a bit earlier.

One way to trigger the bug is hot unplugging a disk for which
blockdev_mark_auto_del() cancels the block job.

Fix this by taking BDS-level references while we're still using the
nodes.

Cc: qemu-stable@nongnu.org
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
2017-06-09 13:46:13 +02:00
..
2016-01-20 13:36:23 +01:00
2016-10-07 14:14:06 +02:00
2016-10-07 14:14:06 +02:00
2017-05-30 14:15:15 +01:00
2016-11-25 13:51:30 +01:00
2017-05-17 12:04:59 +02:00
2016-06-07 18:19:24 +03:00
2016-01-20 13:36:23 +01:00
2016-01-20 13:36:23 +01:00
2017-05-18 19:20:59 +02:00
2017-05-17 12:04:59 +02:00
2016-09-23 11:42:52 +08:00
2017-05-17 12:04:59 +02:00
2017-05-17 12:04:59 +02:00
2017-05-17 12:04:59 +02:00
2017-05-17 12:04:59 +02:00