* [Qemu-devel] qemu -cdrom /dev/cdrom opens the cdrom for RW and fails w/ RO devices (linux)
@ 2006-08-09 12:41 Artur Skawina
0 siblings, 0 replies; only message in thread
From: Artur Skawina @ 2006-08-09 12:41 UTC (permalink / raw)
To: qemu-devel, Fabrice Bellard
[-- Attachment #1: Type: text/plain, Size: 416 bytes --]
recently (probably since the AIO code went in) qemu opens the cdrom device like this:
> open("/dev/cdrom", O_RDWR|O_LARGEFILE) = -1 EROFS (Read-only file system)
which obviously fails and qemu quits w/ an error message about being unable to access the cdrom.
Patch below makes a RO -cdrom device work (but doesn't necessarily address the real bug - should qemu really be opening cdrom devices for rw?)
artur
[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 559 bytes --]
diff -urNp qemu.org/block.c qemu/block.c
--- qemu.org/block.c 2006-08-07 21:36:12.000000000 +0000
+++ qemu/block.c 2006-08-08 13:05:01.000000000 +0000
@@ -332,7 +332,7 @@ int bdrv_open2(BlockDriverState *bs, con
else
open_flags = flags & ~(BDRV_O_FILE | BDRV_O_SNAPSHOT);
ret = drv->bdrv_open(bs, filename, open_flags);
- if (ret == -EACCES && !(flags & BDRV_O_FILE)) {
+ if ((ret == -EACCES || ret == -EROFS) && !(flags & BDRV_O_FILE)) {
ret = drv->bdrv_open(bs, filename, BDRV_O_RDONLY);
bs->read_only = 1;
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2006-08-09 12:41 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-09 12:41 [Qemu-devel] qemu -cdrom /dev/cdrom opens the cdrom for RW and fails w/ RO devices (linux) Artur Skawina
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).