nuke ->valid_addr_bitmap
Subsystems (4)
->valid_addr_bitmap is initialized nowhere. Any kern_addr_valid() testing it returns 0 unconditionally.
This patch converts kern_addr_valid() implementations using it to return 0 as per the above and removes it from structures and zone initialization. Untested (not even compiletested), though a similar patch also nuking d_validate() was in use in -wli for several months.
vs. current bk as of 1:38AM 22 Jan 2004.
-- wli
===== include/asm-alpha/mmzone.h 1.9 vs edited =====
include/asm-alpha/mmzone.h +2 -3
@@ -72,9 +72,8 @@ ((unsigned long )__va (NODE_DATA (kvaddr_to_nid (kaddr))->node_start_pfn \ <<PAGE_SHIFT )) -#define kern_addr_valid (kaddr) \ - test_bit(local_mapnr(kaddr), \ - NODE_DATA(kvaddr_to_nid(kaddr))->valid_addr_bitmap) +/* XXX: FIXME -- wli */ +#define kern_addr_valid (kaddr) (0)#define virt_to_page (kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
===== include/asm-i386/mmzone.h 1.15 vs edited =====
include/asm-i386/mmzone.h +2 -6
@@ -62,12 +62,8 @@ (__pfn -node_start_pfn (pfn_to_nid (__pfn))); \ }) -#define kern_addr_valid (kaddr) \ -({ \ - unsigned long __kaddr = (unsigned long)(kaddr); \ - pg_data_t *__pgdat = NODE_DATA(kvaddr_to_nid(__kaddr)); \ - test_bit(local_mapnr(__kaddr), __pgdat->valid_addr_bitmap); \ -}) +/* XXX: FIXME -- wli */ +#define kern_addr_valid (kaddr) (0)#define pfn_to_page (pfn) \ ({ \
===== include/asm-mips/mmzone.h 1.9 vs edited =====
include/asm-mips/mmzone.h +2 -3
@@ -75,9 +75,8 @@ (((unsigned long)ADDR_TO_MAPBASE((kaddr)) - PAGE_OFFSET) / \ sizeof(struct page)))) -#define kern_addr_valid (addr) ((KVADDR_TO_NID((unsigned long)addr) > \ - -1) ? 0 : (test_bit(LOCAL_MAP_NR((addr)), \ - NODE_DATA(KVADDR_TO_NID((unsigned long)addr))->valid_addr_bitmap))) +/* XXX: FIXME -- wli */ +#define kern_addr_valid (addr) (0)#define pfn_to_page (pfn) (mem_map + (pfn))#define page_to_pfn (page) \
===== include/asm-ppc64/mmzone.h 1.13 vs edited =====
include/asm-ppc64/mmzone.h +2 -5
@@ -72,11 +72,8 @@#define local_mapnr (kvaddr) \ ( (__pa(kvaddr) >> PAGE_SHIFT) - node_start_pfn(kvaddr_to_nid(kvaddr)) -#if 0 -/* XXX fix - Anton */ -#define kern_addr_valid (kaddr) test_bit(local_mapnr(kaddr), \ - NODE_DATA(kvaddr_to_nid(kaddr))->valid_addr_bitmap) -#endif +/* XXX fix - Anton - and wli */ +#define kern_addr_valid (kaddr) (0)/* Written this way to avoid evaluating arguments twice */ #define discontigmem_pfn_to_page (pfn) \
===== include/linux/mmzone.h 1.49 vs edited =====
include/linux/mmzone.h +0 -1
@@ -205,7 +205,6 @@struct zonelist node_zonelists[MAX_NR_ZONES ];int nr_zones;struct page *node_mem_map; -unsigned long *valid_addr_bitmap;struct bootmem_data *bdata;unsigned long node_start_pfn;unsigned long node_present_pages;/* total number of physical pages */
===== mm/page_alloc.c 1.181 vs edited =====
mm/page_alloc.c +0 -20
@@ -1182,24 +1182,6 @@printk ("On node %d totalpages: %lu\n" , pgdat->node_id, realtotalpages); } -/* -* Get space for the valid bitmap. -*/ -static void __init calculate_zone_bitmap (struct pglist_data *pgdat, -unsigned long *zones_size) -{ -unsigned long size =0 ; -int i; - -for (i =0 ; i <MAX_NR_ZONES ; i++) - size += zones_size[i]; - size =LONG_ALIGN ((size +7 ) >>3 ); -if (size) { - pgdat->valid_addr_bitmap = - (unsigned long *)alloc_bootmem_node (pgdat, size); -memset (pgdat->valid_addr_bitmap,0 , size); - } -}/* * Initially all pages are reserved - free ones are freed
@@ -1393,8 +1375,6 @@free_area_init_core (pgdat, zones_size, zholes_size);memblk_set_online (node_to_memblk (nid)); - -calculate_zone_bitmap (pgdat, zones_size); }#ifndef CONFIG_DISCONTIGMEM