On 04/24/2012 11:06 AM, Stefan Hajnoczi wrote:
On Mon, Apr 23, 2012 at 5:06 PM, Pavel Hrdina<phrd...@redhat.com> wrote:
Hi,
this is the patch to fix incorrect handling of IDE floppy drive controller
emulation
s/IDE//
It's unrelated to IDE.
@@ -937,6 +940,9 @@ static int fdctrl_media_changed(FDrive *drv)
if (!drv->bs)
return 0;
+ /* This is needed for driver to detect there is no media in drive */
+ if (!bdrv_is_inserted(drv->bs))
+ return 1;
if (drv->media_changed) {
drv->media_changed = 0;
ret = 1;
Why isn't the BlockDevOps.change_media_cb() mechanism enough to report
disk changes correctly?
Stefan
You can look here, http://www.isdaman.com/alsos/hardware/fdc/floppy.htm
, for specification of DIR register. Bit7 is there as CHAN and in this
bit is saved information whether media is changed or not. This bit is
set to true while there is no media. And floppy driver is checking this
bit to detect media change or media missing.