aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_linux.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-07-24 11:18:53 +0100
committerKeir Fraser <keir.fraser@citrix.com>2008-07-24 11:18:53 +0100
commit28f8960f3e0417f1ba8d916ed2d04778d009aa68 (patch)
tree36b3315a67fab36c24e772d2c50499b91bd02380 /tools/libxc/xc_linux.c
parentce29ad450cc37e90052059118c075f80f79c9838 (diff)
downloadxen-28f8960f3e0417f1ba8d916ed2d04778d009aa68.tar.gz
xen-28f8960f3e0417f1ba8d916ed2d04778d009aa68.tar.bz2
xen-28f8960f3e0417f1ba8d916ed2d04778d009aa68.zip
libxc: Fix after xc_map_foreign_ranges() patch.
Must munmap() region after loading elf image. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'tools/libxc/xc_linux.c')
-rw-r--r--tools/libxc/xc_linux.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/libxc/xc_linux.c b/tools/libxc/xc_linux.c
index 6df3e9957d..2480b3ce72 100644
--- a/tools/libxc/xc_linux.c
+++ b/tools/libxc/xc_linux.c
@@ -123,16 +123,16 @@ void *xc_map_foreign_ranges(int xc_handle, uint32_t dom,
privcmd_mmap_entry_t entries[], int nentries)
{
privcmd_mmap_t ioctlx;
-
int i, rc;
void *addr;
addr = mmap(NULL, size, prot, MAP_SHARED, xc_handle, 0);
- if (addr == MAP_FAILED)
+ if ( addr == MAP_FAILED )
goto mmap_failed;
- for (i = 0; i < nentries; i++) {
- entries[i].va = (uintptr_t)addr + (i * chunksize);
+ for ( i = 0; i < nentries; i++ )
+ {
+ entries[i].va = (unsigned long)addr + (i * chunksize);
entries[i].npages = chunksize >> PAGE_SHIFT;
}
@@ -141,14 +141,14 @@ void *xc_map_foreign_ranges(int xc_handle, uint32_t dom,
ioctlx.entry = entries;
rc = ioctl(xc_handle, IOCTL_PRIVCMD_MMAP, &ioctlx);
- if (rc)
+ if ( rc )
goto ioctl_failed;
return addr;
ioctl_failed:
rc = munmap(addr, size);
- if (rc == -1)
+ if ( rc == -1 )
ERROR("%s: error in error path\n", __FUNCTION__);
mmap_failed: