Skip to content

Commit

Permalink
x86: set_highmem_pages_init() cleanup
Browse files Browse the repository at this point in the history
Impact: cleanup

This patch moves set_highmem_pages_init() to arch/x86/mm/highmem_32.c.

The declaration of the function is kept in asm/numa_32.h because
asm/highmem.h is included only if CONFIG_HIGHMEM is enabled so we
can't put the empty static inline function there.

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
LKML-Reference: <1236082212.2675.24.camel@penberg-laptop>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Pekka Enberg authored and Ingo Molnar committed Mar 3, 2009
1 parent e5b2bb5 commit 867c5b5
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 39 deletions.
6 changes: 5 additions & 1 deletion arch/x86/include/asm/numa_32.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,12 @@
extern int pxm_to_nid(int pxm);
extern void numa_remove_cpu(int cpu);

#ifdef CONFIG_NUMA
#ifdef CONFIG_HIGHMEM
extern void set_highmem_pages_init(void);
#else
static inline void set_highmem_pages_init(void)
{
}
#endif

#endif /* _ASM_X86_NUMA_32_H */
34 changes: 34 additions & 0 deletions arch/x86/mm/highmem_32.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#include <linux/highmem.h>
#include <linux/module.h>
#include <linux/swap.h> /* for totalram_pages */

void *kmap(struct page *page)
{
Expand Down Expand Up @@ -156,3 +157,36 @@ EXPORT_SYMBOL(kmap);
EXPORT_SYMBOL(kunmap);
EXPORT_SYMBOL(kmap_atomic);
EXPORT_SYMBOL(kunmap_atomic);

#ifdef CONFIG_NUMA
void __init set_highmem_pages_init(void)
{
struct zone *zone;
int nid;

for_each_zone(zone) {
unsigned long zone_start_pfn, zone_end_pfn;

if (!is_highmem(zone))
continue;

zone_start_pfn = zone->zone_start_pfn;
zone_end_pfn = zone_start_pfn + zone->spanned_pages;

nid = zone_to_nid(zone);
printk(KERN_INFO "Initializing %s for node %d (%08lx:%08lx)\n",
zone->name, nid, zone_start_pfn, zone_end_pfn);

add_highpages_with_active_regions(nid, zone_start_pfn,
zone_end_pfn);
}
totalram_pages += totalhigh_pages;
}
#else
static void __init set_highmem_pages_init(void)
{
add_highpages_with_active_regions(0, highstart_pfn, highend_pfn);

totalram_pages += totalhigh_pages;
}
#endif /* CONFIG_NUMA */
12 changes: 0 additions & 12 deletions arch/x86/mm/init_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -467,22 +467,10 @@ void __init add_highpages_with_active_regions(int nid, unsigned long start_pfn,
work_with_active_regions(nid, add_highpages_work_fn, &data);
}

#ifndef CONFIG_NUMA
static void __init set_highmem_pages_init(void)
{
add_highpages_with_active_regions(0, highstart_pfn, highend_pfn);

totalram_pages += totalhigh_pages;
}
#endif /* !CONFIG_NUMA */

#else
static inline void permanent_kmaps_init(pgd_t *pgd_base)
{
}
static inline void set_highmem_pages_init(void)
{
}
#endif /* CONFIG_HIGHMEM */

void __init native_pagetable_setup_start(pgd_t *base)
Expand Down
26 changes: 0 additions & 26 deletions arch/x86/mm/numa_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -423,32 +423,6 @@ void __init initmem_init(unsigned long start_pfn,
setup_bootmem_allocator();
}

void __init set_highmem_pages_init(void)
{
#ifdef CONFIG_HIGHMEM
struct zone *zone;
int nid;

for_each_zone(zone) {
unsigned long zone_start_pfn, zone_end_pfn;

if (!is_highmem(zone))
continue;

zone_start_pfn = zone->zone_start_pfn;
zone_end_pfn = zone_start_pfn + zone->spanned_pages;

nid = zone_to_nid(zone);
printk(KERN_INFO "Initializing %s for node %d (%08lx:%08lx)\n",
zone->name, nid, zone_start_pfn, zone_end_pfn);

add_highpages_with_active_regions(nid, zone_start_pfn,
zone_end_pfn);
}
totalram_pages += totalhigh_pages;
#endif
}

#ifdef CONFIG_MEMORY_HOTPLUG
static int paddr_to_nid(u64 addr)
{
Expand Down

0 comments on commit 867c5b5

Please sign in to comment.