I reran aioalloc against this set plus the cpu macro fix and setup_per_zone_pages_min(). I've placed my vmlinux in: http://developer.osdl.org/markw/hotplug/kernels/vmlinux-2.6.10-osdl3.bz2 Let me know if I forgot anything. # make test ./run.sh 5 ./aioalloc online 8 (0x40000000) online 9 (0x48000000) online 10 (0x50000000) On the console: cl007 login: ------------[ cut here ]------------ pfn_to_page() pfn: 00040000 phys_section: 8 mem_section: 65535 has no mem_map kernel BUG at mm/nonlinear.c:153! invalid operand: 0000 [#1] PREEMPT SMP Modules linked in: CPU: 1 EIP: 0060:[<c0168661>] Not tainted VLI EFLAGS: 00010086 (2.6.10-osdl3) EIP is at pfn_to_page+0x71/0x90 eax: 00000051 ebx: 00040000 ecx: c140e020 edx: 00000001 esi: 00000008 edi: 00000001 ebp: 00000001 esp: deb33f2c ds: 007b es: 007b ss: 0068 Process default.hotplug (pid: 7056, threadinfo=deb32000 task=de846550) Stack: c039147c c037b9bf 00040000 00000008 0000ffff 00000000 00000000 c01495c1 00040000 c13c1e80 c03777ad c03d3208 c13c1ea0 c03d3200 00000000 00000086 c03d3500 c03d3400 00000001 00000001 c0149f3a c03d3400 00000000 c03d3510 Call Trace: [<c01495c1>] free_pages_bulk+0x21/0x340 [<c03777ad>] _spin_unlock+0xd/0x30 [<c0149f3a>] __drain_pages+0x4a/0x90 [<c014a0e0>] rmb_and_drain_cpu_pages+0x0/0x10 [<c014a0c7>] drain_local_pages+0x17/0x30 [<c0112ca1>] smp_call_function_interrupt+0x41/0x70 [<c0103e90>] call_function_interrupt+0x1c/0x24 Code: 5c 24 14 83 c4 1c c3 8d 76 00 89 54 24 10 b9 bf b9 37 c0 89 74 24 0c 89 5c 24 08 89 4c 24 04 c7 04 24 7c 14 39 c0 e8 2f 96 fb ff <0f> 0b 99 00 c9 1e 39 c0 0f b7 84 36 e0 f5 4b c0 eb a7 8d b6 00 ------------[ cut here ]------------ Kernel panic - not syncing: Fatal exception in interrupt <1>kernel BUG at mm/nonlinear.c:153! invalid operand: 0000 [#2] PREEMPT SMP Modules linked in: CPU: 0 EIP: 0060:[<c0168661>] Not tainted VLI EFLAGS: 00010092 (2.6.10-osdl3) EIP is at pfn_to_page+0x71/0x90 eax: 00000051 ebx: 00040000 ecx: 00008000 edx: 00000001 esi: 00000008 edi: 00000001 ebp: 00000000 esp: de195de4 ds: 007b es: 007b ss: 0068 Process sh (pid: 7032, threadinfo=de194000 task=df22fa80) Stack: c039147c c037b9bf 00040000 00000008 0000ffff 00000000 00000000 c01495c1 00040000 c13ce4c0 c03d0700 c03d3208 c13ce4e0 c03d3200 00000000 00000086 c03d3480 c03d3400 00000001 00000000 c0149f3a c03d3400 00000000 c03d3490 Call Trace: [<c01495c1>] free_pages_bulk+0x21/0x340 [<c0149f3a>] __drain_pages+0x4a/0x90 [<c014a0c7>] drain_local_pages+0x17/0x30 [<c014a2b7>] capture_page_range+0x77/0x270 [<c0168e50>] __remove_pages+0x40/0xe2 [<c028300f>] memory_block_action+0x10f/0x1b0 [<c02830ff>] memory_block_change_state+0x4f/0x60 [<c02831fe>] store_mem_state+0xee/0x140 [<c027e305>] sysdev_store+0x35/0x40 [<c01a4a7e>] flush_write_buffer+0x3e/0x50 [<c01a4b04>] sysfs_write_file+0x74/0x90 [<c016b538>] vfs_write+0xc8/0x170 [<c016b6b1>] sys_write+0x51/0x80 [<c01034b7>] syscall_call+0x7/0xb Code14 83 c4 1c c3 8d 76 00 89 54 24 10 b9 bf b9 37 c0 89 74 24 0c 89 5c 24 08 89 4c 24 04 c7 04 24 7c 14 39 c0 e8 2f 96 fb ff <0f> 0b 99 00 c9 1e 39 c0 0f b7 84 36 e0 f5 4b c0 eb a7 8d b6 00 Badness in do_unblank_screen at drivers/char/vt.c:2836 [<c0270ea1>] do_unblank_screen+0x151/0x160 [<c0270ebf>] unblank_screen+0xf/0x20 [<c011720c>] bust_spinlocks+0x2c/0x60 [<c010476b>] die+0x11b/0x180 [<c0104c52>] do_invalid_op+0xb2/0xd0 [<c01334ae>] queue_work+0x8e/0xa0 [<c0168661>] pfn_to_page+0x71/0x90 [<c0133260>] __call_usermodehelper+0x0/0x70 [<c02286a6>] vsnprintf+0x256/0x4d0 [<c011c5d7>] __wake_up_locked+0x27/0x30 [<c037783f>] _spin_unlock_irqrestore+0xf/0x30 [<c01023ca>] __down_trylock+0x3a/0x60 [<c0103f7f>] error_code+0x2b/0x30 [<c0168661>] pfn_to_page+0x71/0x90 [<c01495c1>] free_pages_bulk+0x21/0x340 [<c0149f3a>] __drain_pages+0x4a/0x90 [<c014a0c7>] drain_local_pages+0x17/0x30 [<c014a2b7>] capture_page_range+0x77/0x270 [<c0168e50>] __remove_pages+0x40/0xe2 [<c028300f>] memory_block_action+0x10f/0x1b0 [<c02830ff>] memory_block_change_state+0x4f/0x60 [<c02831fe>] store_mem_state+0xee/0x140 [<c027e305>] sysdev_store+0x35/0x40 [<c01a4a7e>] flush_write_buffer+0x3e/0x50 [<c01a4b04>] sysfs_write_file+0x74/0x90 [<c016b538>] vfs_write+0xc8/0x170 [<c016b6b1>] sys_write+0x51/0x80 [<c01034b7>] syscall_call+0x7/0xb