top_pmd = pmd_off_k(VECTORS_HIGH); 
top_pmd = pmd_off_k(0xffff0000); 
void __init memtable_init(struct meminfo *mi){	struct map_desc *init_maps, *p, *q;	unsigned long address = 0;	int i;	build_mem_type_table();	init_maps = p = alloc_bootmem_low_pages(PAGE_SIZE);#ifdef CONFIG_XIP_KERNEL	p->physical   = CONFIG_XIP_PHYS_ADDR & PMD_MASK;	p->virtual    = (unsigned long)&_stext & PMD_MASK;	p->length     = ((unsigned long)&_etext - p->virtual + ~PMD_MASK) & PMD_MASK;	p->type       = MT_ROM;	p ++;#endif	for (i = 0; i < mi->nr_banks; i++) {		if (mi->bank[i].size == 0)			continue;		p->physical   = mi->bank[i].start;		p->virtual    = __phys_to_virt(p->physical);		p->length     = mi->bank[i].size;		p->type       = MT_MEMORY;		p ++;	}#ifdef FLUSH_BASE	p->physical   = FLUSH_BASE_PHYS;	p->virtual    = FLUSH_BASE;	p->length     = PGDIR_SIZE;	p->type       = MT_CACHECLEAN;	p ++;#endif#ifdef FLUSH_BASE_MINICACHE	p->physical   = FLUSH_BASE_PHYS + PGDIR_SIZE;	p->virtual    = FLUSH_BASE_MINICACHE;	p->length     = PGDIR_SIZE;	p->type       = MT_MINICLEAN;	p ++;#endif	/*	 * Go through the initial mappings, but clear out any	 * pgdir entries that are not in the description.	 */	q = init_maps;	do {		if (address < q->virtual || q == p) {			clear_mapping(address);			address += PGDIR_SIZE;		} else {			create_mapping(q);			address = q->virtual + q->length;			address = (address + PGDIR_SIZE - 1) & PGDIR_MASK;			q ++;		}	} while (address != 0);	/*	 * Create a mapping for the machine vectors at the high-vectors	 * location (0xffff0000).  If we aren't using high-vectors, also	 * create a mapping at the low-vectors virtual address.	 */	init_maps->physical   = virt_to_phys(init_maps);	init_maps->virtual    = 0xffff0000;	init_maps->length     = PAGE_SIZE;	init_maps->type       = MT_HIGH_VECTORS;	create_mapping(init_maps);	if (!vectors_high()) {		init_maps->virtual = 0;		init_maps->type = MT_LOW_VECTORS;		create_mapping(init_maps);	}	flush_cache_all();	flush_tlb_all();	top_pmd = pmd_off_k(VECTORS_HIGH);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/8711a1b902e691c9b3bbd0d0624f836abe9641ca/mm-armv.c/buggy/arch/arm/mm/mm-armv.c