blob: 3ca0949a9307269027bcb1c5d270100eaefca504 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
Changing CD ROM medium sometimes fails with 'Tray of device is not open'
Description of problem:
QEMU reports that a CD ROM tray is not open when exchanging media:
`unable to execute QEMU command 'blockdev-remove-medium': Tray of device 'ide0-1-0' is not open`
We see the issue in upstream libvirt integration tests. However, this issue is a race and the reproducibility rate is <15%.
Steps to reproduce:
On the high level this is what we do:
1. eject medium that the machine was started with
2. insert a different medium into the CD ROM
Translating the above to QEMU QMP commands this is what the test exercises:
1. blockdev-open-tray
2. blockdev-remove-medium
3. blockdev-del
4. blockdev-close-tray
5. blockdev-open-tray
6. blockdev-remove-medium
7. blockdev-add
8. blockdev-insert-medium <<< This is where the test fails
9. blockdev-close-tray
Additional information:
I bisected the code (3 times just to be sure since it's a race) and the following commit fell out of it:
55adb3c45620c31f29978f209e2a44a08d34e2da
I'm attaching QEMU trace events and a bunch of libvirt test logs (good and bad for comparison). If you think of anything else I should provide in order to help with the issue analysis, please let me know what other option should be turned on.[qemu_traces.tar.gz](/uploads/32e48c92efce3484e552df063795af4d/qemu_traces.tar.gz)
|