Comments
Patch
@@ -1305,6 +1305,14 @@ static int cdrom_open(BlockDriverState *bs, const char *filename, int flags)
s->type = FTYPE_CD;
/* open will not fail even if no CD is inserted, so add O_NONBLOCK */
+#if defined(__linux__) && defined(CONFIG_AIO)
+ if (strstart(filename, "/dev/sg", NULL) ||
+ strstart(filename, "/dev/cd", NULL) ||
+ strstart(filename, "/dev/dvd", NULL) ||
+ strstart(filename, "/dev/sr", NULL)) {
+ bs->sg = 1;
+ }
+#endif
return raw_open_common(bs, filename, flags, O_NONBLOCK);
}
ATAPI pass through code is enabled when the block device is a scsi device. So we have to guess if the block device is a scsi device in cdrom_open(). Signed-off-by: Alexandre Bique <alexandre.bique@citrix.com> --- block/raw-posix.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-)