#ifdef CONFIG_DISCONTIGMEM 
#ifdef CONFIG_NEED_MULTIPLE_NODES 
void __init mem_init(void){#ifdef CONFIG_DISCONTIGMEM	int nid;#endif	pg_data_t *pgdat;	unsigned long i;	struct page *page;	unsigned long reservedpages = 0, codesize, initsize, datasize, bsssize;	num_physpages = max_low_pfn;	/* RAM is assumed contiguous */	high_memory = (void *) __va(max_low_pfn * PAGE_SIZE);#ifdef CONFIG_DISCONTIGMEM        for_each_online_node(nid) {		if (NODE_DATA(nid)->node_spanned_pages != 0) {			printk("freeing bootmem node %x\n", nid);			totalram_pages +=				free_all_bootmem_node(NODE_DATA(nid));		}	}#else	max_mapnr = num_physpages;	totalram_pages += free_all_bootmem();#endif	for_each_pgdat(pgdat) {		for (i = 0; i < pgdat->node_spanned_pages; i++) {			page = pgdat_page_nr(pgdat, i);			if (PageReserved(page))				reservedpages++;		}	}	codesize = (unsigned long)&_etext - (unsigned long)&_stext;	initsize = (unsigned long)&__init_end - (unsigned long)&__init_begin;	datasize = (unsigned long)&_edata - (unsigned long)&__init_end;	bsssize = (unsigned long)&__bss_stop - (unsigned long)&__bss_start;	printk(KERN_INFO "Memory: %luk/%luk available (%luk kernel code, "	       "%luk reserved, %luk data, %luk bss, %luk init)\n",		(unsigned long)nr_free_pages() << (PAGE_SHIFT-10),		num_physpages << (PAGE_SHIFT-10),		codesize >> 10,		reservedpages << (PAGE_SHIFT-10),		datasize >> 10,		bsssize >> 10,		initsize >> 10);	mem_init_done = 1;#ifdef CONFIG_PPC_ISERIES	iommu_vio_init();#endif	/* Initialize the vDSO */	vdso_init();}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/145e664231648121026d470094c200851a446a73/init.c/buggy/arch/ppc64/mm/init.c