[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [xen, xencomm] xencomm trivial bug fix
# HG changeset patch # User kfraser@xxxxxxxxxxxxxxxxxxxxx # Date 1187103668 -3600 # Node ID 0d367c186e8c23419579c887e1865c17bcf36f31 # Parent e9a5c6b2acbe98d7a2d60da447a437a62eef94ea [xen, xencomm] xencomm trivial bug fix - fix return address of xencomm_copy_to_guest() - fix xencomm_add_offset() Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx> --- xen/common/xencomm.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletion(-) diff -r e9a5c6b2acbe -r 0d367c186e8c xen/common/xencomm.c --- a/xen/common/xencomm.c Tue Aug 14 15:58:16 2007 +0100 +++ b/xen/common/xencomm.c Tue Aug 14 16:01:08 2007 +0100 @@ -232,7 +232,7 @@ xencomm_copy_to_guest(void *to, const vo dest_maddr = paddr_to_maddr(dest_paddr + chunk_skip); if (dest_maddr == 0) - return -1; + return n - from_pos; if (xencomm_debug) printk("%lx[%d] -> %lx\n", source, bytes, dest_maddr); @@ -279,6 +279,11 @@ int xencomm_add_offset(void **handle, un unsigned int pgoffset; unsigned int chunksz; unsigned int chunk_skip; + + if (dest_paddr == XENCOMM_INVALID) { + i++; + continue; + } pgoffset = dest_paddr % PAGE_SIZE; chunksz = PAGE_SIZE - pgoffset; @@ -291,6 +296,8 @@ int xencomm_add_offset(void **handle, un desc->address[i] += chunk_skip; } bytes -= chunk_skip; + + i++; } return 0; } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |