#ifdef CONFIG_DISCONTIGMEM totalram_pages += free_all_bootmem_node(NODE_DATA(1)); #endif 
void __init mem_init(void){	extern unsigned long empty_zero_page[1024];	int codesize, reservedpages, datasize, initsize;	int tmp;	extern unsigned long memory_start;#ifdef CONFIG_MMU	high_memory = (void *)__va(MAX_LOW_PFN * PAGE_SIZE);#else	extern unsigned long memory_end;	high_memory = (void *)(memory_end & PAGE_MASK);#endif	max_mapnr = num_physpages = MAP_NR(high_memory) - MAP_NR(memory_start);	/* clear the zero-page */	memset(empty_zero_page, 0, PAGE_SIZE);	__flush_wback_region(empty_zero_page, PAGE_SIZE);	/* 	 * Setup wrappers for copy/clear_page(), these will get overridden	 * later in the boot process if a better method is available.	 */	copy_page = copy_page_slow;	clear_page = clear_page_slow;	/* this will put all low memory onto the freelists */	totalram_pages += free_all_bootmem_node(NODE_DATA(0));#ifdef CONFIG_DISCONTIGMEM	totalram_pages += free_all_bootmem_node(NODE_DATA(1));#endif	reservedpages = 0;	for (tmp = 0; tmp < num_physpages; tmp++)		/*		 * Only count reserved RAM pages		 */		if (PageReserved(mem_map+tmp))			reservedpages++;	codesize =  (unsigned long) &_etext - (unsigned long) &_text;	datasize =  (unsigned long) &_edata - (unsigned long) &_etext;	initsize =  (unsigned long) &__init_end - (unsigned long) &__init_begin;	printk("Memory: %luk/%luk available (%dk kernel code, %dk reserved, %dk data, %dk init)\n",		(unsigned long) nr_free_pages() << (PAGE_SHIFT-10),		max_mapnr << (PAGE_SHIFT-10),		codesize >> 10,		reservedpages << (PAGE_SHIFT-10),		datasize >> 10,		initsize >> 10);	p3_cache_init();}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/65463b73b14ed43368dc5961a6c3dcb0d98cfe1f/init.c/clean/arch/sh/mm/init.c