This patch is to fix a bug when assigning a SATA CDROM, DISK to a guest, IO read and write error. Signed-off-by: Li Zhang Signed-off-by: Yu Zhao diff -r 39cb0de3ee2f xen/arch/x86/hvm/io.c --- a/xen/arch/x86/hvm/io.c Tue Jul 29 17:00:29 2008 +0100 +++ b/xen/arch/x86/hvm/io.c Fri Aug 01 14:10:28 2008 +0800 @@ -284,7 +284,7 @@ data = p->data; if ( p->data_is_ptr ) (void)hvm_copy_from_guest_phys( - &data, p->data + (sign * i & p->size), p->size); + &data, p->data + (sign * i * p->size), p->size); switch ( p->size ) {