bootloader: Actually ignore memory from ranges partially beyond 4GB.
It was added to ignored_physical_memory but not actually trimmed.
This commit is contained in:
@@ -368,13 +368,14 @@ ignore_physical_memory_ranges_beyond_4gb()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (kLimit - range.start < range.size) {
|
if ((range.start + range.size) >= kLimit) {
|
||||||
// the range is partially beyond the limit
|
// the range is partially beyond the limit
|
||||||
dprintf("ignore_physical_memory_ranges_beyond_4gb(): ignoring "
|
dprintf("ignore_physical_memory_ranges_beyond_4gb(): ignoring "
|
||||||
"range: %#" B_PRIx64 " - %#" B_PRIx64 "\n", kLimit,
|
"range: %#" B_PRIx64 " - %#" B_PRIx64 "\n", kLimit,
|
||||||
range.start + range.size);
|
range.start + range.size);
|
||||||
gKernelArgs.ignored_physical_memory
|
gKernelArgs.ignored_physical_memory
|
||||||
+= range.size - (kLimit - range.start);
|
+= range.size - (kLimit - range.start);
|
||||||
|
range.size = kLimit - range.start;
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user