|
|
|
|
|
|
|
|
|
|
xen-changelog
# HG changeset patch
# User cl349@xxxxxxxxxxxxxxxxxxxx
# Node ID 66e6479d9ab87afee351cd69036226b3f783a346
# Parent ee68821f4e9c9805d29f86a8229430a02a98b729
# Parent 878ba6d3954ee783549c2014c997116ff1e1194f
merge?
diff -r ee68821f4e9c -r 66e6479d9ab8
linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_32
--- a/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_32 Wed Aug
10 09:46:51 2005
+++ b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_32 Wed Aug
10 09:47:13 2005
@@ -415,7 +415,7 @@
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
-# CONFIG_CRAMFS is not set
+CONFIG_CRAMFS=y
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
diff -r ee68821f4e9c -r 66e6479d9ab8
linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_64
--- a/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_64 Wed Aug
10 09:46:51 2005
+++ b/linux-2.6-xen-sparse/arch/xen/configs/xenU_defconfig_x86_64 Wed Aug
10 09:47:13 2005
@@ -748,7 +748,7 @@
# CONFIG_BEFS_DEBUG is not set
CONFIG_BFS_FS=m
CONFIG_EFS_FS=m
-CONFIG_CRAMFS=m
+CONFIG_CRAMFS=y
CONFIG_VXFS_FS=m
# CONFIG_HPFS_FS is not set
CONFIG_QNX4FS_FS=m
diff -r ee68821f4e9c -r 66e6479d9ab8 xen/common/page_alloc.c
--- a/xen/common/page_alloc.c Wed Aug 10 09:46:51 2005
+++ b/xen/common/page_alloc.c Wed Aug 10 09:47:13 2005
@@ -52,7 +52,6 @@
* One bit per page of memory. Bit set => page is allocated.
*/
-static unsigned long bitmap_size; /* in bytes */
static unsigned long *alloc_bitmap;
#define PAGES_PER_MAPWORD (sizeof(unsigned long) * 8)
@@ -135,10 +134,16 @@
/* Initialise allocator to handle up to @max_page pages. */
physaddr_t init_boot_allocator(physaddr_t bitmap_start)
{
+ unsigned long bitmap_size;
+
bitmap_start = round_pgup(bitmap_start);
- /* Allocate space for the allocation bitmap. */
+ /*
+ * Allocate space for the allocation bitmap. Include an extra longword
+ * of padding for possible overrun in map_alloc and map_free.
+ */
bitmap_size = max_page / 8;
+ bitmap_size += sizeof(unsigned long);
bitmap_size = round_pgup(bitmap_size);
alloc_bitmap = (unsigned long *)phys_to_virt(bitmap_start);
@@ -171,7 +176,7 @@
else if ( *p != '\0' )
break;
- if ( (bad_pfn < (bitmap_size*8)) && !allocated_in_map(bad_pfn) )
+ if ( (bad_pfn < max_page) && !allocated_in_map(bad_pfn) )
{
printk("Marking page %lx as bad\n", bad_pfn);
map_alloc(bad_pfn, 1);
@@ -183,7 +188,7 @@
{
unsigned long pg, i;
- for ( pg = 0; (pg + nr_pfns) < (bitmap_size*8); pg += pfn_align )
+ for ( pg = 0; (pg + nr_pfns) < max_page; pg += pfn_align )
{
for ( i = 0; i < nr_pfns; i++ )
if ( allocated_in_map(pg + i) )
@@ -362,7 +367,7 @@
printk("Scrubbing Free RAM: ");
- for ( pfn = 0; pfn < (bitmap_size * 8); pfn++ )
+ for ( pfn = 0; pfn < max_page; pfn++ )
{
/* Every 100MB, print a progress dot. */
if ( (pfn % ((100*1024*1024)/PAGE_SIZE)) == 0 )
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?,
Xen patchbot -unstable <=
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
- [Xen-changelog] merge?, Xen patchbot -unstable
|
|
|
|
|