[PATCH] - UML - iomem fix

From: Jeff Dike
Date: Tue Sep 14 2004 - 13:55:24 EST


This patch rounds up the size of a file used for iomem emulation up to the
nearest page. This makes mmap work much better on the last page of the
file.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxx>

Index: 2.6.9-rc2/arch/um/kernel/mem_user.c
===================================================================
--- 2.6.9-rc2.orig/arch/um/kernel/mem_user.c 2004-09-14 13:43:32.000000000 -0400
+++ 2.6.9-rc2/arch/um/kernel/mem_user.c 2004-09-14 13:53:25.000000000 -0400
@@ -143,7 +143,7 @@
struct iomem_region *new;
struct uml_stat buf;
char *file, *driver;
- int fd, err;
+ int fd, err, size;

driver = str;
file = strchr(str,',');
@@ -171,10 +171,12 @@
goto out_close;
}

+ size = (buf.ust_size + UM_KERN_PAGE_SIZE) & ~(UM_KERN_PAGE_SIZE - 1);
+
*new = ((struct iomem_region) { .next = iomem_regions,
.driver = driver,
.fd = fd,
- .size = buf.ust_size,
+ .size = size,
.phys = 0,
.virt = 0 });
iomem_regions = new;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/