On 07/20/10 17:40, Anthony Liguori wrote: > On 07/20/2010 10:17 AM, jes.soren...@redhat.com wrote: >> From: Jes Sorensen<jes.soren...@redhat.com> >> >> O_DIRECT (cache=none) requires sector alignment, however the physical >> sector size of CDROM/DVD drives is 2048, as opposed to most disk >> devices which use 512. QEMU is hard coding 512 all over the place, so >> allowing O_DIRECT for CDROM/DVD devices does not work. >> >> Signed-off-by: Jes Sorensen<jes.soren...@redhat.com> >> > > Wouldn't a better solution be to have a cdrom_read/cdrom_write hook that > did the appropriate bouncing? > > Silently disabling something a user explicitly asked for is not a good > option. In the very least, it should error out entirely.
I thought about this, but it would require basically fixing up or copying all of the pread/pwrite code to use the right block size. This is really more of a band-aid but it should be pretty safe. Cheers, Jes