John Snow c47ee043dc block-backend: Always notify on blk_eject
blk_eject is only used by scsi-disk and atapi, and in both cases we
only attempt to invoke blk_eject if we have a bona-fide change in
tray state.

The "issue" here is that the tray state does not generate a QMP event
unless there is a medium/BDS attached to the device, so if libvirt et al
are waiting for a tray event to occur from an empty-but-closed drive,
software opening that drive will not emit an event and libvirt will
wait forever.

Change this by modifying blk_eject to always emit an event, instead of
conditionally on a "real" backend eject.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1373264

Reported-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Message-id: 1478553214-497-2-git-send-email-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
2016-11-14 11:15:54 -05:00
..
2016-01-20 13:36:23 +01:00
2016-10-07 13:34:07 +02:00
2016-10-07 13:34:07 +02:00
2016-10-07 13:34:07 +02:00
2016-10-07 14:14:06 +02:00
2016-10-07 14:14:06 +02:00
2016-10-07 14:14:06 +02:00
2016-10-31 16:52:39 +01:00
2016-10-07 13:34:07 +02:00
2016-10-24 17:54:03 +02:00
2016-10-24 17:54:03 +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
2016-01-20 13:36:23 +01:00
2016-10-28 21:50:18 +08:00
2016-10-28 21:50:18 +08:00
2016-10-07 13:34:07 +02:00
2016-10-31 16:52:39 +01:00
2016-10-27 19:05:23 +02:00
2016-11-01 07:55:57 -04:00
2016-10-31 16:49:13 +01:00
2016-09-23 11:42:52 +08:00
2016-09-23 11:42:52 +08:00
2016-09-23 11:42:52 +08:00
2016-09-05 19:06:48 +02:00
2016-09-23 11:42:52 +08:00