diff options
author | Matthew Fioravante <matthew.fioravante@jhuapl.edu> | 2012-10-08 14:36:30 +0100 |
---|---|---|
committer | Matthew Fioravante <matthew.fioravante@jhuapl.edu> | 2012-10-08 14:36:30 +0100 |
commit | b8902baf80d75b7f5832dc435a868dfcc4d1f36f (patch) | |
tree | f278a06f47ae8bbbef23266a9684a94a37c63674 /extras/mini-os/arch/x86/ioremap.c | |
parent | 7ab9bbf9f8b922a25eb3d37ff5fd9b6a730bf85c (diff) | |
download | xen-b8902baf80d75b7f5832dc435a868dfcc4d1f36f.tar.gz xen-b8902baf80d75b7f5832dc435a868dfcc4d1f36f.tar.bz2 xen-b8902baf80d75b7f5832dc435a868dfcc4d1f36f.zip |
minios: Disable the mfn_is_ram() check, it doesn't work correctly on all systems
This patch disables the mfn_is_ram check in mini-os. The current check
is insufficient and fails on some systems with larger than 4gb memory.
Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
Acked-by: Samuel Thibault <samuel.thibault@ens-lyons.org>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
Diffstat (limited to 'extras/mini-os/arch/x86/ioremap.c')
-rw-r--r-- | extras/mini-os/arch/x86/ioremap.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/extras/mini-os/arch/x86/ioremap.c b/extras/mini-os/arch/x86/ioremap.c index c7f818609c..4384b1c0a4 100644 --- a/extras/mini-os/arch/x86/ioremap.c +++ b/extras/mini-os/arch/x86/ioremap.c @@ -35,7 +35,6 @@ static void *__do_ioremap(unsigned long phys_addr, unsigned long size, unsigned long va; unsigned long mfns, mfn; unsigned long num_pages, offset; - int i; /* allow non page aligned addresses but for mapping we need to align them */ offset = (phys_addr & ~PAGE_MASK); @@ -43,21 +42,9 @@ static void *__do_ioremap(unsigned long phys_addr, unsigned long size, phys_addr &= PAGE_MASK; mfns = mfn = phys_addr >> PAGE_SHIFT; - /* sanity checks on list of MFNs */ - for ( i = 0; i < num_pages; i++, mfn++ ) - { - if ( mfn_is_ram(mfn) ) - { - printk("ioremap: mfn 0x%ulx is RAM\n", mfn); - goto mfn_invalid; - } - } va = (unsigned long)map_frames_ex(&mfns, num_pages, 0, 1, 1, DOMID_IO, NULL, prot); return (void *)(va + offset); - -mfn_invalid: - return NULL; } void *ioremap(unsigned long phys_addr, unsigned long size) |