diff options
| -rw-r--r-- | arch/i386/mm/discontig.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/i386/mm/discontig.c b/arch/i386/mm/discontig.c index b358f0702a44..c369a8bf7cbe 100644 --- a/arch/i386/mm/discontig.c +++ b/arch/i386/mm/discontig.c | |||
| @@ -243,6 +243,14 @@ static unsigned long calculate_numa_remap_pages(void) | |||
| 243 | /* now the roundup is correct, convert to PAGE_SIZE pages */ | 243 | /* now the roundup is correct, convert to PAGE_SIZE pages */ |
| 244 | size = size * PTRS_PER_PTE; | 244 | size = size * PTRS_PER_PTE; |
| 245 | 245 | ||
| 246 | if (node_end_pfn[nid] & (PTRS_PER_PTE-1)) { | ||
| 247 | /* | ||
| 248 | * Adjust size if node_end_pfn is not on a proper | ||
| 249 | * pmd boundary. remap_numa_kva will barf otherwise. | ||
| 250 | */ | ||
| 251 | size += node_end_pfn[nid] & (PTRS_PER_PTE-1); | ||
| 252 | } | ||
| 253 | |||
| 246 | /* | 254 | /* |
| 247 | * Validate the region we are allocating only contains valid | 255 | * Validate the region we are allocating only contains valid |
| 248 | * pages. | 256 | * pages. |
