Commit 4a585ccb authored by bellard's avatar bellard
Browse files

avoid unaligned file offset in anonymous mapping


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@215 c046a42c-6fe2-441c-8c8c-71466251a162
parent aa0aa4fa
......@@ -188,7 +188,7 @@ long target_mmap(unsigned long start, unsigned long len, int prot,
host_start = start & host_page_mask;
if (!(flags & MAP_FIXED)) {
#ifdef __alpha__
#if defined(__alpha__) || defined(__sparc__)
/* tell the kenel to search at the same place as i386 */
if (host_start == 0)
host_start = 0x40000000;
......@@ -282,8 +282,13 @@ long target_mmap(unsigned long start, unsigned long len, int prot,
/* map the middle (easier) */
if (host_start < host_end) {
unsigned long offset1;
if (flags & MAP_ANONYMOUS)
offset1 = 0;
else
offset1 = offset + host_start - start;
ret = (long)mmap((void *)host_start, host_end - host_start,
prot, flags, fd, offset + host_start - start);
prot, flags, fd, offset1);
if (ret == -1)
return ret;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment