Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 279909
b: refs/heads/master
c: 77f73a2
h: refs/heads/master
i:
  279907: deb862f
v: v3
  • Loading branch information
Will Deacon authored and Catalin Marinas committed Dec 8, 2011
1 parent f5b625e commit 4150842
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ae2de101739c5a2a43a23a74a0d43aea810fb5a8
refs/heads/master: 77f73a2c8e869b035e71eea5cae07c30fe4bded0
16 changes: 15 additions & 1 deletion trunk/arch/arm/mm/mmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -799,6 +799,9 @@ void __init sanity_check_meminfo(void)
struct membank *bank = &meminfo.bank[j];
*bank = meminfo.bank[i];

if (bank->start > ULONG_MAX)
highmem = 1;

#ifdef CONFIG_HIGHMEM
if (__va(bank->start) >= vmalloc_min ||
__va(bank->start) < (void *)PAGE_OFFSET)
Expand All @@ -810,7 +813,7 @@ void __init sanity_check_meminfo(void)
* Split those memory banks which are partially overlapping
* the vmalloc area greatly simplifying things later.
*/
if (__va(bank->start) < vmalloc_min &&
if (!highmem && __va(bank->start) < vmalloc_min &&
bank->size > vmalloc_min - __va(bank->start)) {
if (meminfo.nr_banks >= NR_BANKS) {
printk(KERN_CRIT "NR_BANKS too low, "
Expand All @@ -830,6 +833,17 @@ void __init sanity_check_meminfo(void)
#else
bank->highmem = highmem;

/*
* Highmem banks not allowed with !CONFIG_HIGHMEM.
*/
if (highmem) {
printk(KERN_NOTICE "Ignoring RAM at %.8llx-%.8llx "
"(!CONFIG_HIGHMEM).\n",
(unsigned long long)bank->start,
(unsigned long long)bank->start + bank->size - 1);
continue;
}

/*
* Check whether this memory bank would entirely overlap
* the vmalloc area.
Expand Down

0 comments on commit 4150842

Please sign in to comment.