diff options
Diffstat (limited to 'results/scraper/launchpad-without-comments/1437367')
| -rw-r--r-- | results/scraper/launchpad-without-comments/1437367 | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/results/scraper/launchpad-without-comments/1437367 b/results/scraper/launchpad-without-comments/1437367 new file mode 100644 index 000000000..945b16457 --- /dev/null +++ b/results/scraper/launchpad-without-comments/1437367 @@ -0,0 +1,24 @@ +Qemu guest fails to write files with raw disk (like \\.\PhysicalDrive1) on Windows host. + +Qemu guest fails to write files with specifing raw disk like \\.\PhysicalDrive1 +full command line is below. +qemu-sysytem-i386.exe -kernel bzImage -drive file=rootfs.ext2,index=0,if=scsi -append root=/dev/sda -drive file=\\.\PhysicalDrive1,index=1,if=scsi + +I found the reason is below aio_worker returns -EIO when flush operation. + +https://github.com/qemu/qemu/blob/master/block/raw-win32.c#L95 + +static int aio_worker(void *arg) +... + case QEMU_AIO_FLUSH: + if (!FlushFileBuffers(aiocb->hfile)) { + return -EIO; + } + +FlushFileBuffers always fails with GetLastError() == ERROR_INVALID_FUNCTION +I think this function doesn't support raw device. +For flushing, you might have to issue scsi/ata command or use another way. +Trying to just ignoring this error, writing function seems to be fine for me. + +Thanks +hiroaki \ No newline at end of file |