[PATCH] spufs: fix for CONFIG_NUMA
Based on an older patch from Mike Kravetz <kravetz@us.ibm.com> We need to have a mem_map for high addresses in order to make fops->no_page work on spufs mem and register files. So far, we have used the memory_present() function during early bootup, but that did not work when CONFIG_NUMA was enabled. We now use the __add_pages() function to add the mem_map when loading the spufs module, which is a lot nicer. Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Cc: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
46a66eecdf
commit
bed120c64e
@ -69,12 +69,16 @@ int __add_pages(struct zone *zone, unsigned long phys_start_pfn,
|
||||
for (i = 0; i < nr_pages; i += PAGES_PER_SECTION) {
|
||||
err = __add_section(zone, phys_start_pfn + i);
|
||||
|
||||
if (err)
|
||||
/* We want to keep adding the rest of the
|
||||
* sections if the first ones already exist
|
||||
*/
|
||||
if (err && (err != -EEXIST))
|
||||
break;
|
||||
}
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(__add_pages);
|
||||
|
||||
static void grow_zone_span(struct zone *zone,
|
||||
unsigned long start_pfn, unsigned long end_pfn)
|
||||
|
Reference in New Issue
Block a user