diff options
| author | David S. Miller <davem@davemloft.net> | 2010-04-06 23:53:30 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-04-06 23:53:30 -0700 | 
| commit | 4a35ecf8bf1c4b039503fa554100fe85c761de76 (patch) | |
| tree | 9b75f5d5636004d9a9aa496924377379be09aa1f /arch/microblaze/mm/init.c | |
| parent | b4d562e3c3553ac58c7120555c4e4aefbb090a2a (diff) | |
| parent | fb9e2d887243499b8d28efcf80821c4f6a092395 (diff) | |
| download | olio-linux-3.10-4a35ecf8bf1c4b039503fa554100fe85c761de76.tar.xz olio-linux-3.10-4a35ecf8bf1c4b039503fa554100fe85c761de76.zip  | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
	drivers/net/bonding/bond_main.c
	drivers/net/via-velocity.c
	drivers/net/wireless/iwlwifi/iwl-agn.c
Diffstat (limited to 'arch/microblaze/mm/init.c')
| -rw-r--r-- | arch/microblaze/mm/init.c | 39 | 
1 files changed, 30 insertions, 9 deletions
diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c index a57cedf3671..1608e2e1a44 100644 --- a/arch/microblaze/mm/init.c +++ b/arch/microblaze/mm/init.c @@ -23,6 +23,9 @@  #include <asm/sections.h>  #include <asm/tlb.h> +/* Use for MMU and noMMU because of PCI generic code */ +int mem_init_done; +  #ifndef CONFIG_MMU  unsigned int __page_offset;  EXPORT_SYMBOL(__page_offset); @@ -30,7 +33,6 @@ EXPORT_SYMBOL(__page_offset);  #else  DEFINE_PER_CPU(struct mmu_gather, mmu_gathers); -int mem_init_done;  static int init_bootmem_done;  #endif /* CONFIG_MMU */ @@ -193,12 +195,6 @@ void free_initmem(void)  			(unsigned long)(&__init_end));  } -/* FIXME from arch/powerpc/mm/mem.c*/ -void show_mem(void) -{ -	printk(KERN_NOTICE "%s\n", __func__); -} -  void __init mem_init(void)  {  	high_memory = (void *)__va(memory_end); @@ -208,9 +204,7 @@ void __init mem_init(void)  	printk(KERN_INFO "Memory: %luk/%luk available\n",  	       nr_free_pages() << (PAGE_SHIFT-10),  	       num_physpages << (PAGE_SHIFT-10)); -#ifdef CONFIG_MMU  	mem_init_done = 1; -#endif  }  #ifndef CONFIG_MMU @@ -222,6 +216,10 @@ int ___range_ok(unsigned long addr, unsigned long size)  }  EXPORT_SYMBOL(___range_ok); +int page_is_ram(unsigned long pfn) +{ +	return __range_ok(pfn, 0); +}  #else  int page_is_ram(unsigned long pfn)  { @@ -349,4 +347,27 @@ void __init *early_get_page(void)  	}  	return p;  } +  #endif /* CONFIG_MMU */ + +void * __init_refok alloc_maybe_bootmem(size_t size, gfp_t mask) +{ +	if (mem_init_done) +		return kmalloc(size, mask); +	else +		return alloc_bootmem(size); +} + +void * __init_refok zalloc_maybe_bootmem(size_t size, gfp_t mask) +{ +	void *p; + +	if (mem_init_done) +		p = kzalloc(size, mask); +	else { +		p = alloc_bootmem(size); +		if (p) +			memset(p, 0, size); +	} +	return p; +}  |