* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 [not found] ` <20111121153621.GA1678@x4.trippels.de> @ 2011-11-23 16:03 ` Markus Trippelsdorf 2011-11-23 16:06 ` Christoph Lameter 0 siblings, 1 reply; 26+ messages in thread From: Markus Trippelsdorf @ 2011-11-23 16:03 UTC (permalink / raw) To: Eric Dumazet Cc: Alex,Shi, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Christoph Lameter, Pekka Enberg, Matt Mackall, netdev@vger.kernel.org, tj, dri-devel, Alex Deucher On 2011.11.21 at 16:36 +0100, Markus Trippelsdorf wrote: > On 2011.11.21 at 15:16 +0100, Eric Dumazet wrote: > > Le lundi 21 novembre 2011 à 14:15 +0100, Markus Trippelsdorf a écrit : > > > > > I've enabled CONFIG_SLUB_DEBUG_ON and this is what happend: > > > > > > > Thanks > > > > Please continue to provide more samples. > > > > There is something wrong somewhere, but where exactly, its hard to say. > > New sample. This one points to lib/idr.c: > > [drm] Initialized drm 1.1.0 20060810 > [drm] radeon defaulting to kernel modesetting. > [drm] radeon kernel modesetting enabled. > radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 > radeon 0000:01:05.0: setting latency timer to 64 > [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). > [drm] register mmio base: 0xFBEE0000 > [drm] register mmio size: 65536 > ATOM BIOS: 113 > radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) > radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF > [drm] Detected VRAM RAM=128M, BAR=128M > [drm] RAM width 32bits DDR > [TTM] Zone kernel: Available graphics memory: 4083428 kiB. > [TTM] Zone dma32: Available graphics memory: 2097152 kiB. > [TTM] Initializing pool allocator. > [drm] radeon: 128M of VRAM memory ready > [drm] radeon: 512M of GTT memory ready. > [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). > [drm] Driver supports precise vblank timestamp query. > [drm] radeon: irq initialized. > [drm] GART: num cpu pages 131072, num gpu pages 131072 > [drm] Loading RS780 Microcode > [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). > radeon 0000:01:05.0: WB enabled > [drm] ring test succeeded in 1 usecs > [drm] radeon: ib pool ready. > [drm] ib test succeeded in 0 usecs > ============================================================================= > BUG idr_layer_cache: Poison overwritten > ----------------------------------------------------------------------------- > > INFO: 0xffff880215650800-0xffff880215650803. First byte 0x0 instead of 0x6b > INFO: Slab 0xffffea0008559400 objects=18 used=18 fp=0x (null) flags=0x4000000000004080 > INFO: Object 0xffff8802156506d0 @offset=1744 fp=0xffff880215650a38 > > Bytes b4 ffff8802156506c0: a4 6f fb ff 00 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a .o......ZZZZZZZZ > Object ffff8802156506d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156506e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156506f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650700: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650710: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650720: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650730: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650740: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650750: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650760: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650770: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650780: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650790: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507b0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156507f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > Object ffff880215650810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650820: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650830: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650840: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650850: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650860: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650870: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650880: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215650890: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156508a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156508b0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156508c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156508d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156508e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk. > Redzone ffff8802156508f0: bb bb bb bb bb bb bb bb ........ > Padding ffff880215650a30: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ > Pid: 1, comm: swapper Not tainted 3.2.0-rc2-00274-g6fe4c6d #71 > Call Trace: > [<ffffffff81101cf8>] ? print_section+0x38/0x40 > [<ffffffff811021f3>] print_trailer+0xe3/0x150 > [<ffffffff811023f0>] check_bytes_and_report+0xe0/0x100 > [<ffffffff811031e6>] check_object+0x1c6/0x240 > [<ffffffff812031f0>] ? idr_pre_get+0x60/0x90 > [<ffffffff814c5c43>] alloc_debug_processing+0x62/0xe4 > [<ffffffff814c64f1>] __slab_alloc.constprop.69+0x1a4/0x1e0 > [<ffffffff8129ae77>] ? drm_property_create+0x47/0x110 > [<ffffffff812031f0>] ? idr_pre_get+0x60/0x90 > [<ffffffff81104db1>] kmem_cache_alloc+0x121/0x150 > [<ffffffff812031f0>] ? idr_pre_get+0x60/0x90 > [<ffffffff812031f0>] idr_pre_get+0x60/0x90 > [<ffffffff8129870a>] drm_mode_object_get+0x6a/0xc0 > [<ffffffff8129ae95>] drm_property_create+0x65/0x110 > [<ffffffff8129b15d>] drm_mode_config_init+0xfd/0x190 > [<ffffffff812e12ad>] radeon_modeset_init+0x1d/0x860 > [<ffffffff813211c7>] ? radeon_acpi_init+0x87/0xc0 > [<ffffffff812c37b8>] radeon_driver_load_kms+0xf8/0x150 > [<ffffffff81295a06>] drm_get_pci_dev+0x186/0x2d0 > [<ffffffff814bf1fd>] ? radeon_pci_probe+0x9e/0xb8 > [<ffffffff814bf20f>] radeon_pci_probe+0xb0/0xb8 > [<ffffffff8121be15>] pci_device_probe+0x75/0xa0 > [<ffffffff81324e1a>] ? driver_sysfs_add+0x7a/0xb0 > [<ffffffff81325021>] driver_probe_device+0x71/0x190 > [<ffffffff813251db>] __driver_attach+0x9b/0xa0 > [<ffffffff81325140>] ? driver_probe_device+0x190/0x190 > [<ffffffff81323e0d>] bus_for_each_dev+0x4d/0x90 > [<ffffffff813252f9>] driver_attach+0x19/0x20 > [<ffffffff81324598>] bus_add_driver+0x188/0x250 > [<ffffffff81325942>] driver_register+0x72/0x150 > [<ffffffff81321de5>] ? device_add+0x75/0x600 > [<ffffffff8121bb7d>] __pci_register_driver+0x5d/0xd0 > [<ffffffff81295c54>] drm_pci_init+0x104/0x120 > [<ffffffff818abefa>] ? ttm_init+0x62/0x62 > [<ffffffff818abfe1>] radeon_init+0xe7/0xe9 > [<ffffffff81890883>] do_one_initcall+0x7a/0x129 > [<ffffffff818909cc>] kernel_init+0x9a/0x114 > [<ffffffff814cddb4>] kernel_thread_helper+0x4/0x10 > [<ffffffff81890932>] ? do_one_initcall+0x129/0x129 > [<ffffffff814cddb0>] ? gs_change+0xb/0xb > FIX idr_layer_cache: Restoring 0xffff880215650800-0xffff880215650803=0x6b > > FIX idr_layer_cache: Marking all objects used Yesterday I couldn't reproduce the issue at all. But today I've hit exactly the same spot again. (CCing the drm list) [drm] Initialized drm 1.1.0 20060810 [drm] radeon defaulting to kernel modesetting. [drm] radeon kernel modesetting enabled. radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 radeon 0000:01:05.0: setting latency timer to 64 [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). [drm] register mmio base: 0xFBEE0000 [drm] register mmio size: 65536 ATOM BIOS: 113 radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF [drm] Detected VRAM RAM=128M, BAR=128M [drm] RAM width 32bits DDR [TTM] Zone kernel: Available graphics memory: 4083428 kiB. [TTM] Zone dma32: Available graphics memory: 2097152 kiB. [TTM] Initializing pool allocator. [drm] radeon: 128M of VRAM memory ready [drm] radeon: 512M of GTT memory ready. [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). [drm] Driver supports precise vblank timestamp query. [drm] radeon: irq initialized. [drm] GART: num cpu pages 131072, num gpu pages 131072 [drm] Loading RS780 Microcode [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). radeon 0000:01:05.0: WB enabled [drm] ring test succeeded in 1 usecs [drm] radeon: ib pool ready. [drm] ib test succeeded in 0 usecs ============================================================================= BUG idr_layer_cache: Poison overwritten ----------------------------------------------------------------------------- INFO: 0xffff880215648800-0xffff880215648803. First byte 0x0 instead of 0x6b INFO: Slab 0xffffea0008559200 objects=18 used=18 fp=0x (null) flags=0x4000000000004080 INFO: Object 0xffff8802156486d0 @offset=1744 fp=0xffff880215648a38 Bytes b4 ffff8802156486c0: 66 75 fb ff 00 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a fu......ZZZZZZZZ Object ffff8802156486d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156486e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156486f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648700: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648710: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648720: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648730: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648740: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648750: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648760: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648770: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648780: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648790: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487b0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648820: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648830: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648840: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648850: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648860: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648870: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648880: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff880215648890: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156488a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156488b0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156488c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156488d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Object ffff8802156488e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk. Redzone ffff8802156488f0: bb bb bb bb bb bb bb bb ........ Padding ffff880215648a30: 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZ Pid: 1, comm: swapper Not tainted 3.2.0-rc2-00438-g4d8c62a-dirty #105 Call Trace: [<ffffffff81101fb8>] ? print_section+0x38/0x40 [<ffffffff811024b3>] print_trailer+0xe3/0x150 [<ffffffff811026b0>] check_bytes_and_report+0xe0/0x100 [<ffffffff811034a6>] check_object+0x1c6/0x240 [<ffffffff81203550>] ? idr_pre_get+0x60/0x90 [<ffffffff814c5fab>] alloc_debug_processing+0x62/0xe4 [<ffffffff814c6887>] __slab_alloc.constprop.69+0x1a4/0x1e0 [<ffffffff8129b287>] ? drm_property_create+0x47/0x110 [<ffffffff81203550>] ? idr_pre_get+0x60/0x90 [<ffffffff81105071>] kmem_cache_alloc+0x121/0x150 [<ffffffff81203550>] ? idr_pre_get+0x60/0x90 [<ffffffff81203550>] idr_pre_get+0x60/0x90 [<ffffffff81298b0a>] drm_mode_object_get+0x6a/0xc0 [<ffffffff8129b2a5>] drm_property_create+0x65/0x110 [<ffffffff8129b56d>] drm_mode_config_init+0xfd/0x190 [<ffffffff812e157d>] radeon_modeset_init+0x1d/0x860 [<ffffffff81321547>] ? radeon_acpi_init+0x87/0xc0 [<ffffffff812c3bc8>] radeon_driver_load_kms+0xf8/0x150 [<ffffffff81295e06>] drm_get_pci_dev+0x186/0x2d0 [<ffffffff814bf56d>] ? radeon_pci_probe+0x9e/0xb8 [<ffffffff814bf57f>] radeon_pci_probe+0xb0/0xb8 [<ffffffff8121c175>] pci_device_probe+0x75/0xa0 [<ffffffff8132519a>] ? driver_sysfs_add+0x7a/0xb0 [<ffffffff813253a1>] driver_probe_device+0x71/0x190 [<ffffffff8132555b>] __driver_attach+0x9b/0xa0 [<ffffffff813254c0>] ? driver_probe_device+0x190/0x190 [<ffffffff8132418d>] bus_for_each_dev+0x4d/0x90 [<ffffffff81325679>] driver_attach+0x19/0x20 [<ffffffff81324918>] bus_add_driver+0x188/0x250 [<ffffffff81325cc2>] driver_register+0x72/0x150 [<ffffffff81322165>] ? device_add+0x75/0x600 [<ffffffff8121bedd>] __pci_register_driver+0x5d/0xd0 [<ffffffff81296054>] drm_pci_init+0x104/0x120 [<ffffffff818abf51>] ? ttm_init+0x62/0x62 [<ffffffff818ac038>] radeon_init+0xe7/0xe9 [<ffffffff81890883>] do_one_initcall+0x7a/0x129 [<ffffffff818909cc>] kernel_init+0x9a/0x114 [<ffffffff814ce174>] kernel_thread_helper+0x4/0x10 [<ffffffff81890932>] ? do_one_initcall+0x129/0x129 [<ffffffff814ce170>] ? gs_change+0xb/0xb FIX idr_layer_cache: Restoring 0xffff880215648800-0xffff880215648803=0x6b FIX idr_layer_cache: Marking all objects used [drm] Radeon Display Connectors [drm] Connector 0: [drm] VGA [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c [drm] Encoders: [drm] CRT1: INTERNAL_KLDSCP_DAC1 [drm] Connector 1: [drm] DVI-D [drm] HPD3 [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c [drm] Encoders: [drm] DFP3: INTERNAL_KLDSCP_LVTMA [drm] radeon: power management initialized [drm] fb mappable at 0xF0142000 [drm] vram apper at 0xF0000000 [drm] size 7299072 [drm] fb depth is 24 [drm] pitch is 6912 fbcon: radeondrmfb (fb0) is primary device Console: switching to colour frame buffer device 131x105 fb0: radeondrmfb frame buffer device drm: registered panic notifier [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-11-23 16:03 ` WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 Markus Trippelsdorf @ 2011-11-23 16:06 ` Christoph Lameter 2011-11-24 8:50 ` Markus Trippelsdorf 0 siblings, 1 reply; 26+ messages in thread From: Christoph Lameter @ 2011-11-23 16:06 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Eric Dumazet, Alex,Shi, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Pekka Enberg, Matt Mackall, netdev@vger.kernel.org, tj, dri-devel, Alex Deucher On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > FIX idr_layer_cache: Marking all objects used > > Yesterday I couldn't reproduce the issue at all. But today I've hit > exactly the same spot again. (CCing the drm list) Well this is looks like write after free. > ============================================================================= > BUG idr_layer_cache: Poison overwritten > ----------------------------------------------------------------------------- > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk And its an integer sized write of 0. If you look at the struct definition and lookup the offset you should be able to locate the field that was modified. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-11-23 16:06 ` Christoph Lameter @ 2011-11-24 8:50 ` Markus Trippelsdorf 2011-12-01 8:44 ` Markus Trippelsdorf 2011-12-02 23:04 ` Jerome Glisse 0 siblings, 2 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-11-24 8:50 UTC (permalink / raw) To: Christoph Lameter Cc: Eric Dumazet, Alex,Shi, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Pekka Enberg, Matt Mackall, netdev@vger.kernel.org, tj, dri-devel, Alex Deucher On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > FIX idr_layer_cache: Marking all objects used > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > exactly the same spot again. (CCing the drm list) > > Well this is looks like write after free. > > > ============================================================================= > > BUG idr_layer_cache: Poison overwritten > > ----------------------------------------------------------------------------- > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > And its an integer sized write of 0. If you look at the struct definition > and lookup the offset you should be able to locate the field that > was modified. Here are two more BUGs that seem to point to the same bug: 1) ... Nov 21 18:30:30 x4 kernel: [drm] radeon: irq initialized. Nov 21 18:30:30 x4 kernel: [drm] GART: num cpu pages 131072, num gpu pages 131072 Nov 21 18:30:30 x4 kernel: [drm] Loading RS780 Microcode Nov 21 18:30:30 x4 kernel: [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). Nov 21 18:30:30 x4 kernel: radeon 0000:01:05.0: WB enabled Nov 21 18:30:30 x4 kernel: ============================================================================= Nov 21 18:30:30 x4 kernel: BUG task_xstate: Not a valid slab page Nov 21 18:30:30 x4 kernel: ----------------------------------------------------------------------------- Nov 21 18:30:30 x4 kernel: Nov 21 18:30:30 x4 kernel: INFO: Slab 0xffffea0000044300 objects=32767 used=65535 fp=0x (null) flags=0x0401 Nov 21 18:30:30 x4 kernel: Pid: 9, comm: ksoftirqd/1 Not tainted 3.2.0-rc2-00274-g6fe4c6d-dirty #75 Nov 21 18:30:30 x4 kernel: Call Trace: Nov 21 18:30:30 x4 kernel: [<ffffffff81101c1d>] slab_err+0x7d/0x90 Nov 21 18:30:30 x4 kernel: [<ffffffff8103e29f>] ? dump_trace+0x16f/0x2e0 Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] ? free_thread_xstate+0x24/0x40 Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] ? free_thread_xstate+0x24/0x40 Nov 21 18:30:30 x4 kernel: [<ffffffff81102566>] check_slab+0x96/0xc0 Nov 21 18:30:30 x4 kernel: [<ffffffff814c5c29>] free_debug_processing+0x34/0x19c Nov 21 18:30:30 x4 kernel: [<ffffffff81101d9a>] ? set_track+0x5a/0x190 Nov 21 18:30:30 x4 kernel: [<ffffffff8110cf2b>] ? sys_open+0x1b/0x20 Nov 21 18:30:30 x4 kernel: [<ffffffff814c5e55>] __slab_free+0x33/0x2d0 Nov 21 18:30:30 x4 kernel: [<ffffffff8110cf2b>] ? sys_open+0x1b/0x20 Nov 21 18:30:30 x4 kernel: [<ffffffff81105134>] kmem_cache_free+0x104/0x120 Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] free_thread_xstate+0x24/0x40 Nov 21 18:30:30 x4 kernel: [<ffffffff81044794>] free_thread_info+0x14/0x30 Nov 21 18:30:30 x4 kernel: [<ffffffff8106a4ff>] free_task+0x2f/0x50 Nov 21 18:30:30 x4 kernel: [<ffffffff8106a5d0>] __put_task_struct+0xb0/0x110 Nov 21 18:30:30 x4 kernel: [<ffffffff8106eb4b>] delayed_put_task_struct+0x3b/0xa0 Nov 21 18:30:30 x4 kernel: [<ffffffff810aa01a>] __rcu_process_callbacks+0x12a/0x350 Nov 21 18:30:30 x4 kernel: [<ffffffff810aa2a2>] rcu_process_callbacks+0x62/0x140 Nov 21 18:30:30 x4 kernel: [<ffffffff81072e18>] __do_softirq+0xa8/0x200 Nov 21 18:30:30 x4 kernel: [<ffffffff81073077>] run_ksoftirqd+0x107/0x210 Nov 21 18:30:30 x4 kernel: [<ffffffff81072f70>] ? __do_softirq+0x200/0x200 Nov 21 18:30:30 x4 kernel: [<ffffffff8108bb87>] kthread+0x87/0x90 Nov 21 18:30:30 x4 kernel: [<ffffffff814cdcf4>] kernel_thread_helper+0x4/0x10 Nov 21 18:30:30 x4 kernel: [<ffffffff8108bb00>] ? kthread_flush_work_fn+0x10/0x10 Nov 21 18:30:30 x4 kernel: [<ffffffff814cdcf0>] ? gs_change+0xb/0xb Nov 21 18:30:30 x4 kernel: FIX task_xstate: Object at 0xffffffff8110cf2b not freed Nov 21 18:30:30 x4 kernel: [drm] ring test succeeded in 1 usecs Nov 21 18:30:30 x4 kernel: [drm] radeon: ib pool ready. Nov 21 18:30:30 x4 kernel: [drm] ib test succeeded in 0 usecs Nov 21 18:30:30 x4 kernel: [drm] Radeon Display Connectors Nov 21 18:30:30 x4 kernel: [drm] Connector 0 2) ... Nov 21 17:04:38 x4 kernel: fbcon: radeondrmfb (fb0) is primary device Nov 21 17:04:38 x4 kernel: Console: switching to colour frame buffer device 131x105 Nov 21 17:04:38 x4 kernel: fb0: radeondrmfb frame buffer device Nov 21 17:04:38 x4 kernel: drm: registered panic notifier Nov 21 17:04:38 x4 kernel: [drm] Initialized radeon 2.11.0 20080528 for 0000:01:05.0 on minor 0 Nov 21 17:04:38 x4 kernel: loop: module loaded Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: version 3.0 Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22 Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: AHCI 0001.0100 32 slots 6 ports 3 Gbps 0x3f impl SATA mode Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc Nov 21 17:04:38 x4 kernel: scsi0 : ahci Nov 21 17:04:38 x4 kernel: scsi1 : ahci Nov 21 17:04:38 x4 kernel: ============================================================================= Nov 21 17:04:38 x4 kernel: BUG task_struct: Poison overwritten Nov 21 17:04:38 x4 kernel: ----------------------------------------------------------------------------- Nov 21 17:04:38 x4 kernel: Nov 21 17:04:38 x4 kernel: INFO: 0xffff880215c43800-0xffff880215c43803. First byte 0x0 instead of 0x6b Nov 21 17:04:38 x4 kernel: INFO: Allocated in copy_process+0xc4/0xf60 age=168 cpu=1 pid=5 Nov 21 17:04:38 x4 kernel: __slab_alloc.constprop.70+0x1a4/0x1e0 Nov 21 17:04:38 x4 kernel: kmem_cache_alloc+0x126/0x160 Nov 21 17:04:38 x4 kernel: copy_process+0xc4/0xf60 Nov 21 17:04:38 x4 kernel: do_fork+0x100/0x2b0 Nov 21 17:04:38 x4 kernel: kernel_thread+0x6c/0x70 Nov 21 17:04:38 x4 kernel: __call_usermodehelper+0x31/0xa0 Nov 21 17:04:38 x4 kernel: process_one_work+0x11a/0x430 Nov 21 17:04:38 x4 kernel: worker_thread+0x126/0x2d0 Nov 21 17:04:38 x4 kernel: kthread+0x87/0x90 Nov 21 17:04:38 x4 kernel: kernel_thread_helper+0x4/0x10 Nov 21 17:04:38 x4 kernel: INFO: Freed in free_task+0x3e/0x50 age=156 cpu=2 pid=13 Nov 21 17:04:38 x4 kernel: __slab_free+0x33/0x2d0 Nov 21 17:04:38 x4 kernel: kmem_cache_free+0x104/0x120 Nov 21 17:04:38 x4 kernel: free_task+0x3e/0x50 Nov 21 17:04:38 x4 kernel: __put_task_struct+0xb0/0x110 Nov 21 17:04:38 x4 kernel: delayed_put_task_struct+0x3b/0xa0 Nov 21 17:04:38 x4 kernel: __rcu_process_callbacks+0x12a/0x350 Nov 21 17:04:38 x4 kernel: rcu_process_callbacks+0x62/0x140 Nov 21 17:04:38 x4 kernel: __do_softirq+0xa8/0x200 Nov 21 17:04:38 x4 kernel: run_ksoftirqd+0x107/0x210 Nov 21 17:04:38 x4 kernel: kthread+0x87/0x90 Nov 21 17:04:38 x4 kernel: kernel_thread_helper+0x4/0x10 Nov 21 17:04:38 x4 kernel: INFO: Slab 0xffffea0008571000 objects=17 used=17 fp=0x (null) flags=0x4000000000004080 Nov 21 17:04:38 x4 kernel: INFO: Object 0xffff880215c432c0 @offset=12992 fp=0xffff880215c41d00 Nov 21 17:04:38 x4 kernel: Nov 21 17:04:38 x4 kernel: Bytes b4 ffff880215c432b0: 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZZZZZZZZZ Nov 21 17:04:38 x4 kernel: Object ffff880215c432c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk ... Nov 21 17:04:38 x4 kernel: Object ffff880215c437f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43820: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43830: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43840: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43850: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43860: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43870: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43880: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c43890: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Nov 21 17:04:38 x4 kernel: Object ffff880215c438a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk. Nov 21 17:04:38 x4 kernel: Redzone ffff880215c438b0: bb bb bb bb bb bb bb bb ........ Nov 21 17:04:38 x4 kernel: Padding ffff880215c439f0: 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZZZZZZZZZ Nov 21 17:04:38 x4 kernel: Pid: 5, comm: kworker/u:0 Not tainted 3.2.0-rc2-00274-g6fe4c6d #72 Nov 21 17:04:38 x4 kernel: Call Trace: Nov 21 17:04:38 x4 kernel: [<ffffffff81101ca8>] ? print_section+0x38/0x40 Nov 21 17:04:38 x4 kernel: [<ffffffff811021a3>] print_trailer+0xe3/0x150 Nov 21 17:04:38 x4 kernel: [<ffffffff811023a0>] check_bytes_and_report+0xe0/0x100 Nov 21 17:04:38 x4 kernel: [<ffffffff81103196>] check_object+0x1c6/0x240 Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 Nov 21 17:04:38 x4 kernel: [<ffffffff814c5bb3>] alloc_debug_processing+0x62/0xe4 Nov 21 17:04:38 x4 kernel: [<ffffffff814c6461>] __slab_alloc.constprop.70+0x1a4/0x1e0 Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 Nov 21 17:04:38 x4 kernel: [<ffffffff814ca12a>] ? schedule+0x3a/0x50 Nov 21 17:04:38 x4 kernel: [<ffffffff81104d66>] kmem_cache_alloc+0x126/0x160 Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 Nov 21 17:04:38 x4 kernel: [<ffffffff81065f18>] ? enqueue_task_fair+0xf8/0x140 Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] copy_process+0xc4/0xf60 Nov 21 17:04:38 x4 kernel: [<ffffffff8106c000>] do_fork+0x100/0x2b0 Nov 21 17:04:38 x4 kernel: [<ffffffff810920fd>] ? sched_clock_local+0x1d/0x90 Nov 21 17:04:38 x4 kernel: [<ffffffff81044dec>] kernel_thread+0x6c/0x70 Nov 21 17:04:38 x4 kernel: [<ffffffff81084430>] ? proc_cap_handler+0x180/0x180 Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd30>] ? gs_change+0xb/0xb Nov 21 17:04:38 x4 kernel: [<ffffffff810845a1>] __call_usermodehelper+0x31/0xa0 Nov 21 17:04:38 x4 kernel: [<ffffffff810869ba>] process_one_work+0x11a/0x430 Nov 21 17:04:38 x4 kernel: [<ffffffff81084570>] ? call_usermodehelper_freeinfo+0x30/0x30 Nov 21 17:04:38 x4 kernel: [<ffffffff81087026>] worker_thread+0x126/0x2d0 Nov 21 17:04:38 x4 kernel: [<ffffffff81086f00>] ? rescuer_thread+0x1f0/0x1f0 Nov 21 17:04:38 x4 kernel: [<ffffffff8108bb87>] kthread+0x87/0x90 Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd34>] kernel_thread_helper+0x4/0x10 Nov 21 17:04:38 x4 kernel: [<ffffffff8108bb00>] ? kthread_flush_work_fn+0x10/0x10 Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd30>] ? gs_change+0xb/0xb Nov 21 17:04:38 x4 kernel: FIX task_struct: Restoring 0xffff880215c43800-0xffff880215c43803=0x6b Nov 21 17:04:38 x4 kernel: Nov 21 17:04:38 x4 kernel: FIX task_struct: Marking all objects used -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-11-24 8:50 ` Markus Trippelsdorf @ 2011-12-01 8:44 ` Markus Trippelsdorf 2011-12-01 8:53 ` Pekka Enberg 2011-12-02 19:43 ` Jerome Glisse 2011-12-02 23:04 ` Jerome Glisse 1 sibling, 2 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-01 8:44 UTC (permalink / raw) To: Christoph Lameter Cc: Eric Dumazet, Alex,Shi, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Pekka Enberg, Matt Mackall, netdev@vger.kernel.org, tj, dri-devel, Alex Deucher, Dave Airlie On 2011.11.24 at 09:50 +0100, Markus Trippelsdorf wrote: > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > exactly the same spot again. (CCing the drm list) > > > > Well this is looks like write after free. > > > > > ============================================================================= > > > BUG idr_layer_cache: Poison overwritten > > > ----------------------------------------------------------------------------- > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > And its an integer sized write of 0. If you look at the struct definition > > and lookup the offset you should be able to locate the field that > > was modified. It also happens with CONFIG_SLAB. (If someone wants to reproduce the issue, just run a kexec boot loop and the bug will occur after a few (~10) iterations.) Dec 1 05:04:52 x4 kernel: [drm] Initialized drm 1.1.0 20060810 Dec 1 05:04:52 x4 kernel: [drm] radeon defaulting to kernel modesetting. Dec 1 05:04:52 x4 kernel: [drm] radeon kernel modesetting enabled. Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: setting latency timer to 64 Dec 1 05:04:52 x4 kernel: [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). Dec 1 05:04:52 x4 kernel: [drm] register mmio base: 0xFBEE0000 Dec 1 05:04:52 x4 kernel: [drm] register mmio size: 65536 Dec 1 05:04:52 x4 kernel: ATOM BIOS: 113 Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF Dec 1 05:04:52 x4 kernel: [drm] Detected VRAM RAM=128M, BAR=128M Dec 1 05:04:52 x4 kernel: [drm] RAM width 32bits DDR Dec 1 05:04:52 x4 kernel: [TTM] Zone kernel: Available graphics memory: 4090750 kiB. Dec 1 05:04:52 x4 kernel: [TTM] Zone dma32: Available graphics memory: 2097152 kiB. Dec 1 05:04:52 x4 kernel: [TTM] Initializing pool allocator. Dec 1 05:04:52 x4 kernel: [drm] radeon: 128M of VRAM memory ready Dec 1 05:04:52 x4 kernel: [drm] radeon: 512M of GTT memory ready. Dec 1 05:04:52 x4 kernel: [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). Dec 1 05:04:52 x4 kernel: [drm] Driver supports precise vblank timestamp query. Dec 1 05:04:52 x4 kernel: [drm] radeon: irq initialized. Dec 1 05:04:52 x4 kernel: [drm] GART: num cpu pages 131072, num gpu pages 131072 Dec 1 05:04:52 x4 kernel: [drm] Loading RS780 Microcode Dec 1 05:04:52 x4 kernel: [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: WB enabled Dec 1 05:04:52 x4 kernel: Slab corruption: size-1024 start=ffff880216cbc730, len=1024 Dec 1 05:04:52 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Dec 1 05:04:52 x4 kernel: Last user: [< (null)>](0x0) Dec 1 05:04:52 x4 kernel: 0d0: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk Dec 1 05:04:52 x4 kernel: Prev obj: start=ffff880216cbc318, len=1024 Dec 1 05:04:52 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Dec 1 05:04:52 x4 kernel: Last user: [< (null)>](0x0) Dec 1 05:04:52 x4 kernel: 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Dec 1 05:04:52 x4 kernel: 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Dec 1 05:04:52 x4 kernel: Next obj: start=ffff880216cbcb48, len=1024 Dec 1 05:04:52 x4 kernel: Redzone: 0xd84156c5635688c0/0xd84156c5635688c0. Dec 1 05:04:52 x4 kernel: Last user: [<ffffffff81299874>](radeon_bo_create+0xb4/0x240) Dec 1 05:04:52 x4 kernel: 000: 48 cb cb 16 02 88 ff ff 48 cb cb 16 02 88 ff ff H.......H....... Dec 1 05:04:52 x4 kernel: 010: 02 00 27 00 00 00 00 00 00 00 00 00 00 00 00 00 ..'............. Dec 1 05:04:52 x4 kernel: [drm] ring test succeeded in 0 usecs Dec 1 05:04:52 x4 kernel: [drm] radeon: ib pool ready. Dec 1 05:04:52 x4 kernel: [drm] ib test succeeded in 0 usecs Dec 1 05:04:52 x4 kernel: [drm] Radeon Display Connectors Dec 1 05:04:52 x4 kernel: [drm] Connector 0: Dec 1 05:04:52 x4 kernel: [drm] VGA Dec 1 05:04:52 x4 kernel: [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c Dec 1 05:04:52 x4 kernel: [drm] Encoders: Dec 1 05:04:52 x4 kernel: [drm] CRT1: INTERNAL_KLDSCP_DAC1 Dec 1 05:04:52 x4 kernel: [drm] Connector 1: Dec 1 05:04:52 x4 kernel: [drm] DVI-D Dec 1 05:04:52 x4 kernel: [drm] HPD3 Dec 1 05:04:52 x4 kernel: [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c Dec 1 05:04:52 x4 kernel: [drm] Encoders: Dec 1 05:04:52 x4 kernel: [drm] DFP3: INTERNAL_KLDSCP_LVTMA Dec 1 05:04:52 x4 kernel: [drm] radeon: power management initialized Dec 1 05:04:52 x4 kernel: [drm] fb mappable at 0xF0142000 Dec 1 05:04:52 x4 kernel: [drm] vram apper at 0xF0000000 Dec 1 05:04:52 x4 kernel: [drm] size 7299072 Dec 1 05:04:52 x4 kernel: [drm] fb depth is 24 Dec 1 05:04:52 x4 kernel: [drm] pitch is 6912 Dec 1 05:04:52 x4 kernel: fbcon: radeondrmfb (fb0) is primary device Dec 1 05:04:52 x4 kernel: Console: switching to colour frame buffer device 131x105 Dec 1 05:04:52 x4 kernel: fb0: radeondrmfb frame buffer device Dec 1 05:04:52 x4 kernel: drm: registered panic notifier Dec 1 05:04:52 x4 kernel: [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 Dec 1 05:09:35 x4 kernel: radeon 0000:01:05.0: WB enabled Dec 1 05:09:35 x4 kernel: [drm] ring test succeeded in 1 usecs Dec 1 05:09:35 x4 kernel: [drm] radeon: ib pool ready. Dec 1 05:09:35 x4 kernel: [drm] ib test succeeded in 0 usecs Dec 1 05:09:35 x4 kernel: Slab corruption: size-512 start=ffff880216f7e760, len=512 Dec 1 05:09:35 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Dec 1 05:09:35 x4 kernel: Last user: [< (null)>](0x0) Dec 1 05:09:35 x4 kernel: 0a0: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk Dec 1 05:09:35 x4 kernel: Prev obj: start=ffff880216f7e548, len=512 Dec 1 05:09:35 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Dec 1 05:09:35 x4 kernel: Last user: [< (null)>](0x0) Dec 1 05:09:35 x4 kernel: 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Dec 1 05:09:35 x4 kernel: 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk Dec 1 05:09:35 x4 kernel: Next obj: start=ffff880216f7e978, len=512 Dec 1 05:09:35 x4 kernel: Redzone: 0xd84156c5635688c0/0xd84156c5635688c0. Dec 1 05:09:35 x4 kernel: Last user: [<ffffffff812e519d>](radeon_add_atom_encoder+0x7d/0x280) Dec 1 05:09:35 x4 kernel: 000: f8 d3 f6 16 02 88 ff ff 18 d8 f6 16 02 88 ff ff ................ Dec 1 05:09:35 x4 kernel: 010: 18 d8 f6 16 02 88 ff ff 0c 00 00 00 e0 e0 e0 e0 ................ Dec 1 05:09:35 x4 kernel: [drm] Radeon Display Connectors Dec 1 05:09:35 x4 kernel: [drm] Connector 0: Dec 1 05:09:35 x4 kernel: [drm] VGA Dec 1 05:09:35 x4 kernel: [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c Dec 1 05:09:35 x4 kernel: [drm] Encoders: Dec 1 05:09:35 x4 kernel: [drm] CRT1: INTERNAL_KLDSCP_DAC1 Dec 1 05:09:35 x4 kernel: [drm] Connector 1: Dec 1 05:09:35 x4 kernel: [drm] DVI-D Dec 1 05:09:35 x4 kernel: [drm] HPD3 Dec 1 05:09:35 x4 kernel: [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c Dec 1 05:09:35 x4 kernel: [drm] Encoders: Dec 1 05:09:35 x4 kernel: [drm] DFP3: INTERNAL_KLDSCP_LVTMA Dec 1 05:09:35 x4 kernel: [drm] radeon: power management initialized Dec 1 05:09:35 x4 kernel: [drm] fb mappable at 0xF0142000 Dec 1 05:09:35 x4 kernel: [drm] vram apper at 0xF0000000 Dec 1 05:09:35 x4 kernel: [drm] size 7299072 Dec 1 05:09:35 x4 kernel: [drm] fb depth is 24 Dec 1 05:09:35 x4 kernel: [drm] pitch is 6912 Dec 1 05:09:35 x4 kernel: fbcon: radeondrmfb (fb0) is primary device Dec 1 05:09:35 x4 kernel: Console: switching to colour frame buffer device 131x105 Dec 1 05:09:35 x4 kernel: fb0: radeondrmfb frame buffer device Dec 1 05:09:35 x4 kernel: drm: registered panic notifier Dec 1 05:09:35 x4 kernel: [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-01 8:44 ` Markus Trippelsdorf @ 2011-12-01 8:53 ` Pekka Enberg 2011-12-02 19:43 ` Jerome Glisse 1 sibling, 0 replies; 26+ messages in thread From: Pekka Enberg @ 2011-12-01 8:53 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Christoph Lameter, Eric Dumazet, Alex,Shi, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Matt Mackall, netdev@vger.kernel.org, tj, dri-devel, Alex Deucher, Dave Airlie On Thu, 1 Dec 2011, Markus Trippelsdorf wrote: > On 2011.11.24 at 09:50 +0100, Markus Trippelsdorf wrote: >> On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: >>> On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: >>> >>>>> FIX idr_layer_cache: Marking all objects used >>>> >>>> Yesterday I couldn't reproduce the issue at all. But today I've hit >>>> exactly the same spot again. (CCing the drm list) >>> >>> Well this is looks like write after free. >>> >>>> ============================================================================= >>>> BUG idr_layer_cache: Poison overwritten >>>> ----------------------------------------------------------------------------- >>>> Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk >>>> Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk >>>> Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk >>>> Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk >>>> Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk >>>> Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk >>> >>> And its an integer sized write of 0. If you look at the struct definition >>> and lookup the offset you should be able to locate the field that >>> was modified. > > It also happens with CONFIG_SLAB. > (If someone wants to reproduce the issue, just run a kexec boot loop and > the bug will occur after a few (~10) iterations.) > > Dec 1 05:04:52 x4 kernel: [drm] Initialized drm 1.1.0 20060810 > Dec 1 05:04:52 x4 kernel: [drm] radeon defaulting to kernel modesetting. > Dec 1 05:04:52 x4 kernel: [drm] radeon kernel modesetting enabled. > Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 > Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: setting latency timer to 64 > Dec 1 05:04:52 x4 kernel: [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). > Dec 1 05:04:52 x4 kernel: [drm] register mmio base: 0xFBEE0000 > Dec 1 05:04:52 x4 kernel: [drm] register mmio size: 65536 > Dec 1 05:04:52 x4 kernel: ATOM BIOS: 113 > Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) > Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF > Dec 1 05:04:52 x4 kernel: [drm] Detected VRAM RAM=128M, BAR=128M > Dec 1 05:04:52 x4 kernel: [drm] RAM width 32bits DDR > Dec 1 05:04:52 x4 kernel: [TTM] Zone kernel: Available graphics memory: 4090750 kiB. > Dec 1 05:04:52 x4 kernel: [TTM] Zone dma32: Available graphics memory: 2097152 kiB. > Dec 1 05:04:52 x4 kernel: [TTM] Initializing pool allocator. > Dec 1 05:04:52 x4 kernel: [drm] radeon: 128M of VRAM memory ready > Dec 1 05:04:52 x4 kernel: [drm] radeon: 512M of GTT memory ready. > Dec 1 05:04:52 x4 kernel: [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). > Dec 1 05:04:52 x4 kernel: [drm] Driver supports precise vblank timestamp query. > Dec 1 05:04:52 x4 kernel: [drm] radeon: irq initialized. > Dec 1 05:04:52 x4 kernel: [drm] GART: num cpu pages 131072, num gpu pages 131072 > Dec 1 05:04:52 x4 kernel: [drm] Loading RS780 Microcode > Dec 1 05:04:52 x4 kernel: [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). > Dec 1 05:04:52 x4 kernel: radeon 0000:01:05.0: WB enabled > Dec 1 05:04:52 x4 kernel: Slab corruption: size-1024 start=ffff880216cbc730, len=1024 > Dec 1 05:04:52 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. > Dec 1 05:04:52 x4 kernel: Last user: [< (null)>](0x0) > Dec 1 05:04:52 x4 kernel: 0d0: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > Dec 1 05:04:52 x4 kernel: Prev obj: start=ffff880216cbc318, len=1024 > Dec 1 05:04:52 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. > Dec 1 05:04:52 x4 kernel: Last user: [< (null)>](0x0) > Dec 1 05:04:52 x4 kernel: 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Dec 1 05:04:52 x4 kernel: 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Dec 1 05:04:52 x4 kernel: Next obj: start=ffff880216cbcb48, len=1024 > Dec 1 05:04:52 x4 kernel: Redzone: 0xd84156c5635688c0/0xd84156c5635688c0. > Dec 1 05:04:52 x4 kernel: Last user: [<ffffffff81299874>](radeon_bo_create+0xb4/0x240) > Dec 1 05:04:52 x4 kernel: 000: 48 cb cb 16 02 88 ff ff 48 cb cb 16 02 88 ff ff H.......H....... > Dec 1 05:04:52 x4 kernel: 010: 02 00 27 00 00 00 00 00 00 00 00 00 00 00 00 00 ..'............. > Dec 1 05:04:52 x4 kernel: [drm] ring test succeeded in 0 usecs > Dec 1 05:04:52 x4 kernel: [drm] radeon: ib pool ready. > Dec 1 05:04:52 x4 kernel: [drm] ib test succeeded in 0 usecs > Dec 1 05:04:52 x4 kernel: [drm] Radeon Display Connectors > Dec 1 05:04:52 x4 kernel: [drm] Connector 0: > Dec 1 05:04:52 x4 kernel: [drm] VGA > Dec 1 05:04:52 x4 kernel: [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c > Dec 1 05:04:52 x4 kernel: [drm] Encoders: > Dec 1 05:04:52 x4 kernel: [drm] CRT1: INTERNAL_KLDSCP_DAC1 > Dec 1 05:04:52 x4 kernel: [drm] Connector 1: > Dec 1 05:04:52 x4 kernel: [drm] DVI-D > Dec 1 05:04:52 x4 kernel: [drm] HPD3 > Dec 1 05:04:52 x4 kernel: [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c > Dec 1 05:04:52 x4 kernel: [drm] Encoders: > Dec 1 05:04:52 x4 kernel: [drm] DFP3: INTERNAL_KLDSCP_LVTMA > Dec 1 05:04:52 x4 kernel: [drm] radeon: power management initialized > Dec 1 05:04:52 x4 kernel: [drm] fb mappable at 0xF0142000 > Dec 1 05:04:52 x4 kernel: [drm] vram apper at 0xF0000000 > Dec 1 05:04:52 x4 kernel: [drm] size 7299072 > Dec 1 05:04:52 x4 kernel: [drm] fb depth is 24 > Dec 1 05:04:52 x4 kernel: [drm] pitch is 6912 > Dec 1 05:04:52 x4 kernel: fbcon: radeondrmfb (fb0) is primary device > Dec 1 05:04:52 x4 kernel: Console: switching to colour frame buffer device 131x105 > Dec 1 05:04:52 x4 kernel: fb0: radeondrmfb frame buffer device > Dec 1 05:04:52 x4 kernel: drm: registered panic notifier > Dec 1 05:04:52 x4 kernel: [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 > > > Dec 1 05:09:35 x4 kernel: radeon 0000:01:05.0: WB enabled > Dec 1 05:09:35 x4 kernel: [drm] ring test succeeded in 1 usecs > Dec 1 05:09:35 x4 kernel: [drm] radeon: ib pool ready. > Dec 1 05:09:35 x4 kernel: [drm] ib test succeeded in 0 usecs > Dec 1 05:09:35 x4 kernel: Slab corruption: size-512 start=ffff880216f7e760, len=512 > Dec 1 05:09:35 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. > Dec 1 05:09:35 x4 kernel: Last user: [< (null)>](0x0) > Dec 1 05:09:35 x4 kernel: 0a0: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > Dec 1 05:09:35 x4 kernel: Prev obj: start=ffff880216f7e548, len=512 > Dec 1 05:09:35 x4 kernel: Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. > Dec 1 05:09:35 x4 kernel: Last user: [< (null)>](0x0) > Dec 1 05:09:35 x4 kernel: 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Dec 1 05:09:35 x4 kernel: 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Dec 1 05:09:35 x4 kernel: Next obj: start=ffff880216f7e978, len=512 > Dec 1 05:09:35 x4 kernel: Redzone: 0xd84156c5635688c0/0xd84156c5635688c0. > Dec 1 05:09:35 x4 kernel: Last user: [<ffffffff812e519d>](radeon_add_atom_encoder+0x7d/0x280) > Dec 1 05:09:35 x4 kernel: 000: f8 d3 f6 16 02 88 ff ff 18 d8 f6 16 02 88 ff ff ................ > Dec 1 05:09:35 x4 kernel: 010: 18 d8 f6 16 02 88 ff ff 0c 00 00 00 e0 e0 e0 e0 ................ > Dec 1 05:09:35 x4 kernel: [drm] Radeon Display Connectors > Dec 1 05:09:35 x4 kernel: [drm] Connector 0: > Dec 1 05:09:35 x4 kernel: [drm] VGA > Dec 1 05:09:35 x4 kernel: [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c > Dec 1 05:09:35 x4 kernel: [drm] Encoders: > Dec 1 05:09:35 x4 kernel: [drm] CRT1: INTERNAL_KLDSCP_DAC1 > Dec 1 05:09:35 x4 kernel: [drm] Connector 1: > Dec 1 05:09:35 x4 kernel: [drm] DVI-D > Dec 1 05:09:35 x4 kernel: [drm] HPD3 > Dec 1 05:09:35 x4 kernel: [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c > Dec 1 05:09:35 x4 kernel: [drm] Encoders: > Dec 1 05:09:35 x4 kernel: [drm] DFP3: INTERNAL_KLDSCP_LVTMA > Dec 1 05:09:35 x4 kernel: [drm] radeon: power management initialized > Dec 1 05:09:35 x4 kernel: [drm] fb mappable at 0xF0142000 > Dec 1 05:09:35 x4 kernel: [drm] vram apper at 0xF0000000 > Dec 1 05:09:35 x4 kernel: [drm] size 7299072 > Dec 1 05:09:35 x4 kernel: [drm] fb depth is 24 > Dec 1 05:09:35 x4 kernel: [drm] pitch is 6912 > Dec 1 05:09:35 x4 kernel: fbcon: radeondrmfb (fb0) is primary device > Dec 1 05:09:35 x4 kernel: Console: switching to colour frame buffer device 131x105 > Dec 1 05:09:35 x4 kernel: fb0: radeondrmfb frame buffer device > Dec 1 05:09:35 x4 kernel: drm: registered panic notifier > Dec 1 05:09:35 x4 kernel: [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 The SLAB debugging output points to DRM and more specifically to the radeon driver. Dave, Alex, could you please take a look at this or fix up the CC to include the right people? Pekka -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-01 8:44 ` Markus Trippelsdorf 2011-12-01 8:53 ` Pekka Enberg @ 2011-12-02 19:43 ` Jerome Glisse 2011-12-02 20:06 ` Markus Trippelsdorf 1 sibling, 1 reply; 26+ messages in thread From: Jerome Glisse @ 2011-12-02 19:43 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Christoph Lameter, Alex, Shi, Dave Airlie, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Thu, Dec 01, 2011 at 09:44:37AM +0100, Markus Trippelsdorf wrote: > On 2011.11.24 at 09:50 +0100, Markus Trippelsdorf wrote: > > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > exactly the same spot again. (CCing the drm list) > > > > > > Well this is looks like write after free. > > > > > > > ============================================================================= > > > > BUG idr_layer_cache: Poison overwritten > > > > ----------------------------------------------------------------------------- > > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > And its an integer sized write of 0. If you look at the struct definition > > > and lookup the offset you should be able to locate the field that > > > was modified. > > It also happens with CONFIG_SLAB. > (If someone wants to reproduce the issue, just run a kexec boot loop and > the bug will occur after a few (~10) iterations.) > Can you provide the kexec command line you are using and full kernel log (mostly interested in kernel option). Cheers, Jerome -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-02 19:43 ` Jerome Glisse @ 2011-12-02 20:06 ` Markus Trippelsdorf 2011-12-02 20:48 ` Markus Trippelsdorf 0 siblings, 1 reply; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-02 20:06 UTC (permalink / raw) To: Jerome Glisse Cc: Christoph Lameter, Alex, Shi, Dave Airlie, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.02 at 14:43 -0500, Jerome Glisse wrote: > On Thu, Dec 01, 2011 at 09:44:37AM +0100, Markus Trippelsdorf wrote: > > On 2011.11.24 at 09:50 +0100, Markus Trippelsdorf wrote: > > > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > > exactly the same spot again. (CCing the drm list) > > > > > > > > Well this is looks like write after free. > > > > > > > > > ============================================================================= > > > > > BUG idr_layer_cache: Poison overwritten > > > > > ----------------------------------------------------------------------------- > > > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > > > And its an integer sized write of 0. If you look at the struct definition > > > > and lookup the offset you should be able to locate the field that > > > > was modified. > > > > It also happens with CONFIG_SLAB. > > (If someone wants to reproduce the issue, just run a kexec boot loop and > > the bug will occur after a few (~10) iterations.) > > > > Can you provide the kexec command line you are using and full kernel > log (mostly interested in kernel option). /usr/sbin/kexec -l "/usr/src/linux/arch/x86/boot/bzImage" --append="root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet" /usr/sbin/kexec -e (The loop happens after autologin in .zprofile: sleep 4 && sudo /etc/minit/ctrlaltdel/run (the last script kills, unmounts and then runs the two kexec commands above)) Linux version 3.2.0-rc4-00089-g621fc1e-dirty (markus@x4.trippels.de) (gcc version 4.6.3 20111202 (prerelease) (GCC) ) #134 SMP PREEMPT Fri Dec 2 11:06:20 CET 2011 Command line: root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet KERNEL supported cpus: AMD AuthenticAMD BIOS-provided physical RAM map: BIOS-e820: 0000000000000100 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000e6000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 00000000dfe90000 (usable) BIOS-e820: 00000000dfe90000 - 00000000dfea8000 (ACPI data) BIOS-e820: 00000000dfea8000 - 00000000dfed0000 (ACPI NVS) BIOS-e820: 00000000dfed0000 - 00000000dff00000 (reserved) BIOS-e820: 00000000fff00000 - 0000000100000000 (reserved) BIOS-e820: 0000000100000000 - 0000000220000000 (usable) NX (Execute Disable) protection: active DMI present. DMI: System manufacturer System Product Name/M4A78T-E, BIOS 3406 08/20/2010 e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) e820 remove range: 00000000000a0000 - 0000000000100000 (usable) last_pfn = 0x220000 max_arch_pfn = 0x400000000 MTRR default type: uncachable MTRR fixed ranges enabled: 00000-9FFFF write-back A0000-EFFFF uncachable F0000-FFFFF write-protect MTRR variable ranges enabled: 0 base 000000000000 mask FFFF80000000 write-back 1 base 000080000000 mask FFFFC0000000 write-back 2 base 0000C0000000 mask FFFFE0000000 write-back 3 base 0000F0000000 mask FFFFF8000000 write-combining 4 disabled 5 disabled 6 disabled 7 disabled TOM2: 0000000220000000 aka 8704M x86 PAT enabled: cpu 0, old 0x7010600070106, new 0x7010600070106 last_pfn = 0xdfe90 max_arch_pfn = 0x400000000 initial memory mapped : 0 - 20000000 Base memory trampoline at [ffff88000009d000] 9d000 size 8192 Using GB pages for direct mapping init_memory_mapping: 0000000000000000-00000000dfe90000 0000000000 - 00c0000000 page 1G 00c0000000 - 00dfe00000 page 2M 00dfe00000 - 00dfe90000 page 4k kernel direct mapping tables up to dfe90000 @ 1fffd000-20000000 init_memory_mapping: 0000000100000000-0000000220000000 0100000000 - 0200000000 page 1G 0200000000 - 0220000000 page 2M kernel direct mapping tables up to 220000000 @ dfe8e000-dfe90000 ACPI: RSDP 00000000000fb880 00024 (v02 ACPIAM) ACPI: XSDT 00000000dfe90100 0005C (v01 082010 XSDT1403 20100820 MSFT 00000097) ACPI: FACP 00000000dfe90290 000F4 (v03 082010 FACP1403 20100820 MSFT 00000097) ACPI Warning: Optional field Pm2ControlBlock has zero address or length: 0x0000000000000000/0x1 (20110623/tbfadt-560) ACPI: DSDT 00000000dfe90450 0E6FE (v01 A1152 A1152000 00000000 INTL 20060113) ACPI: FACS 00000000dfea8000 00040 ACPI: APIC 00000000dfe90390 0007C (v01 082010 APIC1403 20100820 MSFT 00000097) ACPI: MCFG 00000000dfe90410 0003C (v01 082010 OEMMCFG 20100820 MSFT 00000097) ACPI: OEMB 00000000dfea8040 00072 (v01 082010 OEMB1403 20100820 MSFT 00000097) ACPI: SRAT 00000000dfe9f450 000E8 (v01 AMD FAM_F_10 00000002 AMD 00000001) ACPI: HPET 00000000dfe9f540 00038 (v01 082010 OEMHPET 20100820 MSFT 00000097) ACPI: SSDT 00000000dfe9f580 0088C (v01 A M I POWERNOW 00000001 AMD 00000001) ACPI: Local APIC address 0xfee00000 [ffffea0000000000-ffffea00087fffff] PMD -> [ffff880217600000-ffff88021f5fffff] on node 0 Zone PFN ranges: DMA32 0x00000010 -> 0x00100000 Normal 0x00100000 -> 0x00220000 Movable zone start PFN for each node early_node_map[3] active PFN ranges 0: 0x00000010 -> 0x0000009f 0: 0x00000100 -> 0x000dfe90 0: 0x00100000 -> 0x00220000 On node 0 totalpages: 2096671 DMA32 zone: 16384 pages used for memmap DMA32 zone: 2 pages reserved DMA32 zone: 900637 pages, LIFO batch:31 Normal zone: 18432 pages used for memmap Normal zone: 1161216 pages, LIFO batch:31 ACPI: PM-Timer IO Port: 0x808 ACPI: Local APIC address 0xfee00000 ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled) ACPI: LAPIC (acpi_id[0x05] lapic_id[0x84] disabled) ACPI: LAPIC (acpi_id[0x06] lapic_id[0x85] disabled) ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0]) IOAPIC[0]: apic_id 4, version 33, address 0xfec00000, GSI 0-23 ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level) ACPI: IRQ0 used by override. ACPI: IRQ2 used by override. ACPI: IRQ9 used by override. Using ACPI (MADT) for SMP configuration information ACPI: HPET id: 0x8300 base: 0xfed00000 SMP: Allowing 4 CPUs, 0 hotplug CPUs nr_irqs_gsi: 40 Allocating PCI resources starting at dff00000 (gap: dff00000:20000000) setup_percpu: NR_CPUS:4 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1 PERCPU: Embedded 23 pages/cpu @ffff88021fc00000 s71680 r0 d22528 u524288 pcpu-alloc: s71680 r0 d22528 u524288 alloc=1*2097152 pcpu-alloc: [0] 0 1 2 3 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 2061853 Kernel command line: root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet PID hash table entries: 4096 (order: 3, 32768 bytes) Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes) Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes) Memory: 8167156k/8912896k available (4549k kernel code, 526212k absent, 219528k reserved, 4000k data, 420k init) SLUB: Genslabs=15, HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 Preemptible hierarchical RCU implementation. Verbose stalled-CPUs detection is disabled. NR_IRQS:4352 nr_irqs:712 16 Extended CMOS year: 2000 Console: colour VGA+ 80x25 console [tty0] enabled hpet clockevent registered Fast TSC calibration using PIT Detected 3210.181 MHz processor. Calibrating delay loop (skipped), value calculated using timer frequency.. 6420.36 BogoMIPS (lpj=3210181) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 256 tseg: 0000000000 CPU: Physical Processor ID: 0 CPU: Processor Core ID: 0 mce: CPU supports 6 MCE banks using AMD E400 aware idle routine Freeing SMP alternatives: 12k freed ACPI: Core revision 20110623 ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 CPU0: AMD Phenom(tm) II X4 955 Processor stepping 02 Performance Events: AMD PMU driver. ... version: 0 ... bit width: 48 ... generic registers: 4 ... value mask: 0000ffffffffffff ... max period: 00007fffffffffff ... fixed-purpose events: 0 ... event mask: 000000000000000f System has AMD C1E enabled Switch to broadcast mode on CPU0 MCE: In-kernel MCE decoding enabled. Booting Node 0, Processors #1 smpboot cpu 1: start_ip = 9d000 Switch to broadcast mode on CPU1 #2 smpboot cpu 2: start_ip = 9d000 Switch to broadcast mode on CPU2 #3 Ok. smpboot cpu 3: start_ip = 9d000 Brought up 4 CPUs Total of 4 processors activated (25685.44 BogoMIPS). Switch to broadcast mode on CPU3 devtmpfs: initialized NET: Registered protocol family 16 node 0 link 0: io port [1000, ffffff] TOM: 00000000e0000000 aka 3584M Fam 10h mmconf [e0000000, efffffff] node 0 link 0: mmio [a0000, bffff] node 0 link 0: mmio [e0000000, efffffff] ==> none node 0 link 0: mmio [f0000000, fbcfffff] node 0 link 0: mmio [fbd00000, fbefffff] node 0 link 0: mmio [fbf00000, ffefffff] TOM2: 0000000220000000 aka 8704M bus: [00, 07] on node 0 link 0 bus: 00 index 0 [io 0x0000-0xffff] bus: 00 index 1 [mem 0x000a0000-0x000bffff] bus: 00 index 2 [mem 0xf0000000-0xffffffff] bus: 00 index 3 [mem 0x220000000-0xfcffffffff] Extended Config Space enabled on 1 nodes ACPI: bus type pci registered PCI: Using configuration type 1 for base access PCI: Using configuration type 1 for extended access bio: create slab <bio-0> at 0 ACPI: Added _OSI(Module Device) ACPI: Added _OSI(Processor Device) ACPI: Added _OSI(3.0 _SCP Extensions) ACPI: Added _OSI(Processor Aggregator Device) ACPI: EC: Look up EC in DSDT ACPI: Executed 3 blocks of module-level executable AML code ACPI: Interpreter enabled ACPI: (supports S0 S5) ACPI: Using IOAPIC for interrupt routing PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] pci_root PNP0A03:00: host bridge window [io 0x0d00-0xffff] pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000dffff] pci_root PNP0A03:00: host bridge window [mem 0xdff00000-0xdfffffff] pci_root PNP0A03:00: host bridge window [mem 0xf0000000-0xfebfffff] pci 0000:00:00.0: [1022:9600] type 0 class 0x000600 pci 0000:00:01.0: [1022:9602] type 1 class 0x000604 pci 0000:00:06.0: [1022:9606] type 1 class 0x000604 pci 0000:00:06.0: PME# supported from D0 D3hot D3cold pci 0000:00:06.0: PME# disabled pci 0000:00:11.0: [1002:4391] type 0 class 0x000106 pci 0000:00:11.0: reg 10: [io 0xc000-0xc007] pci 0000:00:11.0: reg 14: [io 0xb000-0xb003] pci 0000:00:11.0: reg 18: [io 0xa000-0xa007] pci 0000:00:11.0: reg 1c: [io 0x9000-0x9003] pci 0000:00:11.0: reg 20: [io 0x8000-0x800f] pci 0000:00:11.0: reg 24: [mem 0xfbcffc00-0xfbcfffff] pci 0000:00:12.0: [1002:4397] type 0 class 0x000c03 pci 0000:00:12.0: reg 10: [mem 0xfbcfd000-0xfbcfdfff] pci 0000:00:12.1: [1002:4398] type 0 class 0x000c03 pci 0000:00:12.1: reg 10: [mem 0xfbcfe000-0xfbcfefff] pci 0000:00:12.2: [1002:4396] type 0 class 0x000c03 pci 0000:00:12.2: reg 10: [mem 0xfbcff800-0xfbcff8ff] pci 0000:00:12.2: supports D1 D2 pci 0000:00:12.2: PME# supported from D0 D1 D2 D3hot pci 0000:00:12.2: PME# disabled pci 0000:00:13.0: [1002:4397] type 0 class 0x000c03 pci 0000:00:13.0: reg 10: [mem 0xfbcfb000-0xfbcfbfff] pci 0000:00:13.1: [1002:4398] type 0 class 0x000c03 pci 0000:00:13.1: reg 10: [mem 0xfbcfc000-0xfbcfcfff] pci 0000:00:13.2: [1002:4396] type 0 class 0x000c03 pci 0000:00:13.2: reg 10: [mem 0xfbcff400-0xfbcff4ff] pci 0000:00:13.2: supports D1 D2 pci 0000:00:13.2: PME# supported from D0 D1 D2 D3hot pci 0000:00:13.2: PME# disabled pci 0000:00:14.0: [1002:4385] type 0 class 0x000c05 pci 0000:00:14.1: [1002:439c] type 0 class 0x000101 pci 0000:00:14.1: reg 10: [io 0x0000-0x0007] pci 0000:00:14.1: reg 14: [io 0x0000-0x0003] pci 0000:00:14.1: reg 18: [io 0x0000-0x0007] pci 0000:00:14.1: reg 1c: [io 0x0000-0x0003] pci 0000:00:14.1: reg 20: [io 0xff00-0xff0f] pci 0000:00:14.3: [1002:439d] type 0 class 0x000601 pci 0000:00:14.4: [1002:4384] type 1 class 0x000604 pci 0000:00:14.5: [1002:4399] type 0 class 0x000c03 pci 0000:00:14.5: reg 10: [mem 0xfbcfa000-0xfbcfafff] pci 0000:00:18.0: [1022:1200] type 0 class 0x000600 pci 0000:00:18.1: [1022:1201] type 0 class 0x000600 pci 0000:00:18.2: [1022:1202] type 0 class 0x000600 pci 0000:00:18.3: [1022:1203] type 0 class 0x000600 pci 0000:00:18.4: [1022:1204] type 0 class 0x000600 pci 0000:01:05.0: [1002:9614] type 0 class 0x000300 pci 0000:01:05.0: reg 10: [mem 0xf0000000-0xf7ffffff pref] pci 0000:01:05.0: reg 14: [io 0xd000-0xd0ff] pci 0000:01:05.0: reg 18: [mem 0xfbee0000-0xfbeeffff] pci 0000:01:05.0: reg 24: [mem 0xfbd00000-0xfbdfffff] pci 0000:01:05.0: supports D1 D2 pci 0000:01:05.1: [1002:960f] type 0 class 0x000403 pci 0000:01:05.1: reg 10: [mem 0xfbefc000-0xfbefffff] pci 0000:01:05.1: supports D1 D2 pci 0000:00:01.0: PCI bridge to [bus 01-01] pci 0000:00:01.0: bridge window [io 0xd000-0xdfff] pci 0000:00:01.0: bridge window [mem 0xfbd00000-0xfbefffff] pci 0000:00:01.0: bridge window [mem 0xf0000000-0xf7ffffff 64bit pref] pci 0000:02:00.0: [1969:1026] type 0 class 0x000200 pci 0000:02:00.0: reg 10: [mem 0xfbfc0000-0xfbffffff 64bit] pci 0000:02:00.0: reg 18: [io 0xec00-0xec7f] pci 0000:02:00.0: PME# supported from D3hot D3cold pci 0000:02:00.0: PME# disabled pci 0000:00:06.0: PCI bridge to [bus 02-02] pci 0000:00:06.0: bridge window [io 0xe000-0xefff] pci 0000:00:06.0: bridge window [mem 0xfbf00000-0xfbffffff] pci 0000:00:14.4: PCI bridge to [bus 03-03] (subtractive decode) pci 0000:00:14.4: bridge window [io 0x0000-0x0cf7] (subtractive decode) pci 0000:00:14.4: bridge window [io 0x0d00-0xffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0x000d0000-0x000dffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0xdff00000-0xdfffffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0xf0000000-0xfebfffff] (subtractive decode) pci_bus 0000:00: on NUMA node 0 ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCE6._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0PC._PRT] pci0000:00: Unable to request _OSC control (_OSC support mask: 0x19) ACPI: PCI Interrupt Link [LNKA] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKB] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKC] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKD] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKE] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKF] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKG] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKH] (IRQs 4 7 10 11 12 14 15) *0, disabled. SCSI subsystem initialized libata version 3.00 loaded. usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb Advanced Linux Sound Architecture Driver Version 1.0.24. PCI: Using ACPI for IRQ routing PCI: pci_cache_line_size set to 64 bytes reserve RAM buffer: 000000000009fc00 - 000000000009ffff reserve RAM buffer: 00000000dfe90000 - 00000000dfffffff hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0 hpet0: 4 comparators, 32-bit 14.318180 MHz counter Switching to clocksource hpet pnp: PnP ACPI init ACPI: bus type pnp registered pnp 00:00: [bus 00-ff] pnp 00:00: [io 0x0cf8-0x0cff] pnp 00:00: [io 0x0000-0x0cf7 window] pnp 00:00: [io 0x0d00-0xffff window] pnp 00:00: [mem 0x000a0000-0x000bffff window] pnp 00:00: [mem 0x000d0000-0x000dffff window] pnp 00:00: [mem 0xdff00000-0xdfffffff window] pnp 00:00: [mem 0xf0000000-0xfebfffff window] pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 (active) pnp 00:01: [mem 0x00000000-0xffffffffffffffff disabled] pnp 00:01: [mem 0x00000000-0xffffffffffffffff disabled] system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:02: [dma 4] pnp 00:02: [io 0x0000-0x000f] pnp 00:02: [io 0x0081-0x0083] pnp 00:02: [io 0x0087] pnp 00:02: [io 0x0089-0x008b] pnp 00:02: [io 0x008f] pnp 00:02: [io 0x00c0-0x00df] pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) pnp 00:03: [io 0x0070-0x0071] pnp 00:03: [irq 8] pnp 00:03: Plug and Play ACPI device, IDs PNP0b00 (active) pnp 00:04: [io 0x0061] pnp 00:04: Plug and Play ACPI device, IDs PNP0800 (active) pnp 00:05: [io 0x00f0-0x00ff] pnp 00:05: [irq 13] pnp 00:05: Plug and Play ACPI device, IDs PNP0c04 (active) pnp 00:06: [mem 0xfed00000-0xfed003ff] pnp 00:06: Plug and Play ACPI device, IDs PNP0103 (active) pnp 00:07: [io 0x0060] pnp 00:07: [io 0x0064] pnp 00:07: [mem 0xfec00000-0xfec00fff] pnp 00:07: [mem 0xfee00000-0xfee00fff] system 00:07: [mem 0xfec00000-0xfec00fff] could not be reserved system 00:07: [mem 0xfee00000-0xfee00fff] has been reserved system 00:07: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:08: [io 0x0010-0x001f] pnp 00:08: [io 0x0022-0x003f] pnp 00:08: [io 0x0062-0x0063] pnp 00:08: [io 0x0065-0x006f] pnp 00:08: [io 0x0072-0x007f] pnp 00:08: [io 0x0080] pnp 00:08: [io 0x0084-0x0086] pnp 00:08: [io 0x0088] pnp 00:08: [io 0x008c-0x008e] pnp 00:08: [io 0x0090-0x009f] pnp 00:08: [io 0x00a2-0x00bf] pnp 00:08: [io 0x00b1] pnp 00:08: [io 0x00e0-0x00ef] pnp 00:08: [io 0x04d0-0x04d1] pnp 00:08: [io 0x040b] pnp 00:08: [io 0x04d6] pnp 00:08: [io 0x0c00-0x0c01] pnp 00:08: [io 0x0c14] pnp 00:08: [io 0x0c50-0x0c51] pnp 00:08: [io 0x0c52] pnp 00:08: [io 0x0c6c] pnp 00:08: [io 0x0c6f] pnp 00:08: [io 0x0cd0-0x0cd1] pnp 00:08: [io 0x0cd2-0x0cd3] pnp 00:08: [io 0x0cd4-0x0cd5] pnp 00:08: [io 0x0cd6-0x0cd7] pnp 00:08: [io 0x0cd8-0x0cdf] pnp 00:08: [io 0x0b00-0x0b3f] pnp 00:08: [io 0x0800-0x089f] pnp 00:08: [io 0x0000-0xffffffffffffffff disabled] pnp 00:08: [io 0x0b00-0x0b0f] pnp 00:08: [io 0x0b20-0x0b3f] pnp 00:08: [io 0x0900-0x090f] pnp 00:08: [io 0x0910-0x091f] pnp 00:08: [io 0xfe00-0xfefe] pnp 00:08: [io 0x0060] pnp 00:08: [io 0x0064] pnp 00:08: [mem 0xdff00000-0xdfffffff] pnp 00:08: [mem 0xffb80000-0xffbfffff] pnp 00:08: [mem 0xfec10000-0xfec1001f] system 00:08: [io 0x04d0-0x04d1] has been reserved system 00:08: [io 0x040b] has been reserved system 00:08: [io 0x04d6] has been reserved system 00:08: [io 0x0c00-0x0c01] has been reserved system 00:08: [io 0x0c14] has been reserved system 00:08: [io 0x0c50-0x0c51] has been reserved system 00:08: [io 0x0c52] has been reserved system 00:08: [io 0x0c6c] has been reserved system 00:08: [io 0x0c6f] has been reserved system 00:08: [io 0x0cd0-0x0cd1] has been reserved system 00:08: [io 0x0cd2-0x0cd3] has been reserved system 00:08: [io 0x0cd4-0x0cd5] has been reserved system 00:08: [io 0x0cd6-0x0cd7] has been reserved system 00:08: [io 0x0cd8-0x0cdf] has been reserved system 00:08: [io 0x0b00-0x0b3f] has been reserved system 00:08: [io 0x0800-0x089f] has been reserved system 00:08: [io 0x0b00-0x0b0f] has been reserved system 00:08: [io 0x0b20-0x0b3f] has been reserved system 00:08: [io 0x0900-0x090f] has been reserved system 00:08: [io 0x0910-0x091f] has been reserved system 00:08: [io 0xfe00-0xfefe] has been reserved system 00:08: [mem 0xdff00000-0xdfffffff] has been reserved system 00:08: [mem 0xffb80000-0xffbfffff] has been reserved system 00:08: [mem 0xfec10000-0xfec1001f] has been reserved system 00:08: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:09: [io 0x0000-0xffffffffffffffff disabled] pnp 00:09: [io 0x0230-0x023f] pnp 00:09: [io 0x0290-0x029f] pnp 00:09: [io 0x0f40-0x0f4f] pnp 00:09: [io 0x0a30-0x0a3f] system 00:09: [io 0x0230-0x023f] has been reserved system 00:09: [io 0x0290-0x029f] has been reserved system 00:09: [io 0x0f40-0x0f4f] has been reserved system 00:09: [io 0x0a30-0x0a3f] has been reserved system 00:09: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:0a: [mem 0xe0000000-0xefffffff] system 00:0a: [mem 0xe0000000-0xefffffff] has been reserved system 00:0a: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:0b: [mem 0x00000000-0x0009ffff] pnp 00:0b: [mem 0x000c0000-0x000cffff] pnp 00:0b: [mem 0x000e0000-0x000fffff] pnp 00:0b: [mem 0x00100000-0xdfefffff] pnp 00:0b: [mem 0xfec00000-0xffffffff] system 00:0b: [mem 0x00000000-0x0009ffff] could not be reserved system 00:0b: [mem 0x000c0000-0x000cffff] could not be reserved system 00:0b: [mem 0x000e0000-0x000fffff] could not be reserved system 00:0b: [mem 0x00100000-0xdfefffff] could not be reserved system 00:0b: [mem 0xfec00000-0xffffffff] could not be reserved system 00:0b: Plug and Play ACPI device, IDs PNP0c01 (active) pnp: PnP ACPI: found 12 devices ACPI: ACPI bus type pnp unregistered PCI: max bus depth: 1 pci_try_num: 2 pci 0000:00:01.0: PCI bridge to [bus 01-01] pci 0000:00:01.0: bridge window [io 0xd000-0xdfff] pci 0000:00:01.0: bridge window [mem 0xfbd00000-0xfbefffff] pci 0000:00:01.0: bridge window [mem 0xf0000000-0xf7ffffff 64bit pref] pci 0000:00:06.0: PCI bridge to [bus 02-02] pci 0000:00:06.0: bridge window [io 0xe000-0xefff] pci 0000:00:06.0: bridge window [mem 0xfbf00000-0xfbffffff] pci 0000:00:14.4: PCI bridge to [bus 03-03] pci 0000:00:06.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 pci 0000:00:06.0: setting latency timer to 64 pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff] pci_bus 0000:00: resource 7 [mem 0x000d0000-0x000dffff] pci_bus 0000:00: resource 8 [mem 0xdff00000-0xdfffffff] pci_bus 0000:00: resource 9 [mem 0xf0000000-0xfebfffff] pci_bus 0000:01: resource 0 [io 0xd000-0xdfff] pci_bus 0000:01: resource 1 [mem 0xfbd00000-0xfbefffff] pci_bus 0000:01: resource 2 [mem 0xf0000000-0xf7ffffff 64bit pref] pci_bus 0000:02: resource 0 [io 0xe000-0xefff] pci_bus 0000:02: resource 1 [mem 0xfbf00000-0xfbffffff] pci_bus 0000:03: resource 4 [io 0x0000-0x0cf7] pci_bus 0000:03: resource 5 [io 0x0d00-0xffff] pci_bus 0000:03: resource 6 [mem 0x000a0000-0x000bffff] pci_bus 0000:03: resource 7 [mem 0x000d0000-0x000dffff] pci_bus 0000:03: resource 8 [mem 0xdff00000-0xdfffffff] pci_bus 0000:03: resource 9 [mem 0xf0000000-0xfebfffff] NET: Registered protocol family 2 IP route cache hash table entries: 262144 (order: 9, 2097152 bytes) TCP established hash table entries: 262144 (order: 10, 4194304 bytes) TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) TCP: Hash tables configured (established 262144 bind 65536) TCP reno registered UDP hash table entries: 4096 (order: 5, 131072 bytes) UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes) NET: Registered protocol family 1 pci 0000:00:01.0: MSI quirk detected; subordinate MSI disabled pci 0000:01:05.0: Boot video device PCI: CLS 64 bytes, default 64 PCI-DMA: Using software bounce buffering for IO (SWIOTLB) Placing 64MB software IO TLB between ffff8800dbe8e000 - ffff8800dfe8e000 software IO TLB at phys 0xdbe8e000 - 0xdfe8e000 kvm: Nested Virtualization enabled kvm: Nested Paging enabled perf: AMD IBS detected (0x0000001f) SGI XFS with security attributes, large block/inode numbers, no debug enabled msgmni has been set to 15951 Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253) io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input0 ACPI: Power Button [PWRB] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input1 ACPI: Power Button [PWRF] ACPI: processor limited to max C-state 1 [drm] Initialized drm 1.1.0 20060810 [drm] radeon defaulting to kernel modesetting. [drm] radeon kernel modesetting enabled. radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 radeon 0000:01:05.0: setting latency timer to 64 [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). [drm] register mmio base: 0xFBEE0000 [drm] register mmio size: 65536 ATOM BIOS: 113 radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF [drm] Detected VRAM RAM=128M, BAR=128M [drm] RAM width 32bits DDR [TTM] Zone kernel: Available graphics memory: 4083584 kiB. [TTM] Zone dma32: Available graphics memory: 2097152 kiB. [TTM] Initializing pool allocator. [drm] radeon: 128M of VRAM memory ready [drm] radeon: 512M of GTT memory ready. [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). [drm] Driver supports precise vblank timestamp query. [drm] radeon: irq initialized. [drm] GART: num cpu pages 131072, num gpu pages 131072 [drm] Loading RS780 Microcode [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). radeon 0000:01:05.0: WB enabled [drm] ring test succeeded in 1 usecs [drm] radeon: ib pool ready. [drm] ib test succeeded in 0 usecs [drm] Radeon Display Connectors [drm] Connector 0: [drm] VGA [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c [drm] Encoders: [drm] CRT1: INTERNAL_KLDSCP_DAC1 [drm] Connector 1: [drm] DVI-D [drm] HPD3 [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c [drm] Encoders: [drm] DFP3: INTERNAL_KLDSCP_LVTMA [drm] radeon: power management initialized [drm] fb mappable at 0xF0142000 [drm] vram apper at 0xF0000000 [drm] size 7299072 [drm] fb depth is 24 [drm] pitch is 6912 fbcon: radeondrmfb (fb0) is primary device Console: switching to colour frame buffer device 131x105 fb0: radeondrmfb frame buffer device drm: registered panic notifier [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 loop: module loaded ahci 0000:00:11.0: version 3.0 ahci 0000:00:11.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22 ahci 0000:00:11.0: AHCI 0001.0100 32 slots 6 ports 3 Gbps 0x3f impl SATA mode ahci 0000:00:11.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc scsi0 : ahci scsi1 : ahci scsi2 : ahci scsi3 : ahci scsi4 : ahci scsi5 : ahci ata1: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffd00 irq 22 ata2: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffd80 irq 22 ata3: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffe00 irq 22 ata4: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffe80 irq 22 ata5: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcfff00 irq 22 ata6: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcfff80 irq 22 pata_atiixp 0000:00:14.1: PCI INT A -> GSI 16 (level, low) -> IRQ 16 scsi6 : pata_atiixp scsi7 : pata_atiixp ata7: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0xff00 irq 14 ata8: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xff08 irq 15 ATL1E 0000:02:00.0: BAR 0: set to [mem 0xfbfc0000-0xfbffffff 64bit] (PCI address [0xfbfc0000-0xfbffffff]) ATL1E 0000:02:00.0: BAR 2: set to [io 0xec00-0xec7f] (PCI address [0xec00-0xec7f]) ATL1E 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ATL1E 0000:02:00.0: setting latency timer to 64 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci_hcd 0000:00:12.2: PCI INT B -> GSI 17 (level, low) -> IRQ 17 ehci_hcd 0000:00:12.2: EHCI Host Controller ehci_hcd 0000:00:12.2: new USB bus registered, assigned bus number 1 ehci_hcd 0000:00:12.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround QUIRK: Enable AMD PLL fix ehci_hcd 0000:00:12.2: applying AMD SB600/SB700 USB freeze workaround ehci_hcd 0000:00:12.2: debug port 1 ehci_hcd 0000:00:12.2: irq 17, io mem 0xfbcff800 ehci_hcd 0000:00:12.2: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 6 ports detected ehci_hcd 0000:00:13.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19 ehci_hcd 0000:00:13.2: EHCI Host Controller ehci_hcd 0000:00:13.2: new USB bus registered, assigned bus number 2 ehci_hcd 0000:00:13.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround ehci_hcd 0000:00:13.2: applying AMD SB600/SB700 USB freeze workaround ehci_hcd 0000:00:13.2: debug port 1 ehci_hcd 0000:00:13.2: irq 19, io mem 0xfbcff400 ehci_hcd 0000:00:13.2: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 6 ports detected ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver ohci_hcd 0000:00:12.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 ohci_hcd 0000:00:12.0: OHCI Host Controller ohci_hcd 0000:00:12.0: new USB bus registered, assigned bus number 3 ohci_hcd 0000:00:12.0: irq 16, io mem 0xfbcfd000 hub 3-0:1.0: USB hub found hub 3-0:1.0: 3 ports detected ohci_hcd 0000:00:12.1: PCI INT A -> GSI 16 (level, low) -> IRQ 16 ohci_hcd 0000:00:12.1: OHCI Host Controller ohci_hcd 0000:00:12.1: new USB bus registered, assigned bus number 4 ohci_hcd 0000:00:12.1: irq 16, io mem 0xfbcfe000 hub 4-0:1.0: USB hub found hub 4-0:1.0: 3 ports detected ohci_hcd 0000:00:13.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:13.0: OHCI Host Controller ohci_hcd 0000:00:13.0: new USB bus registered, assigned bus number 5 ohci_hcd 0000:00:13.0: irq 18, io mem 0xfbcfb000 ata7.00: ATAPI: HL-DT-STDVD-RAM GH22NP20, 1.03, max UDMA/66 ata7.00: configured for UDMA/66 hub 5-0:1.0: USB hub found hub 5-0:1.0: 3 ports detected ohci_hcd 0000:00:13.1: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:13.1: OHCI Host Controller ohci_hcd 0000:00:13.1: new USB bus registered, assigned bus number 6 ohci_hcd 0000:00:13.1: irq 18, io mem 0xfbcfc000 hub 6-0:1.0: USB hub found hub 6-0:1.0: 3 ports detected ohci_hcd 0000:00:14.5: PCI INT C -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:14.5: OHCI Host Controller ohci_hcd 0000:00:14.5: new USB bus registered, assigned bus number 7 ohci_hcd 0000:00:14.5: irq 18, io mem 0xfbcfa000 ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata6: SATA link down (SStatus 0 SControl 300) ata5: SATA link down (SStatus 0 SControl 300) ata4: SATA link down (SStatus 0 SControl 300) ata3.00: ATA-8: OCZ-VERTEX, 1.6, max UDMA/133 ata3.00: 62533296 sectors, multi 1: LBA48 NCQ (depth 31/32), AA ata1.00: ATA-8: ST1500DL003-9VT16L, CC32, max UDMA/133 ata1.00: 2930277168 sectors, multi 16: LBA48 NCQ (depth 31/32) ata2: SATA link down (SStatus 0 SControl 300) ata3.00: configured for UDMA/133 ata1.00: configured for UDMA/133 scsi 0:0:0:0: Direct-Access ATA ST1500DL003-9VT1 CC32 PQ: 0 ANSI: 5 sd 0:0:0:0: [sda] 2930277168 512-byte logical blocks: (1.50 TB/1.36 TiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: Attached scsi generic sg0 type 0 scsi 2:0:0:0: Direct-Access ATA OCZ-VERTEX 1.6 PQ: 0 ANSI: 5 sd 2:0:0:0: [sdb] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB) sd 2:0:0:0: Attached scsi generic sg1 type 0 sd 2:0:0:0: [sdb] Write Protect is off sd 2:0:0:0: [sdb] Mode Sense: 00 3a 00 00 sd 2:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sdb: sdb1 sdb2 sd 2:0:0:0: [sdb] Attached SCSI disk scsi 6:0:0:0: CD-ROM HL-DT-ST DVD-RAM GH22NP20 1.03 PQ: 0 ANSI: 5 hub 7-0:1.0: USB hub found hub 7-0:1.0: 2 ports detected usbcore: registered new interface driver usblp Initializing USB Mass Storage driver... usbcore: registered new interface driver usb-storage USB Mass Storage support registered. usbcore: registered new interface driver usbserial USB Serial support registered for generic sda: unknown partition table sd 0:0:0:0: [sda] Attached SCSI disk sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray cdrom: Uniform CD-ROM driver Revision: 3.20 sr 6:0:0:0: Attached scsi CD-ROM sr0 sr 6:0:0:0: Attached scsi generic sg2 type 5 usb 4-1: new full-speed USB device number 2 using ohci_hcd Refined TSC clocksource calibration: 3210.826 MHz. Switching to clocksource tsc usb 4-2: new full-speed USB device number 3 using ohci_hcd usb 4-3: new low-speed USB device number 4 using ohci_hcd usbcore: registered new interface driver usbserial_generic usbserial: USB Serial Driver core USB Serial support registered for GSM modem (1-port) usbcore: registered new interface driver option option: v0.7.2:USB Driver for GSM modems i8042: PNP: No PS/2 controller found. Probing ports directly. serio: i8042 KBD port at 0x60,0x64 irq 1 serio: i8042 AUX port at 0x60,0x64 irq 12 mousedev: PS/2 mouse device common for all mice rtc_cmos 00:03: RTC can wake from S4 rtc_cmos 00:03: rtc core: registered rtc_cmos as rtc0 rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs i2c /dev entries driver EDAC MC: Ver: 2.1.0 AMD64 EDAC driver v3.4.0 EDAC amd64: DRAM ECC enabled. EDAC amd64: F10h detected (node 0). EDAC MC: DCT0 chip selects: EDAC amd64: MC: 0: 1024MB 1: 1024MB EDAC amd64: MC: 2: 1024MB 3: 1024MB EDAC amd64: MC: 4: 0MB 5: 0MB EDAC amd64: MC: 6: 0MB 7: 0MB EDAC MC: DCT1 chip selects: EDAC amd64: MC: 0: 1024MB 1: 1024MB EDAC amd64: MC: 2: 1024MB 3: 1024MB EDAC amd64: MC: 4: 0MB 5: 0MB EDAC amd64: MC: 6: 0MB 7: 0MB EDAC amd64: using x4 syndromes. EDAC amd64: MCT channel count: 2 EDAC amd64: CS0: Unbuffered DDR3 RAM EDAC amd64: CS1: Unbuffered DDR3 RAM EDAC amd64: CS2: Unbuffered DDR3 RAM EDAC amd64: CS3: Unbuffered DDR3 RAM EDAC MC0: Giving out device to 'amd64_edac' 'F10h': DEV 0000:00:18.2 EDAC PCI0: Giving out device to module 'amd64_edac' controller 'EDAC PCI controller': DEV '0000:00:18.2' (POLLED) cpuidle: using governor ladder cpuidle: using governor menu input: C-Media USB Headphone Set as /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.3/input/input2 generic-usb 0003:0D8C:000C.0001: input,hidraw0: USB HID v1.00 Device [C-Media USB Headphone Set ] on usb-0000:00:12.1-1/input3 logitech-djreceiver 0003:046D:C52B.0004: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:12.1-2/input2 input: Logitech Unifying Device. Wireless PID:101b as /devices/pci0000:00/0000:00:12.1/usb4/4-2/4-2:1.2/0003:046D:C52B.0004/input/input3 logitech-djdevice 0003:046D:C52B.0006: input,hidraw2: USB HID v1.11 Mouse [Logitech Unifying Device. Wireless PID:101b] on usb-0000:00:12.1-2:1 input: HID 046a:0011 as /devices/pci0000:00/0000:00:12.1/usb4/4-3/4-3:1.0/input/input4 generic-usb 0003:046A:0011.0005: input,hidraw3: USB HID v1.10 Keyboard [HID 046a:0011] on usb-0000:00:12.1-3/input0 usbcore: registered new interface driver usbhid usbhid: USB HID core driver usbcore: registered new interface driver snd-usb-audio ALSA device list: #0: C-Media USB Headphone Set at usb-0000:00:12.1-1, full speed Netfilter messages via NETLINK v0.30. nf_conntrack version 0.5.0 (16384 buckets, 65536 max) ctnetlink v0.93: registering with nfnetlink. ip_tables: (C) 2000-2006 Netfilter Core Team TCP cubic registered NET: Registered protocol family 17 registered taskstats version 1 rtc_cmos 00:03: setting system clock to 2011-12-02 19:50:18 UTC (1322855418) powernow-k8: Found 1 AMD Phenom(tm) II X4 955 Processor (4 cpu cores) (version 2.20.00) powernow-k8: 0 : pstate 0 (3200 MHz) powernow-k8: 1 : pstate 1 (2500 MHz) powernow-k8: 2 : pstate 2 (2100 MHz) powernow-k8: 3 : pstate 3 (800 MHz) XFS (sdb2): Mounting Filesystem XFS (sdb2): Ending clean mount VFS: Mounted root (xfs filesystem) readonly on device 8:18. devtmpfs: mounted Freeing unused kernel memory: 420k freed Write protecting the kernel read-only data: 8192k Freeing unused kernel memory: 1584k freed Freeing unused kernel memory: 400k freed XFS (sda): Mounting Filesystem XFS (sda): Ending clean mount ATL1E 0000:02:00.0: irq 40 for MSI/MSI-X ATL1E 0000:02:00.0: eth0: NIC Link is Up <100 Mbps Full Duplex> ATL1E 0000:02:00.0: eth0: NIC Link is Up <100 Mbps Full Duplex> udevd[868]: starting version 171 Adding 2097148k swap on /var/tmp/swap/swapfile. Priority:-1 extents:2 across:2634672k -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-02 20:06 ` Markus Trippelsdorf @ 2011-12-02 20:48 ` Markus Trippelsdorf 2011-12-07 14:32 ` Robert Richter 0 siblings, 1 reply; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-02 20:48 UTC (permalink / raw) To: Jerome Glisse Cc: Christoph Lameter, Alex, Shi, Dave Airlie, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher, Robert Richter On 2011.12.02 at 21:06 +0100, Markus Trippelsdorf wrote: > On 2011.12.02 at 14:43 -0500, Jerome Glisse wrote: > > On Thu, Dec 01, 2011 at 09:44:37AM +0100, Markus Trippelsdorf wrote: > > > On 2011.11.24 at 09:50 +0100, Markus Trippelsdorf wrote: > > > > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > > > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > > > exactly the same spot again. (CCing the drm list) > > > > > > > > > > Well this is looks like write after free. > > > > > > > > > > > ============================================================================= > > > > > > BUG idr_layer_cache: Poison overwritten > > > > > > ----------------------------------------------------------------------------- > > > > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > > > > > And its an integer sized write of 0. If you look at the struct definition > > > > > and lookup the offset you should be able to locate the field that > > > > > was modified. > > > > > > It also happens with CONFIG_SLAB. > > > (If someone wants to reproduce the issue, just run a kexec boot loop and > > > the bug will occur after a few (~10) iterations.) > > > > > > > Can you provide the kexec command line you are using and full kernel > > log (mostly interested in kernel option). > > /usr/sbin/kexec -l "/usr/src/linux/arch/x86/boot/bzImage" --append="root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet" > /usr/sbin/kexec -e > > (The loop happens after autologin in .zprofile: > sleep 4 && sudo /etc/minit/ctrlaltdel/run > (the last script kills, unmounts and then runs the two kexec commands > above)) BTW I always see (mostly only on screen, sometimes in the logs): [Firmware Bug]: cpu 2, try to use APIC500 (LVT offset 0) for vector 0x10400, but the register is already in use for vector 0xf9 on another cpu [Firmware Bug]: cpu 2, IBS interrupt offset 0 not available (MSRC001103A=0x0000000000000100) [Firmware Bug]: using offset 1 for IBS interrupts [Firmware Bug]: workaround enabled for IBS LVT offset perf: AMD IBS detected (0x0000001f) But I hope that it is only a harmless warning. (perf Instruction-Based Sampling) Robert? -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-02 20:48 ` Markus Trippelsdorf @ 2011-12-07 14:32 ` Robert Richter 2011-12-07 14:39 ` Markus Trippelsdorf 0 siblings, 1 reply; 26+ messages in thread From: Robert Richter @ 2011-12-07 14:32 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Jerome Glisse, Christoph Lameter, Alex, Shi, Dave Airlie, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 02.12.11 21:48:20, Markus Trippelsdorf wrote: > BTW I always see (mostly only on screen, sometimes in the logs): > > [Firmware Bug]: cpu 2, try to use APIC500 (LVT offset 0) for vector 0x10400, but the register is already in use for vector 0xf9 on another cpu > [Firmware Bug]: cpu 2, IBS interrupt offset 0 not available (MSRC001103A=0x0000000000000100) > [Firmware Bug]: using offset 1 for IBS interrupts > [Firmware Bug]: workaround enabled for IBS LVT offset > perf: AMD IBS detected (0x0000001f) > > But I hope that it is only a harmless warning. > (perf Instruction-Based Sampling) Yes, the message always apears on AMD family 10h. Nothing to worry about. A patch is on the way to soften the message to not scare the people: http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=16e5294e5f8303756a179cf218e37dfb9ed34417 -Robert -- Advanced Micro Devices, Inc. Operating System Research Center -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-07 14:32 ` Robert Richter @ 2011-12-07 14:39 ` Markus Trippelsdorf 0 siblings, 0 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-07 14:39 UTC (permalink / raw) To: Robert Richter Cc: Jerome Glisse, Christoph Lameter, Alex, Shi, Dave Airlie, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.07 at 15:32 +0100, Robert Richter wrote: > On 02.12.11 21:48:20, Markus Trippelsdorf wrote: > > BTW I always see (mostly only on screen, sometimes in the logs): > > > > [Firmware Bug]: cpu 2, try to use APIC500 (LVT offset 0) for vector 0x10400, but the register is already in use for vector 0xf9 on another cpu > > [Firmware Bug]: cpu 2, IBS interrupt offset 0 not available (MSRC001103A=0x0000000000000100) > > [Firmware Bug]: using offset 1 for IBS interrupts > > [Firmware Bug]: workaround enabled for IBS LVT offset > > perf: AMD IBS detected (0x0000001f) > > > > But I hope that it is only a harmless warning. > > (perf Instruction-Based Sampling) > > Yes, the message always apears on AMD family 10h. Nothing to worry > about. > > A patch is on the way to soften the message to not scare the people: > > http://git.kernel.org/?p=linux/kernel/git/tip/tip.git;a=commit;h=16e5294e5f8303756a179cf218e37dfb9ed34417 Thanks. It's already in mainline and the message is gone now. http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commit;h=16e5294e5f8303756a179cf218e37dfb9ed34417 -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-11-24 8:50 ` Markus Trippelsdorf 2011-12-01 8:44 ` Markus Trippelsdorf @ 2011-12-02 23:04 ` Jerome Glisse 2011-12-03 9:28 ` Markus Trippelsdorf 1 sibling, 1 reply; 26+ messages in thread From: Jerome Glisse @ 2011-12-02 23:04 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher [-- Attachment #1: Type: text/plain, Size: 12970 bytes --] On Thu, Nov 24, 2011 at 09:50:40AM +0100, Markus Trippelsdorf wrote: > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > exactly the same spot again. (CCing the drm list) > > > > Well this is looks like write after free. > > > > > ============================================================================= > > > BUG idr_layer_cache: Poison overwritten > > > ----------------------------------------------------------------------------- > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > And its an integer sized write of 0. If you look at the struct definition > > and lookup the offset you should be able to locate the field that > > was modified. > > Here are two more BUGs that seem to point to the same bug: > > 1) > ... > Nov 21 18:30:30 x4 kernel: [drm] radeon: irq initialized. > Nov 21 18:30:30 x4 kernel: [drm] GART: num cpu pages 131072, num gpu pages 131072 > Nov 21 18:30:30 x4 kernel: [drm] Loading RS780 Microcode > Nov 21 18:30:30 x4 kernel: [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). > Nov 21 18:30:30 x4 kernel: radeon 0000:01:05.0: WB enabled > Nov 21 18:30:30 x4 kernel: ============================================================================= > Nov 21 18:30:30 x4 kernel: BUG task_xstate: Not a valid slab page > Nov 21 18:30:30 x4 kernel: ----------------------------------------------------------------------------- > Nov 21 18:30:30 x4 kernel: > Nov 21 18:30:30 x4 kernel: INFO: Slab 0xffffea0000044300 objects=32767 used=65535 fp=0x (null) flags=0x0401 > Nov 21 18:30:30 x4 kernel: Pid: 9, comm: ksoftirqd/1 Not tainted 3.2.0-rc2-00274-g6fe4c6d-dirty #75 > Nov 21 18:30:30 x4 kernel: Call Trace: > Nov 21 18:30:30 x4 kernel: [<ffffffff81101c1d>] slab_err+0x7d/0x90 > Nov 21 18:30:30 x4 kernel: [<ffffffff8103e29f>] ? dump_trace+0x16f/0x2e0 > Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] ? free_thread_xstate+0x24/0x40 > Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] ? free_thread_xstate+0x24/0x40 > Nov 21 18:30:30 x4 kernel: [<ffffffff81102566>] check_slab+0x96/0xc0 > Nov 21 18:30:30 x4 kernel: [<ffffffff814c5c29>] free_debug_processing+0x34/0x19c > Nov 21 18:30:30 x4 kernel: [<ffffffff81101d9a>] ? set_track+0x5a/0x190 > Nov 21 18:30:30 x4 kernel: [<ffffffff8110cf2b>] ? sys_open+0x1b/0x20 > Nov 21 18:30:30 x4 kernel: [<ffffffff814c5e55>] __slab_free+0x33/0x2d0 > Nov 21 18:30:30 x4 kernel: [<ffffffff8110cf2b>] ? sys_open+0x1b/0x20 > Nov 21 18:30:30 x4 kernel: [<ffffffff81105134>] kmem_cache_free+0x104/0x120 > Nov 21 18:30:30 x4 kernel: [<ffffffff81044764>] free_thread_xstate+0x24/0x40 > Nov 21 18:30:30 x4 kernel: [<ffffffff81044794>] free_thread_info+0x14/0x30 > Nov 21 18:30:30 x4 kernel: [<ffffffff8106a4ff>] free_task+0x2f/0x50 > Nov 21 18:30:30 x4 kernel: [<ffffffff8106a5d0>] __put_task_struct+0xb0/0x110 > Nov 21 18:30:30 x4 kernel: [<ffffffff8106eb4b>] delayed_put_task_struct+0x3b/0xa0 > Nov 21 18:30:30 x4 kernel: [<ffffffff810aa01a>] __rcu_process_callbacks+0x12a/0x350 > Nov 21 18:30:30 x4 kernel: [<ffffffff810aa2a2>] rcu_process_callbacks+0x62/0x140 > Nov 21 18:30:30 x4 kernel: [<ffffffff81072e18>] __do_softirq+0xa8/0x200 > Nov 21 18:30:30 x4 kernel: [<ffffffff81073077>] run_ksoftirqd+0x107/0x210 > Nov 21 18:30:30 x4 kernel: [<ffffffff81072f70>] ? __do_softirq+0x200/0x200 > Nov 21 18:30:30 x4 kernel: [<ffffffff8108bb87>] kthread+0x87/0x90 > Nov 21 18:30:30 x4 kernel: [<ffffffff814cdcf4>] kernel_thread_helper+0x4/0x10 > Nov 21 18:30:30 x4 kernel: [<ffffffff8108bb00>] ? kthread_flush_work_fn+0x10/0x10 > Nov 21 18:30:30 x4 kernel: [<ffffffff814cdcf0>] ? gs_change+0xb/0xb > Nov 21 18:30:30 x4 kernel: FIX task_xstate: Object at 0xffffffff8110cf2b not freed > Nov 21 18:30:30 x4 kernel: [drm] ring test succeeded in 1 usecs > Nov 21 18:30:30 x4 kernel: [drm] radeon: ib pool ready. > Nov 21 18:30:30 x4 kernel: [drm] ib test succeeded in 0 usecs > Nov 21 18:30:30 x4 kernel: [drm] Radeon Display Connectors > Nov 21 18:30:30 x4 kernel: [drm] Connector 0 > > 2) > ... > Nov 21 17:04:38 x4 kernel: fbcon: radeondrmfb (fb0) is primary device > Nov 21 17:04:38 x4 kernel: Console: switching to colour frame buffer device 131x105 > Nov 21 17:04:38 x4 kernel: fb0: radeondrmfb frame buffer device > Nov 21 17:04:38 x4 kernel: drm: registered panic notifier > Nov 21 17:04:38 x4 kernel: [drm] Initialized radeon 2.11.0 20080528 for 0000:01:05.0 on minor 0 > Nov 21 17:04:38 x4 kernel: loop: module loaded > Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: version 3.0 > Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22 > Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: AHCI 0001.0100 32 slots 6 ports 3 Gbps 0x3f impl SATA mode > Nov 21 17:04:38 x4 kernel: ahci 0000:00:11.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc > Nov 21 17:04:38 x4 kernel: scsi0 : ahci > Nov 21 17:04:38 x4 kernel: scsi1 : ahci > Nov 21 17:04:38 x4 kernel: ============================================================================= > Nov 21 17:04:38 x4 kernel: BUG task_struct: Poison overwritten > Nov 21 17:04:38 x4 kernel: ----------------------------------------------------------------------------- > Nov 21 17:04:38 x4 kernel: > Nov 21 17:04:38 x4 kernel: INFO: 0xffff880215c43800-0xffff880215c43803. First byte 0x0 instead of 0x6b > Nov 21 17:04:38 x4 kernel: INFO: Allocated in copy_process+0xc4/0xf60 age=168 cpu=1 pid=5 > Nov 21 17:04:38 x4 kernel: __slab_alloc.constprop.70+0x1a4/0x1e0 > Nov 21 17:04:38 x4 kernel: kmem_cache_alloc+0x126/0x160 > Nov 21 17:04:38 x4 kernel: copy_process+0xc4/0xf60 > Nov 21 17:04:38 x4 kernel: do_fork+0x100/0x2b0 > Nov 21 17:04:38 x4 kernel: kernel_thread+0x6c/0x70 > Nov 21 17:04:38 x4 kernel: __call_usermodehelper+0x31/0xa0 > Nov 21 17:04:38 x4 kernel: process_one_work+0x11a/0x430 > Nov 21 17:04:38 x4 kernel: worker_thread+0x126/0x2d0 > Nov 21 17:04:38 x4 kernel: kthread+0x87/0x90 > Nov 21 17:04:38 x4 kernel: kernel_thread_helper+0x4/0x10 > Nov 21 17:04:38 x4 kernel: INFO: Freed in free_task+0x3e/0x50 age=156 cpu=2 pid=13 > Nov 21 17:04:38 x4 kernel: __slab_free+0x33/0x2d0 > Nov 21 17:04:38 x4 kernel: kmem_cache_free+0x104/0x120 > Nov 21 17:04:38 x4 kernel: free_task+0x3e/0x50 > Nov 21 17:04:38 x4 kernel: __put_task_struct+0xb0/0x110 > Nov 21 17:04:38 x4 kernel: delayed_put_task_struct+0x3b/0xa0 > Nov 21 17:04:38 x4 kernel: __rcu_process_callbacks+0x12a/0x350 > Nov 21 17:04:38 x4 kernel: rcu_process_callbacks+0x62/0x140 > Nov 21 17:04:38 x4 kernel: __do_softirq+0xa8/0x200 > Nov 21 17:04:38 x4 kernel: run_ksoftirqd+0x107/0x210 > Nov 21 17:04:38 x4 kernel: kthread+0x87/0x90 > Nov 21 17:04:38 x4 kernel: kernel_thread_helper+0x4/0x10 > Nov 21 17:04:38 x4 kernel: INFO: Slab 0xffffea0008571000 objects=17 used=17 fp=0x (null) flags=0x4000000000004080 > Nov 21 17:04:38 x4 kernel: INFO: Object 0xffff880215c432c0 @offset=12992 fp=0xffff880215c41d00 > Nov 21 17:04:38 x4 kernel: > Nov 21 17:04:38 x4 kernel: Bytes b4 ffff880215c432b0: 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZZZZZZZZZ > Nov 21 17:04:38 x4 kernel: Object ffff880215c432c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > ... > Nov 21 17:04:38 x4 kernel: Object ffff880215c437f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43820: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43830: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43840: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43850: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43860: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43870: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43880: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c43890: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > Nov 21 17:04:38 x4 kernel: Object ffff880215c438a0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b a5 kkkkkkkkkkkkkkk. > Nov 21 17:04:38 x4 kernel: Redzone ffff880215c438b0: bb bb bb bb bb bb bb bb ........ > Nov 21 17:04:38 x4 kernel: Padding ffff880215c439f0: 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a 5a ZZZZZZZZZZZZZZZZ > Nov 21 17:04:38 x4 kernel: Pid: 5, comm: kworker/u:0 Not tainted 3.2.0-rc2-00274-g6fe4c6d #72 > Nov 21 17:04:38 x4 kernel: Call Trace: > Nov 21 17:04:38 x4 kernel: [<ffffffff81101ca8>] ? print_section+0x38/0x40 > Nov 21 17:04:38 x4 kernel: [<ffffffff811021a3>] print_trailer+0xe3/0x150 > Nov 21 17:04:38 x4 kernel: [<ffffffff811023a0>] check_bytes_and_report+0xe0/0x100 > Nov 21 17:04:38 x4 kernel: [<ffffffff81103196>] check_object+0x1c6/0x240 > Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 > Nov 21 17:04:38 x4 kernel: [<ffffffff814c5bb3>] alloc_debug_processing+0x62/0xe4 > Nov 21 17:04:38 x4 kernel: [<ffffffff814c6461>] __slab_alloc.constprop.70+0x1a4/0x1e0 > Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 > Nov 21 17:04:38 x4 kernel: [<ffffffff814ca12a>] ? schedule+0x3a/0x50 > Nov 21 17:04:38 x4 kernel: [<ffffffff81104d66>] kmem_cache_alloc+0x126/0x160 > Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] ? copy_process+0xc4/0xf60 > Nov 21 17:04:38 x4 kernel: [<ffffffff81065f18>] ? enqueue_task_fair+0xf8/0x140 > Nov 21 17:04:38 x4 kernel: [<ffffffff8106b034>] copy_process+0xc4/0xf60 > Nov 21 17:04:38 x4 kernel: [<ffffffff8106c000>] do_fork+0x100/0x2b0 > Nov 21 17:04:38 x4 kernel: [<ffffffff810920fd>] ? sched_clock_local+0x1d/0x90 > Nov 21 17:04:38 x4 kernel: [<ffffffff81044dec>] kernel_thread+0x6c/0x70 > Nov 21 17:04:38 x4 kernel: [<ffffffff81084430>] ? proc_cap_handler+0x180/0x180 > Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd30>] ? gs_change+0xb/0xb > Nov 21 17:04:38 x4 kernel: [<ffffffff810845a1>] __call_usermodehelper+0x31/0xa0 > Nov 21 17:04:38 x4 kernel: [<ffffffff810869ba>] process_one_work+0x11a/0x430 > Nov 21 17:04:38 x4 kernel: [<ffffffff81084570>] ? call_usermodehelper_freeinfo+0x30/0x30 > Nov 21 17:04:38 x4 kernel: [<ffffffff81087026>] worker_thread+0x126/0x2d0 > Nov 21 17:04:38 x4 kernel: [<ffffffff81086f00>] ? rescuer_thread+0x1f0/0x1f0 > Nov 21 17:04:38 x4 kernel: [<ffffffff8108bb87>] kthread+0x87/0x90 > Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd34>] kernel_thread_helper+0x4/0x10 > Nov 21 17:04:38 x4 kernel: [<ffffffff8108bb00>] ? kthread_flush_work_fn+0x10/0x10 > Nov 21 17:04:38 x4 kernel: [<ffffffff814cdd30>] ? gs_change+0xb/0xb > Nov 21 17:04:38 x4 kernel: FIX task_struct: Restoring 0xffff880215c43800-0xffff880215c43803=0x6b > Nov 21 17:04:38 x4 kernel: > Nov 21 17:04:38 x4 kernel: FIX task_struct: Marking all objects used > I really don't think that drm or radeon is guilty. I tried to reproduce with rc3+ & rc4+ with slub or slab, did more then 20 kexec cycle with same kernel parameter and no issue. To confirm that radeon or drm is not to blame can you trigger the issue by using nomodeset kernel option (your fb rotate option is then useless). If with nomodeset you can trigger the issue can you then try to trigger it with KMS enabled and with attached patch (real ugly printk debuging) Note that i walked over the drm mode init code and i believe the root issue is that some code in the kernel do a double idr_remove/destroy which trigger the idr slub/slab error. It just happen that radeon/drm is call after the idr double free but is not the one guilty. Note that i don't understand the idr code much, so my theory can be completely wrong but attached patch might help to shed some light. Cheers, Jerome [-- Attachment #2: 0001-UGLY-DEBUGING.patch --] [-- Type: text/plain, Size: 3785 bytes --] >From 4262819d046dacfb75ad2d639cb61c5b6985e159 Mon Sep 17 00:00:00 2001 From: Jerome Glisse <jglisse@redhat.com> Date: Fri, 2 Dec 2011 17:50:02 -0500 Subject: [PATCH] UGLY DEBUGING WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 --- drivers/gpu/drm/drm_crtc.c | 2 ++ drivers/gpu/drm/drm_pci.c | 2 ++ drivers/gpu/drm/drm_platform.c | 2 ++ lib/idr.c | 6 +++++- mm/slab.c | 2 +- 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 8323fc3..a1a0a69 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -242,6 +242,7 @@ again: obj->id = new_id; obj->type = obj_type; +DRM_INFO("allocating idr %p %d idr %d\n", obj, obj_type, new_id); return 0; } @@ -259,6 +260,7 @@ static void drm_mode_object_put(struct drm_device *dev, struct drm_mode_object *object) { mutex_lock(&dev->mode_config.idr_mutex); +DRM_INFO("remove idr %p %d idr %d\n", object, object->type, object->id); idr_remove(&dev->mode_config.crtc_idr, object->id); mutex_unlock(&dev->mode_config.idr_mutex); } diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c index d4d10b7..7932ebb 100644 --- a/drivers/gpu/drm/drm_pci.c +++ b/drivers/gpu/drm/drm_pci.c @@ -345,11 +345,13 @@ int drm_get_pci_dev(struct pci_dev *pdev, const struct pci_device_id *ent, if (drm_core_check_feature(dev, DRIVER_MODESET)) { pci_set_drvdata(pdev, dev); +printk(KERN_INFO "%s %d\n", __func__, __LINE__); ret = drm_get_minor(dev, &dev->control, DRM_MINOR_CONTROL); if (ret) goto err_g2; } +printk(KERN_INFO "%s %d\n", __func__, __LINE__); if ((ret = drm_get_minor(dev, &dev->primary, DRM_MINOR_LEGACY))) goto err_g3; diff --git a/drivers/gpu/drm/drm_platform.c b/drivers/gpu/drm/drm_platform.c index ae9db5e..3e7e401 100644 --- a/drivers/gpu/drm/drm_platform.c +++ b/drivers/gpu/drm/drm_platform.c @@ -65,11 +65,13 @@ int drm_get_platform_dev(struct platform_device *platdev, if (drm_core_check_feature(dev, DRIVER_MODESET)) { dev_set_drvdata(&platdev->dev, dev); +printk(KERN_INFO "%s %d\n", __func__, __LINE__); ret = drm_get_minor(dev, &dev->control, DRM_MINOR_CONTROL); if (ret) goto err_g1; } +printk(KERN_INFO "%s %d\n", __func__, __LINE__); ret = drm_get_minor(dev, &dev->primary, DRM_MINOR_LEGACY); if (ret) goto err_g2; diff --git a/lib/idr.c b/lib/idr.c index ed055b2..22c3ec6 100644 --- a/lib/idr.c +++ b/lib/idr.c @@ -427,6 +427,7 @@ void idr_remove(struct idr *idp, int id) * layers that fall into the freelist are those that have been * preallocated. */ +printk(KERN_INFO "%s free idr %p\n", __func__, p); kmem_cache_free(idr_layer_cache, p); } return; @@ -489,6 +490,7 @@ void idr_destroy(struct idr *idp) { while (idp->id_free_cnt) { struct idr_layer *p = get_from_free_list(idp); +printk(KERN_INFO "%s free idr %p\n", __func__, p); kmem_cache_free(idr_layer_cache, p); } } @@ -841,8 +843,10 @@ int ida_get_new_above(struct ida *ida, int starting_id, int *p_id) */ if (ida->idr.id_free_cnt || ida->free_bitmap) { struct idr_layer *p = get_from_free_list(&ida->idr); - if (p) + if (p) { +printk(KERN_INFO "%s free idr %p\n", __func__, p); kmem_cache_free(idr_layer_cache, p); + } } return 0; diff --git a/mm/slab.c b/mm/slab.c index 708efe8..83864f9 100644 --- a/mm/slab.c +++ b/mm/slab.c @@ -1926,7 +1926,7 @@ static void check_poison_obj(struct kmem_cache *cachep, void *objp) /* Mismatch ! */ /* Print header */ if (lines == 0) { - printk(KERN_ERR + WARN(1, "Slab corruption: %s start=%p, len=%d\n", cachep->name, realobj, size); print_objinfo(cachep, objp, 0); -- 1.7.7.1 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-02 23:04 ` Jerome Glisse @ 2011-12-03 9:28 ` Markus Trippelsdorf 2011-12-03 12:20 ` Dave Airlie 0 siblings, 1 reply; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-03 9:28 UTC (permalink / raw) To: Jerome Glisse Cc: Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.02 at 18:04 -0500, Jerome Glisse wrote: > On Thu, Nov 24, 2011 at 09:50:40AM +0100, Markus Trippelsdorf wrote: > > On 2011.11.23 at 10:06 -0600, Christoph Lameter wrote: > > > On Wed, 23 Nov 2011, Markus Trippelsdorf wrote: > > > > > > > > FIX idr_layer_cache: Marking all objects used > > > > > > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > exactly the same spot again. (CCing the drm list) > > > > > > Well this is looks like write after free. > > > > > > > ============================================================================= > > > > BUG idr_layer_cache: Poison overwritten > > > > ----------------------------------------------------------------------------- > > > > Object ffff8802156487c0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487d0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487e0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff8802156487f0: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > Object ffff880215648800: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk > > > > Object ffff880215648810: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk > > > > > > And its an integer sized write of 0. If you look at the struct definition > > > and lookup the offset you should be able to locate the field that > > > was modified. > > > I really don't think that drm or radeon is guilty. I tried to reproduce > with rc3+ & rc4+ with slub or slab, did more then 20 kexec cycle with > same kernel parameter and no issue. > > To confirm that radeon or drm is not to blame can you trigger the issue > by using nomodeset kernel option (your fb rotate option is then > useless). If with nomodeset you can trigger the issue can you then try > to trigger it with KMS enabled and with attached patch (real ugly printk > debuging) > > Note that i walked over the drm mode init code and i believe the root > issue is that some code in the kernel do a double idr_remove/destroy > which trigger the idr slub/slab error. It just happen that radeon/drm > is call after the idr double free but is not the one guilty. > > Note that i don't understand the idr code much, so my theory can be > completely wrong but attached patch might help to shed some light. Thanks for the debugging patch Jerome. I couldn't trigger the issue with the »nomodeset« kernel option yet. But I've triggered it with KMS enabled and your patch applied: Linux version 3.2.0-rc4-00089-g621fc1e-dirty (markus@x4.trippels.de) (gcc version 4.7.0 20111201 (experimental) (GCC) ) #137 SMP PREEMPT Sat Dec 3 06:43:05 CET 2011 Command line: root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet KERNEL supported cpus: AMD AuthenticAMD BIOS-provided physical RAM map: BIOS-e820: 0000000000000100 - 000000000009fc00 (usable) BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) BIOS-e820: 00000000000e6000 - 0000000000100000 (reserved) BIOS-e820: 0000000000100000 - 00000000dfe90000 (usable) BIOS-e820: 00000000dfe90000 - 00000000dfea8000 (ACPI data) BIOS-e820: 00000000dfea8000 - 00000000dfed0000 (ACPI NVS) BIOS-e820: 00000000dfed0000 - 00000000dff00000 (reserved) BIOS-e820: 00000000fff00000 - 0000000100000000 (reserved) BIOS-e820: 0000000100000000 - 0000000220000000 (usable) NX (Execute Disable) protection: active DMI present. DMI: System manufacturer System Product Name/M4A78T-E, BIOS 3406 08/20/2010 e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) e820 remove range: 00000000000a0000 - 0000000000100000 (usable) last_pfn = 0x220000 max_arch_pfn = 0x400000000 MTRR default type: uncachable MTRR fixed ranges enabled: 00000-9FFFF write-back A0000-EFFFF uncachable F0000-FFFFF write-protect MTRR variable ranges enabled: 0 base 000000000000 mask FFFF80000000 write-back 1 base 000080000000 mask FFFFC0000000 write-back 2 base 0000C0000000 mask FFFFE0000000 write-back 3 base 0000F0000000 mask FFFFF8000000 write-combining 4 disabled 5 disabled 6 disabled 7 disabled TOM2: 0000000220000000 aka 8704M x86 PAT enabled: cpu 0, old 0x7010600070106, new 0x7010600070106 last_pfn = 0xdfe90 max_arch_pfn = 0x400000000 initial memory mapped : 0 - 20000000 Base memory trampoline at [ffff88000009d000] 9d000 size 8192 Using GB pages for direct mapping init_memory_mapping: 0000000000000000-00000000dfe90000 0000000000 - 00c0000000 page 1G 00c0000000 - 00dfe00000 page 2M 00dfe00000 - 00dfe90000 page 4k kernel direct mapping tables up to dfe90000 @ 1fffd000-20000000 init_memory_mapping: 0000000100000000-0000000220000000 0100000000 - 0200000000 page 1G 0200000000 - 0220000000 page 2M kernel direct mapping tables up to 220000000 @ dfe8e000-dfe90000 ACPI: RSDP 00000000000fb880 00024 (v02 ACPIAM) ACPI: XSDT 00000000dfe90100 0005C (v01 082010 XSDT1403 20100820 MSFT 00000097) ACPI: FACP 00000000dfe90290 000F4 (v03 082010 FACP1403 20100820 MSFT 00000097) ACPI Warning: Optional field Pm2ControlBlock has zero address or length: 0x0000000000000000/0x1 (20110623/tbfadt-560) ACPI: DSDT 00000000dfe90450 0E6FE (v01 A1152 A1152000 00000000 INTL 20060113) ACPI: FACS 00000000dfea8000 00040 ACPI: APIC 00000000dfe90390 0007C (v01 082010 APIC1403 20100820 MSFT 00000097) ACPI: MCFG 00000000dfe90410 0003C (v01 082010 OEMMCFG 20100820 MSFT 00000097) ACPI: OEMB 00000000dfea8040 00072 (v01 082010 OEMB1403 20100820 MSFT 00000097) ACPI: SRAT 00000000dfe9f450 000E8 (v01 AMD FAM_F_10 00000002 AMD 00000001) ACPI: HPET 00000000dfe9f540 00038 (v01 082010 OEMHPET 20100820 MSFT 00000097) ACPI: SSDT 00000000dfe9f580 0088C (v01 A M I POWERNOW 00000001 AMD 00000001) ACPI: Local APIC address 0xfee00000 [ffffea0000000000-ffffea00077fffff] PMD -> [ffff880217600000-ffff88021e7fffff] on node 0 Zone PFN ranges: DMA32 0x00000010 -> 0x00100000 Normal 0x00100000 -> 0x00220000 Movable zone start PFN for each node early_node_map[3] active PFN ranges 0: 0x00000010 -> 0x0000009f 0: 0x00000100 -> 0x000dfe90 0: 0x00100000 -> 0x00220000 On node 0 totalpages: 2096671 DMA32 zone: 14336 pages used for memmap DMA32 zone: 2 pages reserved DMA32 zone: 902685 pages, LIFO batch:31 Normal zone: 16128 pages used for memmap Normal zone: 1163520 pages, LIFO batch:31 ACPI: PM-Timer IO Port: 0x808 ACPI: Local APIC address 0xfee00000 ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled) ACPI: LAPIC (acpi_id[0x05] lapic_id[0x84] disabled) ACPI: LAPIC (acpi_id[0x06] lapic_id[0x85] disabled) ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0]) IOAPIC[0]: apic_id 4, version 33, address 0xfec00000, GSI 0-23 ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level) ACPI: IRQ0 used by override. ACPI: IRQ2 used by override. ACPI: IRQ9 used by override. Using ACPI (MADT) for SMP configuration information ACPI: HPET id: 0x8300 base: 0xfed00000 SMP: Allowing 4 CPUs, 0 hotplug CPUs nr_irqs_gsi: 40 Allocating PCI resources starting at dff00000 (gap: dff00000:20000000) setup_percpu: NR_CPUS:4 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1 PERCPU: Embedded 23 pages/cpu @ffff88021fc00000 s71808 r0 d22400 u524288 pcpu-alloc: s71808 r0 d22400 u524288 alloc=1*2097152 pcpu-alloc: [0] 0 1 2 3 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 2066205 Kernel command line: root=PARTUUID=6d6a4009-3a90-40df-806a-e63f48189719 init=/sbin/minit rootflags=logbsize=262144 fbcon=rotate:3 drm_kms_helper.poll=0 quiet PID hash table entries: 4096 (order: 3, 32768 bytes) Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes) Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes) Memory: 8181488k/8912896k available (4670k kernel code, 526212k absent, 205196k reserved, 3879k data, 424k init) Preemptible hierarchical RCU implementation. Verbose stalled-CPUs detection is disabled. NR_IRQS:4352 nr_irqs:712 16 Extended CMOS year: 2000 Console: colour VGA+ 80x25 console [tty0] enabled hpet clockevent registered Fast TSC calibration using PIT Detected 3211.038 MHz processor. Calibrating delay loop (skipped), value calculated using timer frequency.. 6422.07 BogoMIPS (lpj=3211038) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 256 ida_get_new_above free idr ffff88021e81e700 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e8334c8 ida_get_new_above free idr ffff88021e833058 ida_get_new_above free idr ffff88021e834da8 ida_get_new_above free idr ffff88021e834da8 ida_get_new_above free idr ffff88021e834da8 ida_get_new_above free idr ffff88021e834da8 ida_get_new_above free idr ffff88021e834da8 ida_get_new_above free idr ffff88021e836700 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 ida_get_new_above free idr ffff88021e836290 tseg: 0000000000 CPU: Physical Processor ID: 0 CPU: Processor Core ID: 0 mce: CPU supports 6 MCE banks using AMD E400 aware idle routine Freeing SMP alternatives: 12k freed ACPI: Core revision 20110623 ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 CPU0: AMD Phenom(tm) II X4 955 Processor stepping 02 Performance Events: AMD PMU driver. ... version: 0 ... bit width: 48 ... generic registers: 4 ... value mask: 0000ffffffffffff ... max period: 00007fffffffffff ... fixed-purpose events: 0 ... event mask: 000000000000000f System has AMD C1E enabled Switch to broadcast mode on CPU0 ida_get_new_above free idr ffff88021e897b70 ida_get_new_above free idr ffff88021e8a2290 MCE: In-kernel MCE decoding enabled. ida_get_new_above free idr ffff88021e8a7938 ida_get_new_above free idr ffff88021e897da8 Booting Node 0, Processors #1 smpboot cpu 1: start_ip = 9d000 Switch to broadcast mode on CPU1 ida_get_new_above free idr ffff88021e8b0290 #2 smpboot cpu 2: start_ip = 9d000 Switch to broadcast mode on CPU2 ida_get_new_above free idr ffff88021e8b9938 #3 Ok. smpboot cpu 3: start_ip = 9d000 Brought up 4 CPUs Total of 4 processors activated (25687.09 BogoMIPS). Switch to broadcast mode on CPU3 ida_get_new_above free idr ffff88021e8b9938 ida_get_new_above free idr ffff88021e8b9938 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 devtmpfs: initialized ida_get_new_above free idr ffff88021e833700 ida_get_new_above free idr ffff88021e833938 ida_get_new_above free idr ffff88021e833b70 ida_get_new_above free idr ffff88021e833da8 ida_get_new_above free idr ffff88021e830058 ida_get_new_above free idr ffff88021e830290 ida_get_new_above free idr ffff88021e8304c8 ida_get_new_above free idr ffff88021e830700 ida_get_new_above free idr ffff88021e830938 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e830da8 ida_get_new_above free idr ffff88021e8a24c8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 NET: Registered protocol family 16 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 node 0 link 0: io port [1000, ffffff] TOM: 00000000e0000000 aka 3584M Fam 10h mmconf [e0000000, efffffff] node 0 link 0: mmio [a0000, bffff] node 0 link 0: mmio [e0000000, efffffff] ==> none node 0 link 0: mmio [f0000000, fbcfffff] node 0 link 0: mmio [fbd00000, fbefffff] node 0 link 0: mmio [fbf00000, ffefffff] TOM2: 0000000220000000 aka 8704M bus: [00, 07] on node 0 link 0 bus: 00 index 0 [io 0x0000-0xffff] bus: 00 index 1 [mem 0x000a0000-0x000bffff] bus: 00 index 2 [mem 0xf0000000-0xffffffff] bus: 00 index 3 [mem 0x220000000-0xfcffffffff] Extended Config Space enabled on 1 nodes ida_get_new_above free idr ffff88021e944da8 ACPI: bus type pci registered PCI: Using configuration type 1 for base access PCI: Using configuration type 1 for extended access bio: create slab <bio-0> at 0 ida_get_new_above free idr ffff88021e944da8 ACPI: Added _OSI(Module Device) ACPI: Added _OSI(Processor Device) ACPI: Added _OSI(3.0 _SCP Extensions) ACPI: Added _OSI(Processor Aggregator Device) ida_get_new_above free idr ffff88021e944da8 ACPI: EC: Look up EC in DSDT ACPI: Executed 3 blocks of module-level executable AML code ACPI: Interpreter enabled ACPI: (supports S0 S5) ACPI: Using IOAPIC for interrupt routing ida_get_new_above free idr ffff88021e944da8 PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] pci_root PNP0A03:00: host bridge window [io 0x0d00-0xffff] pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000dffff] pci_root PNP0A03:00: host bridge window [mem 0xdff00000-0xdfffffff] pci_root PNP0A03:00: host bridge window [mem 0xf0000000-0xfebfffff] pci 0000:00:00.0: [1022:9600] type 0 class 0x000600 pci 0000:00:01.0: [1022:9602] type 1 class 0x000604 pci 0000:00:06.0: [1022:9606] type 1 class 0x000604 pci 0000:00:06.0: PME# supported from D0 D3hot D3cold pci 0000:00:06.0: PME# disabled pci 0000:00:11.0: [1002:4391] type 0 class 0x000106 pci 0000:00:11.0: reg 10: [io 0xc000-0xc007] pci 0000:00:11.0: reg 14: [io 0xb000-0xb003] pci 0000:00:11.0: reg 18: [io 0xa000-0xa007] pci 0000:00:11.0: reg 1c: [io 0x9000-0x9003] pci 0000:00:11.0: reg 20: [io 0x8000-0x800f] pci 0000:00:11.0: reg 24: [mem 0xfbcffc00-0xfbcfffff] pci 0000:00:12.0: [1002:4397] type 0 class 0x000c03 pci 0000:00:12.0: reg 10: [mem 0xfbcfd000-0xfbcfdfff] pci 0000:00:12.1: [1002:4398] type 0 class 0x000c03 pci 0000:00:12.1: reg 10: [mem 0xfbcfe000-0xfbcfefff] pci 0000:00:12.2: [1002:4396] type 0 class 0x000c03 pci 0000:00:12.2: reg 10: [mem 0xfbcff800-0xfbcff8ff] pci 0000:00:12.2: supports D1 D2 pci 0000:00:12.2: PME# supported from D0 D1 D2 D3hot pci 0000:00:12.2: PME# disabled pci 0000:00:13.0: [1002:4397] type 0 class 0x000c03 pci 0000:00:13.0: reg 10: [mem 0xfbcfb000-0xfbcfbfff] pci 0000:00:13.1: [1002:4398] type 0 class 0x000c03 pci 0000:00:13.1: reg 10: [mem 0xfbcfc000-0xfbcfcfff] pci 0000:00:13.2: [1002:4396] type 0 class 0x000c03 pci 0000:00:13.2: reg 10: [mem 0xfbcff400-0xfbcff4ff] pci 0000:00:13.2: supports D1 D2 pci 0000:00:13.2: PME# supported from D0 D1 D2 D3hot pci 0000:00:13.2: PME# disabled pci 0000:00:14.0: [1002:4385] type 0 class 0x000c05 pci 0000:00:14.1: [1002:439c] type 0 class 0x000101 pci 0000:00:14.1: reg 10: [io 0x0000-0x0007] pci 0000:00:14.1: reg 14: [io 0x0000-0x0003] pci 0000:00:14.1: reg 18: [io 0x0000-0x0007] pci 0000:00:14.1: reg 1c: [io 0x0000-0x0003] pci 0000:00:14.1: reg 20: [io 0xff00-0xff0f] pci 0000:00:14.3: [1002:439d] type 0 class 0x000601 pci 0000:00:14.4: [1002:4384] type 1 class 0x000604 pci 0000:00:14.5: [1002:4399] type 0 class 0x000c03 pci 0000:00:14.5: reg 10: [mem 0xfbcfa000-0xfbcfafff] pci 0000:00:18.0: [1022:1200] type 0 class 0x000600 pci 0000:00:18.1: [1022:1201] type 0 class 0x000600 pci 0000:00:18.2: [1022:1202] type 0 class 0x000600 pci 0000:00:18.3: [1022:1203] type 0 class 0x000600 pci 0000:00:18.4: [1022:1204] type 0 class 0x000600 pci 0000:01:05.0: [1002:9614] type 0 class 0x000300 pci 0000:01:05.0: reg 10: [mem 0xf0000000-0xf7ffffff pref] pci 0000:01:05.0: reg 14: [io 0xd000-0xd0ff] pci 0000:01:05.0: reg 18: [mem 0xfbee0000-0xfbeeffff] pci 0000:01:05.0: reg 24: [mem 0xfbd00000-0xfbdfffff] pci 0000:01:05.0: supports D1 D2 pci 0000:01:05.1: [1002:960f] type 0 class 0x000403 pci 0000:01:05.1: reg 10: [mem 0xfbefc000-0xfbefffff] pci 0000:01:05.1: supports D1 D2 pci 0000:00:01.0: PCI bridge to [bus 01-01] pci 0000:00:01.0: bridge window [io 0xd000-0xdfff] pci 0000:00:01.0: bridge window [mem 0xfbd00000-0xfbefffff] pci 0000:00:01.0: bridge window [mem 0xf0000000-0xf7ffffff 64bit pref] pci 0000:02:00.0: [1969:1026] type 0 class 0x000200 pci 0000:02:00.0: reg 10: [mem 0xfbfc0000-0xfbffffff 64bit] pci 0000:02:00.0: reg 18: [io 0xec00-0xec7f] pci 0000:02:00.0: PME# supported from D3hot D3cold pci 0000:02:00.0: PME# disabled pci 0000:00:06.0: PCI bridge to [bus 02-02] pci 0000:00:06.0: bridge window [io 0xe000-0xefff] pci 0000:00:06.0: bridge window [mem 0xfbf00000-0xfbffffff] pci 0000:00:14.4: PCI bridge to [bus 03-03] (subtractive decode) pci 0000:00:14.4: bridge window [io 0x0000-0x0cf7] (subtractive decode) pci 0000:00:14.4: bridge window [io 0x0d00-0xffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0x000d0000-0x000dffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0xdff00000-0xdfffffff] (subtractive decode) pci 0000:00:14.4: bridge window [mem 0xf0000000-0xfebfffff] (subtractive decode) pci_bus 0000:00: on NUMA node 0 ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCE6._PRT] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0PC._PRT] pci0000:00: Unable to request _OSC control (_OSC support mask: 0x19) ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea87700 ida_get_new_above free idr ffff88021ea87938 ida_get_new_above free idr ffff88021ea87b70 ida_get_new_above free idr ffff88021ea87da8 ida_get_new_above free idr ffff88021e944058 ida_get_new_above free idr ffff88021e944290 ida_get_new_above free idr ffff88021e9444c8 ida_get_new_above free idr ffff88021e944700 ida_get_new_above free idr ffff88021e944938 ida_get_new_above free idr ffff88021e944b70 ida_get_new_above free idr ffff88021e944da8 ACPI: PCI Interrupt Link [LNKA] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKB] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKC] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKD] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKE] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKF] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKG] (IRQs 4 7 10 11 12 14 15) *0, disabled. ACPI: PCI Interrupt Link [LNKH] (IRQs 4 7 10 11 12 14 15) *0, disabled. ida_get_new_above free idr ffff88021e944da8 SCSI subsystem initialized libata version 3.00 loaded. usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 Advanced Linux Sound Architecture Driver Version 1.0.24. PCI: Using ACPI for IRQ routing PCI: pci_cache_line_size set to 64 bytes reserve RAM buffer: 000000000009fc00 - 000000000009ffff reserve RAM buffer: 00000000dfe90000 - 00000000dfffffff ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0 hpet0: 4 comparators, 32-bit 14.318180 MHz counter Switching to clocksource hpet ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 pnp: PnP ACPI init ACPI: bus type pnp registered pnp 00:00: [bus 00-ff] pnp 00:00: [io 0x0cf8-0x0cff] pnp 00:00: [io 0x0000-0x0cf7 window] pnp 00:00: [io 0x0d00-0xffff window] pnp 00:00: [mem 0x000a0000-0x000bffff window] pnp 00:00: [mem 0x000d0000-0x000dffff window] pnp 00:00: [mem 0xdff00000-0xdfffffff window] pnp 00:00: [mem 0xf0000000-0xfebfffff window] pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 (active) pnp 00:01: [mem 0x00000000-0xffffffffffffffff disabled] pnp 00:01: [mem 0x00000000-0xffffffffffffffff disabled] system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:02: [dma 4] pnp 00:02: [io 0x0000-0x000f] pnp 00:02: [io 0x0081-0x0083] pnp 00:02: [io 0x0087] pnp 00:02: [io 0x0089-0x008b] pnp 00:02: [io 0x008f] pnp 00:02: [io 0x00c0-0x00df] pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) pnp 00:03: [io 0x0070-0x0071] pnp 00:03: [irq 8] pnp 00:03: Plug and Play ACPI device, IDs PNP0b00 (active) pnp 00:04: [io 0x0061] pnp 00:04: Plug and Play ACPI device, IDs PNP0800 (active) pnp 00:05: [io 0x00f0-0x00ff] pnp 00:05: [irq 13] pnp 00:05: Plug and Play ACPI device, IDs PNP0c04 (active) pnp 00:06: [mem 0xfed00000-0xfed003ff] pnp 00:06: Plug and Play ACPI device, IDs PNP0103 (active) pnp 00:07: [io 0x0060] pnp 00:07: [io 0x0064] pnp 00:07: [mem 0xfec00000-0xfec00fff] pnp 00:07: [mem 0xfee00000-0xfee00fff] system 00:07: [mem 0xfec00000-0xfec00fff] could not be reserved system 00:07: [mem 0xfee00000-0xfee00fff] has been reserved system 00:07: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:08: [io 0x0010-0x001f] pnp 00:08: [io 0x0022-0x003f] pnp 00:08: [io 0x0062-0x0063] pnp 00:08: [io 0x0065-0x006f] pnp 00:08: [io 0x0072-0x007f] pnp 00:08: [io 0x0080] pnp 00:08: [io 0x0084-0x0086] pnp 00:08: [io 0x0088] pnp 00:08: [io 0x008c-0x008e] pnp 00:08: [io 0x0090-0x009f] pnp 00:08: [io 0x00a2-0x00bf] pnp 00:08: [io 0x00b1] pnp 00:08: [io 0x00e0-0x00ef] pnp 00:08: [io 0x04d0-0x04d1] pnp 00:08: [io 0x040b] pnp 00:08: [io 0x04d6] pnp 00:08: [io 0x0c00-0x0c01] pnp 00:08: [io 0x0c14] pnp 00:08: [io 0x0c50-0x0c51] pnp 00:08: [io 0x0c52] pnp 00:08: [io 0x0c6c] pnp 00:08: [io 0x0c6f] pnp 00:08: [io 0x0cd0-0x0cd1] pnp 00:08: [io 0x0cd2-0x0cd3] pnp 00:08: [io 0x0cd4-0x0cd5] pnp 00:08: [io 0x0cd6-0x0cd7] pnp 00:08: [io 0x0cd8-0x0cdf] pnp 00:08: [io 0x0b00-0x0b3f] pnp 00:08: [io 0x0800-0x089f] pnp 00:08: [io 0x0000-0xffffffffffffffff disabled] pnp 00:08: [io 0x0b00-0x0b0f] pnp 00:08: [io 0x0b20-0x0b3f] pnp 00:08: [io 0x0900-0x090f] pnp 00:08: [io 0x0910-0x091f] pnp 00:08: [io 0xfe00-0xfefe] pnp 00:08: [io 0x0060] pnp 00:08: [io 0x0064] pnp 00:08: [mem 0xdff00000-0xdfffffff] pnp 00:08: [mem 0xffb80000-0xffbfffff] pnp 00:08: [mem 0xfec10000-0xfec1001f] system 00:08: [io 0x04d0-0x04d1] has been reserved system 00:08: [io 0x040b] has been reserved system 00:08: [io 0x04d6] has been reserved system 00:08: [io 0x0c00-0x0c01] has been reserved system 00:08: [io 0x0c14] has been reserved system 00:08: [io 0x0c50-0x0c51] has been reserved system 00:08: [io 0x0c52] has been reserved system 00:08: [io 0x0c6c] has been reserved system 00:08: [io 0x0c6f] has been reserved system 00:08: [io 0x0cd0-0x0cd1] has been reserved system 00:08: [io 0x0cd2-0x0cd3] has been reserved system 00:08: [io 0x0cd4-0x0cd5] has been reserved system 00:08: [io 0x0cd6-0x0cd7] has been reserved system 00:08: [io 0x0cd8-0x0cdf] has been reserved system 00:08: [io 0x0b00-0x0b3f] has been reserved system 00:08: [io 0x0800-0x089f] has been reserved system 00:08: [io 0x0b00-0x0b0f] has been reserved system 00:08: [io 0x0b20-0x0b3f] has been reserved system 00:08: [io 0x0900-0x090f] has been reserved system 00:08: [io 0x0910-0x091f] has been reserved system 00:08: [io 0xfe00-0xfefe] has been reserved system 00:08: [mem 0xdff00000-0xdfffffff] has been reserved system 00:08: [mem 0xffb80000-0xffbfffff] has been reserved system 00:08: [mem 0xfec10000-0xfec1001f] has been reserved system 00:08: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:09: [io 0x0000-0xffffffffffffffff disabled] pnp 00:09: [io 0x0230-0x023f] pnp 00:09: [io 0x0290-0x029f] pnp 00:09: [io 0x0f40-0x0f4f] pnp 00:09: [io 0x0a30-0x0a3f] system 00:09: [io 0x0230-0x023f] has been reserved system 00:09: [io 0x0290-0x029f] has been reserved system 00:09: [io 0x0f40-0x0f4f] has been reserved system 00:09: [io 0x0a30-0x0a3f] has been reserved system 00:09: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:0a: [mem 0xe0000000-0xefffffff] system 00:0a: [mem 0xe0000000-0xefffffff] has been reserved system 00:0a: Plug and Play ACPI device, IDs PNP0c02 (active) pnp 00:0b: [mem 0x00000000-0x0009ffff] pnp 00:0b: [mem 0x000c0000-0x000cffff] pnp 00:0b: [mem 0x000e0000-0x000fffff] pnp 00:0b: [mem 0x00100000-0xdfefffff] pnp 00:0b: [mem 0xfec00000-0xffffffff] system 00:0b: [mem 0x00000000-0x0009ffff] could not be reserved system 00:0b: [mem 0x000c0000-0x000cffff] could not be reserved system 00:0b: [mem 0x000e0000-0x000fffff] could not be reserved system 00:0b: [mem 0x00100000-0xdfefffff] could not be reserved system 00:0b: [mem 0xfec00000-0xffffffff] could not be reserved system 00:0b: Plug and Play ACPI device, IDs PNP0c01 (active) pnp: PnP ACPI: found 12 devices ACPI: ACPI bus type pnp unregistered ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea87700 ida_get_new_above free idr ffff88021ea87938 ida_get_new_above free idr ffff88021ea87b70 ida_get_new_above free idr ffff88021ea87da8 ida_get_new_above free idr ffff88021e944058 ida_get_new_above free idr ffff88021e944290 ida_get_new_above free idr ffff88021e9444c8 ida_get_new_above free idr ffff88021e944700 ida_get_new_above free idr ffff88021e944938 ida_get_new_above free idr ffff88021e944b70 ida_get_new_above free idr ffff88021e944da8 PCI: max bus depth: 1 pci_try_num: 2 pci 0000:00:01.0: PCI bridge to [bus 01-01] pci 0000:00:01.0: bridge window [io 0xd000-0xdfff] pci 0000:00:01.0: bridge window [mem 0xfbd00000-0xfbefffff] pci 0000:00:01.0: bridge window [mem 0xf0000000-0xf7ffffff 64bit pref] pci 0000:00:06.0: PCI bridge to [bus 02-02] pci 0000:00:06.0: bridge window [io 0xe000-0xefff] pci 0000:00:06.0: bridge window [mem 0xfbf00000-0xfbffffff] pci 0000:00:14.4: PCI bridge to [bus 03-03] pci 0000:00:06.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 pci 0000:00:06.0: setting latency timer to 64 pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff] pci_bus 0000:00: resource 7 [mem 0x000d0000-0x000dffff] pci_bus 0000:00: resource 8 [mem 0xdff00000-0xdfffffff] pci_bus 0000:00: resource 9 [mem 0xf0000000-0xfebfffff] pci_bus 0000:01: resource 0 [io 0xd000-0xdfff] pci_bus 0000:01: resource 1 [mem 0xfbd00000-0xfbefffff] pci_bus 0000:01: resource 2 [mem 0xf0000000-0xf7ffffff 64bit pref] pci_bus 0000:02: resource 0 [io 0xe000-0xefff] pci_bus 0000:02: resource 1 [mem 0xfbf00000-0xfbffffff] pci_bus 0000:03: resource 4 [io 0x0000-0x0cf7] pci_bus 0000:03: resource 5 [io 0x0d00-0xffff] pci_bus 0000:03: resource 6 [mem 0x000a0000-0x000bffff] pci_bus 0000:03: resource 7 [mem 0x000d0000-0x000dffff] pci_bus 0000:03: resource 8 [mem 0xdff00000-0xdfffffff] pci_bus 0000:03: resource 9 [mem 0xf0000000-0xfebfffff] NET: Registered protocol family 2 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 IP route cache hash table entries: 262144 (order: 9, 2097152 bytes) ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 TCP established hash table entries: 262144 (order: 10, 4194304 bytes) TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) TCP: Hash tables configured (established 262144 bind 65536) TCP reno registered UDP hash table entries: 4096 (order: 5, 131072 bytes) UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes) ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 ida_get_new_above free idr ffff88021e944da8 NET: Registered protocol family 1 ida_get_new_above free idr ffff88021e944da8 pci 0000:00:01.0: MSI quirk detected; subordinate MSI disabled pci 0000:01:05.0: Boot video device PCI: CLS 64 bytes, default 64 PCI-DMA: Using software bounce buffering for IO (SWIOTLB) Placing 64MB software IO TLB between ffff8800dbe8e000 - ffff8800dfe8e000 software IO TLB at phys 0xdbe8e000 - 0xdfe8e000 kvm: Nested Virtualization enabled kvm: Nested Paging enabled ida_get_new_above free idr ffff88021e8b04c8 perf: AMD IBS detected (0x0000001f) ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 SGI XFS with security attributes, large block/inode numbers, no debug enabled ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 msgmni has been set to 15979 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253) io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021ea874c8 input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input0 ACPI: Power Button [PWRB] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input1 ACPI: Power Button [PWRF] ACPI: processor limited to max C-state 1 ida_get_new_above free idr ffff88021e8b9058 ida_get_new_above free idr ffff88021e8b9058 [drm] Initialized drm 1.1.0 20060810 [drm] radeon defaulting to kernel modesetting. [drm] radeon kernel modesetting enabled. radeon 0000:01:05.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 radeon 0000:01:05.0: setting latency timer to 64 drm_get_pci_dev 348 drm_get_pci_dev 354 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 [drm] initializing kernel modesetting (RS780 0x1002:0x9614 0x1043:0x834D). [drm] register mmio base: 0xFBEE0000 [drm] register mmio size: 65536 ATOM BIOS: 113 radeon 0000:01:05.0: VRAM: 128M 0x00000000C0000000 - 0x00000000C7FFFFFF (128M used) radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF [drm] Detected VRAM RAM=128M, BAR=128M [drm] RAM width 32bits DDR [TTM] Zone kernel: Available graphics memory: 4090750 kiB. [TTM] Zone dma32: Available graphics memory: 2097152 kiB. [TTM] Initializing pool allocator. [drm] radeon: 128M of VRAM memory ready [drm] radeon: 512M of GTT memory ready. [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). [drm] Driver supports precise vblank timestamp query. ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 ida_get_new_above free idr ffff880216f7b058 [drm] radeon: irq initialized. [drm] GART: num cpu pages 131072, num gpu pages 131072 [drm] Loading RS780 Microcode [drm] PCIE GART of 512M enabled (table at 0x00000000C0040000). radeon 0000:01:05.0: WB enabled [drm] ring test succeeded in 0 usecs [drm] radeon: ib pool ready. [drm] ib test succeeded in 0 usecs [drm] allocating idr ffff88021eba1a70 -1330597712 idr 1 [drm] allocating idr ffff8802167b5998 -1330597712 idr 2 [drm] allocating idr ffff8802167b5900 -1330597712 idr 3 [drm] allocating idr ffff8802167b5868 -1330597712 idr 4 [drm] allocating idr ffff8802167b57d0 -1330597712 idr 5 [drm] allocating idr ffff8802167b5738 -1330597712 idr 6 [drm] allocating idr ffff8802167b56a0 -1330597712 idr 7 [drm] allocating idr ffff8802167b5608 -1330597712 idr 8 [drm] allocating idr ffff8802167b5570 -1330597712 idr 9 [drm] allocating idr ffff88021eb98018 -858993460 idr 10 [drm] allocating idr ffff8802167c4018 -858993460 idr 11 [drm] allocating idr ffff88021eb9f778 -522133280 idr 12 [drm] allocating idr ffff8802167e6dd8 -1061109568 idr 13 [drm] allocating idr ffff88021eb9f560 -522133280 idr 14 [drm] allocating idr ffff8802167e65c0 -1061109568 idr 15 [drm] Radeon Display Connectors [drm] Connector 0: [drm] VGA [drm] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c [drm] Encoders: [drm] CRT1: INTERNAL_KLDSCP_DAC1 [drm] Connector 1: [drm] DVI-D [drm] HPD3 [drm] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c [drm] Encoders: [drm] DFP3: INTERNAL_KLDSCP_LVTMA [drm] radeon: power management initialized [drm] allocating idr ffff8802167b9818 -1145324613 idr 16 [drm] allocating idr ffff88021e8b4198 -555819298 idr 17 [drm] allocating idr ffff88021e8b4080 -555819298 idr 18 [drm] allocating idr ffff8802167c7eb8 -555819298 idr 19 [drm] allocating idr ffff8802167c7da0 -555819298 idr 20 [drm] allocating idr ffff8802167c7c88 -555819298 idr 21 [drm] allocating idr ffff8802167c7b70 -555819298 idr 22 [drm] allocating idr ffff8802167c7a58 -555819298 idr 23 [drm] allocating idr ffff8802167c7940 -555819298 idr 24 [drm] allocating idr ffff8802167c7828 -555819298 idr 25 [drm] allocating idr ffff8802167c7710 -555819298 idr 26 [drm] allocating idr ffff8802167c75f8 -555819298 idr 27 [drm] allocating idr ffff8802167c74e0 -555819298 idr 28 [drm] allocating idr ffff8802167c73c8 -555819298 idr 29 [drm] allocating idr ffff8802167c72b0 -555819298 idr 30 [drm] allocating idr ffff8802167c7198 -555819298 idr 31 [drm] remove idr ffff8802167c7da0 0 idr 20 idr_remove free idr ffff8802167b44c8 [drm] allocating idr ffff8802167c7da0 -555819298 idr 20 [drm] allocating idr ffff88021eb9f1e8 -67372037 idr 32 [drm] fb mappable at 0xF0142000 [drm] vram apper at 0xF0000000 [drm] size 7299072 [drm] fb depth is 24 [drm] pitch is 6912 fbcon: radeondrmfb (fb0) is primary device [drm] allocating idr ffff8802167c7080 -555819298 idr 33 [drm] remove idr ffff8802167c7080 -555819298 idr 33 idr_remove free idr ffff8802167b44c8 Console: switching to colour frame buffer device 131x105 fb0: radeondrmfb frame buffer device drm: registered panic notifier [drm] Initialized radeon 2.12.0 20080528 for 0000:01:05.0 on minor 0 loop: module loaded ida_get_new_above free idr ffff8802167b44c8 ahci 0000:00:11.0: version 3.0 ahci 0000:00:11.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22 ahci 0000:00:11.0: AHCI 0001.0100 32 slots 6 ports 3 Gbps 0x3f impl SATA mode ahci 0000:00:11.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167dada8 ida_get_new_above free idr ffff8802167d9058 ida_get_new_above free idr ffff8802167d9290 ida_get_new_above free idr ffff8802167d94c8 ida_get_new_above free idr ffff8802167d9700 ida_get_new_above free idr ffff8802167d9938 ida_get_new_above free idr ffff8802167d9b70 ida_get_new_above free idr ffff8802167d9da8 ida_get_new_above free idr ffff8802167b8058 ida_get_new_above free idr ffff8802167b8290 ida_get_new_above free idr ffff8802167b84c8 ida_get_new_above free idr ffff8802167b44c8 ------------[ cut here ]------------ WARNING: at mm/slab.c:1931 check_poison_obj+0xcc/0x220() Hardware name: System Product Name Slab corruption: files_cache start=ffff88021eb8e600, len=704 Pid: 5, comm: kworker/u:0 Not tainted 3.2.0-rc4-00089-g621fc1e-dirty #137 Call Trace: [<ffffffff81060f0a>] warn_slowpath_common+0x6a/0xa0 [<ffffffff81060fa1>] warn_slowpath_fmt+0x41/0x60 [<ffffffff810db30c>] check_poison_obj+0xcc/0x220 [<ffffffff810fefee>] ? dup_fd+0x2e/0x300 [<ffffffff810db4e5>] cache_alloc_debugcheck_after.isra.59+0x85/0x1c0 [<ffffffff810fefee>] ? dup_fd+0x2e/0x300 [<ffffffff810db904>] kmem_cache_alloc+0x64/0xc0 [<ffffffff810fefee>] dup_fd+0x2e/0x300 [<ffffffff8105fb91>] copy_process+0x991/0x10c0 [<ffffffff810603ef>] do_fork+0xef/0x240 [<ffffffff810828a5>] ? sched_clock_local+0x25/0xa0 [<ffffffff8103aeac>] kernel_thread+0x6c/0x80 [<ffffffff81075640>] ? proc_cap_handler+0x180/0x180 [<ffffffff8148ee70>] ? gs_change+0xb/0xb [<ffffffff810757c8>] __call_usermodehelper+0x28/0x80 [<ffffffff81076456>] process_one_work+0x116/0x3c0 [<ffffffff810757a0>] ? call_usermodehelper_freeinfo+0x40/0x40 [<ffffffff810774fe>] worker_thread+0x13e/0x2e0 [<ffffffff810773c0>] ? flush_workqueue_prep_cwqs+0x200/0x200 [<ffffffff8107c467>] kthread+0x87/0xa0 [<ffffffff8148ee74>] kernel_thread_helper+0x4/0x10 [<ffffffff8107c3e0>] ? kthread_flush_work_fn+0x20/0x20 [<ffffffff8148ee70>] ? gs_change+0xb/0xb ---[ end trace b6eea21c7bdaf786 ]--- Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Last user: [<ffffffff810fedb8>](free_fdtable_rcu+0xd8/0x120) 200: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b ....kkkkkkkkkkkk Prev obj: start=ffff88021eb8e328, len=704 Redzone: 0xd84156c5635688c0/0xd84156c5635688c0. Last user: [<ffffffff810fefee>](dup_fd+0x2e/0x300) 000: 00 00 00 00 5a 5a 5a 5a 38 e3 b8 1e 02 88 ff ff ....ZZZZ8....... 010: 40 00 00 00 5a 5a 5a 5a c0 e3 b8 1e 02 88 ff ff @...ZZZZ........ Next obj: start=ffff88021eb8e8d8, len=704 Redzone: 0x9f911029d74e35b/0x9f911029d74e35b. Last user: [<ffffffff810fedb8>](free_fdtable_rcu+0xd8/0x120) 000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk 010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk scsi0 : ahci scsi1 : ahci scsi2 : ahci scsi3 : ahci scsi4 : ahci scsi5 : ahci ata1: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffd00 irq 22 ata2: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffd80 irq 22 ata3: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffe00 irq 22 ata4: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcffe80 irq 22 ata5: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcfff00 irq 22 ata6: SATA max UDMA/133 abar m1024@0xfbcffc00 port 0xfbcfff80 irq 22 ida_get_new_above free idr ffff88021e8a2700 ida_get_new_above free idr ffff88021e8a2938 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2da8 ida_get_new_above free idr ffff88021e897058 ida_get_new_above free idr ffff88021e897290 pata_atiixp 0000:00:14.1: PCI INT A -> GSI 16 (level, low) -> IRQ 16 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 scsi6 : pata_atiixp scsi7 : pata_atiixp ata7: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0xff00 irq 14 ata8: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xff08 irq 15 ida_get_new_above free idr ffff88021e8974c8 ida_get_new_above free idr ffff88021e897700 ATL1E 0000:02:00.0: BAR 0: set to [mem 0xfbfc0000-0xfbffffff 64bit] (PCI address [0xfbfc0000-0xfbffffff]) ATL1E 0000:02:00.0: BAR 2: set to [io 0xec00-0xec7f] (PCI address [0xec00-0xec7f]) ATL1E 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ATL1E 0000:02:00.0: setting latency timer to 64 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver ehci_hcd 0000:00:12.2: PCI INT B -> GSI 17 (level, low) -> IRQ 17 ehci_hcd 0000:00:12.2: EHCI Host Controller ehci_hcd 0000:00:12.2: new USB bus registered, assigned bus number 1 ehci_hcd 0000:00:12.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround QUIRK: Enable AMD PLL fix ehci_hcd 0000:00:12.2: applying AMD SB600/SB700 USB freeze workaround ehci_hcd 0000:00:12.2: debug port 1 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ehci_hcd 0000:00:12.2: irq 17, io mem 0xfbcff800 ehci_hcd 0000:00:12.2: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 6 ports detected ehci_hcd 0000:00:13.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19 ehci_hcd 0000:00:13.2: EHCI Host Controller ehci_hcd 0000:00:13.2: new USB bus registered, assigned bus number 2 ehci_hcd 0000:00:13.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround ehci_hcd 0000:00:13.2: applying AMD SB600/SB700 USB freeze workaround ehci_hcd 0000:00:13.2: debug port 1 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ehci_hcd 0000:00:13.2: irq 19, io mem 0xfbcff400 ehci_hcd 0000:00:13.2: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 6 ports detected ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver ohci_hcd 0000:00:12.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 ohci_hcd 0000:00:12.0: OHCI Host Controller ohci_hcd 0000:00:12.0: new USB bus registered, assigned bus number 3 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ida_get_new_above free idr ffff88021e8a2b70 ohci_hcd 0000:00:12.0: irq 16, io mem 0xfbcfd000 hub 3-0:1.0: USB hub found hub 3-0:1.0: 3 ports detected ida_get_new_above free idr ffff880216004290 ida_get_new_above free idr ffff8802160044c8 ida_get_new_above free idr ffff880216004700 ida_get_new_above free idr ffff880216004938 ida_get_new_above free idr ffff880216004b70 ida_get_new_above free idr ffff880216004da8 ida_get_new_above free idr ffff88021ea87058 ida_get_new_above free idr ffff88021ea87290 ida_get_new_above free idr ffff88021ea874c8 ida_get_new_above free idr ffff88021e8a2700 ida_get_new_above free idr ffff88021e8a2938 ida_get_new_above free idr ffff88021e8a2b70 ohci_hcd 0000:00:12.1: PCI INT A -> GSI 16 (level, low) -> IRQ 16 ohci_hcd 0000:00:12.1: OHCI Host Controller ohci_hcd 0000:00:12.1: new USB bus registered, assigned bus number 4 ida_get_new_above free idr ffff88021e8a2b70 ohci_hcd 0000:00:12.1: irq 16, io mem 0xfbcfe000 ida_get_new_above free idr ffff88021e8b9b70 hub 4-0:1.0: USB hub found hub 4-0:1.0: 3 ports detected ohci_hcd 0000:00:13.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:13.0: OHCI Host Controller ohci_hcd 0000:00:13.0: new USB bus registered, assigned bus number 5 ida_get_new_above free idr ffff88021e8b9b70 ohci_hcd 0000:00:13.0: irq 18, io mem 0xfbcfb000 ata7.00: ATAPI: HL-DT-STDVD-RAM GH22NP20, 1.03, max UDMA/66 ida_get_new_above free idr ffff88021e8a7b70 ata7.00: configured for UDMA/66 hub 5-0:1.0: USB hub found hub 5-0:1.0: 3 ports detected ohci_hcd 0000:00:13.1: PCI INT A -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:13.1: OHCI Host Controller ohci_hcd 0000:00:13.1: new USB bus registered, assigned bus number 6 ida_get_new_above free idr ffff88021e8b9b70 ohci_hcd 0000:00:13.1: irq 18, io mem 0xfbcfc000 hub 6-0:1.0: USB hub found hub 6-0:1.0: 3 ports detected ohci_hcd 0000:00:14.5: PCI INT C -> GSI 18 (level, low) -> IRQ 18 ohci_hcd 0000:00:14.5: OHCI Host Controller ohci_hcd 0000:00:14.5: new USB bus registered, assigned bus number 7 ida_get_new_above free idr ffff88021e8b9b70 ohci_hcd 0000:00:14.5: irq 18, io mem 0xfbcfa000 ata2: SATA link down (SStatus 0 SControl 300) ata5: SATA link down (SStatus 0 SControl 300) ata6: SATA link down (SStatus 0 SControl 300) ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata4: SATA link down (SStatus 0 SControl 300) ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata3.00: ATA-8: OCZ-VERTEX, 1.6, max UDMA/133 ata3.00: 62533296 sectors, multi 1: LBA48 NCQ (depth 31/32), AA ata3.00: configured for UDMA/133 hub 7-0:1.0: USB hub found hub 7-0:1.0: 2 ports detected usbcore: registered new interface driver usblp Initializing USB Mass Storage driver... usbcore: registered new interface driver usb-storage USB Mass Storage support registered. ida_get_new_above free idr ffff88021e8b9b70 usbcore: registered new interface driver usbserial USB Serial support registered for generic ata1.00: ATA-8: ST1500DL003-9VT16L, CC32, max UDMA/133 ata1.00: 2930277168 sectors, multi 16: LBA48 NCQ (depth 31/32) ata1.00: configured for UDMA/133 ida_get_new_above free idr ffff88021e9354c8 scsi 0:0:0:0: Direct-Access ATA ST1500DL003-9VT1 CC32 PQ: 0 ANSI: 5 ida_get_new_above free idr ffff8802160044c8 ida_get_new_above free idr ffff88021e897b70 sd 0:0:0:0: [sda] 2930277168 512-byte logical blocks: (1.50 TB/1.36 TiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA sd 0:0:0:0: Attached scsi generic sg0 type 0 ida_get_new_above free idr ffff88021e9354c8 scsi 2:0:0:0: Direct-Access ATA OCZ-VERTEX 1.6 PQ: 0 ANSI: 5 ida_get_new_above free idr ffff880216004058 sd 2:0:0:0: [sdb] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB) sd 2:0:0:0: [sdb] Write Protect is off sd 2:0:0:0: [sdb] Mode Sense: 00 3a 00 00 sd 2:0:0:0: Attached scsi generic sg1 type 0 sd 2:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA ida_get_new_above free idr ffff88021e935058 scsi 6:0:0:0: CD-ROM HL-DT-ST DVD-RAM GH22NP20 1.03 PQ: 0 ANSI: 5 sdb: sdb1 sdb2 sda: unknown partition table sd 0:0:0:0: [sda] Attached SCSI disk sd 2:0:0:0: [sdb] Attached SCSI disk sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray cdrom: Uniform CD-ROM driver Revision: 3.20 sr 6:0:0:0: Attached scsi CD-ROM sr0 ida_get_new_above free idr ffff88021e8b9da8 sr 6:0:0:0: Attached scsi generic sg2 type 5 Refined TSC clocksource calibration: 3210.827 MHz. Switching to clocksource tsc usb 4-1: new full-speed USB device number 2 using ohci_hcd usb 4-2: new full-speed USB device number 3 using ohci_hcd ida_get_new_above free idr ffff8802161c34c8 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3938 ida_get_new_above free idr ffff8802161c3b70 ida_get_new_above free idr ffff8802161c3da8 ida_get_new_above free idr ffff880216117058 ida_get_new_above free idr ffff880216117290 ida_get_new_above free idr ffff8802161174c8 ida_get_new_above free idr ffff880216117700 ida_get_new_above free idr ffff880216117938 ida_get_new_above free idr ffff880216117b70 ida_get_new_above free idr ffff88021e8b9da8 usb 4-3: new low-speed USB device number 4 using ohci_hcd usbcore: registered new interface driver usbserial_generic usbserial: USB Serial Driver core USB Serial support registered for GSM modem (1-port) usbcore: registered new interface driver option option: v0.7.2:USB Driver for GSM modems i8042: PNP: No PS/2 controller found. Probing ports directly. ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff88021e8b9da8 ida_get_new_above free idr ffff88021e8b9da8 serio: i8042 KBD port at 0x60,0x64 irq 1 serio: i8042 AUX port at 0x60,0x64 irq 12 mousedev: PS/2 mouse device common for all mice rtc_cmos 00:03: RTC can wake from S4 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff880216131da8 rtc_cmos 00:03: rtc core: registered rtc_cmos as rtc0 ida_get_new_above free idr ffff880216131da8 rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs i2c /dev entries driver ida_get_new_above free idr ffff88021626c700 ida_get_new_above free idr ffff88021626c290 EDAC MC: Ver: 2.1.0 AMD64 EDAC driver v3.4.0 EDAC amd64: DRAM ECC enabled. EDAC amd64: F10h detected (node 0). EDAC MC: DCT0 chip selects: EDAC amd64: MC: 0: 1024MB 1: 1024MB EDAC amd64: MC: 2: 1024MB 3: 1024MB EDAC amd64: MC: 4: 0MB 5: 0MB EDAC amd64: MC: 6: 0MB 7: 0MB EDAC MC: DCT1 chip selects: EDAC amd64: MC: 0: 1024MB 1: 1024MB EDAC amd64: MC: 2: 1024MB 3: 1024MB EDAC amd64: MC: 4: 0MB 5: 0MB EDAC amd64: MC: 6: 0MB 7: 0MB EDAC amd64: using x4 syndromes. EDAC amd64: MCT channel count: 2 EDAC amd64: CS0: Unbuffered DDR3 RAM EDAC amd64: CS1: Unbuffered DDR3 RAM EDAC amd64: CS2: Unbuffered DDR3 RAM EDAC amd64: CS3: Unbuffered DDR3 RAM EDAC MC0: Giving out device to 'amd64_edac' 'F10h': DEV 0000:00:18.2 EDAC PCI0: Giving out device to module 'amd64_edac' controller 'EDAC PCI controller': DEV '0000:00:18.2' (POLLED) cpuidle: using governor ladder cpuidle: using governor menu input: C-Media USB Headphone Set as /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.3/input/input2 generic-usb 0003:0D8C:000C.0001: input,hidraw0: USB HID v1.00 Device [C-Media USB Headphone Set ] on usb-0000:00:12.1-1/input3 logitech-djreceiver 0003:046D:C52B.0004: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:12.1-2/input2 input: Logitech Unifying Device. Wireless PID:101b as /devices/pci0000:00/0000:00:12.1/usb4/4-2/4-2:1.2/0003:046D:C52B.0004/input/input3 logitech-djdevice 0003:046D:C52B.0006: input,hidraw2: USB HID v1.11 Mouse [Logitech Unifying Device. Wireless PID:101b] on usb-0000:00:12.1-2:1 input: HID 046a:0011 as /devices/pci0000:00/0000:00:12.1/usb4/4-3/4-3:1.0/input/input4 generic-usb 0003:046A:0011.0005: input,hidraw3: USB HID v1.10 Keyboard [HID 046a:0011] on usb-0000:00:12.1-3/input0 usbcore: registered new interface driver usbhid usbhid: USB HID core driver ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 usbcore: registered new interface driver snd-usb-audio ALSA device list: #0: C-Media USB Headphone Set at usb-0000:00:12.1-1, full speed Netfilter messages via NETLINK v0.30. ida_get_new_above free idr ffff8802161c3700 nf_conntrack version 0.5.0 (16384 buckets, 65536 max) ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ctnetlink v0.93: registering with nfnetlink. ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ip_tables: (C) 2000-2006 Netfilter Core Team TCP cubic registered NET: Registered protocol family 17 ida_get_new_above free idr ffff8802161c3700 registered taskstats version 1 rtc_cmos 00:03: setting system clock to 2011-12-03 05:53:40 UTC (1322891620) powernow-k8: Found 1 AMD Phenom(tm) II X4 955 Processor (4 cpu cores) (version 2.20.00) powernow-k8: 0 : pstate 0 (3200 MHz) powernow-k8: 1 : pstate 1 (2500 MHz) powernow-k8: 2 : pstate 2 (2100 MHz) powernow-k8: 3 : pstate 3 (800 MHz) ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff88021e935058 ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802167b44c8 XFS (sdb2): Mounting Filesystem XFS (sdb2): Ending clean mount VFS: Mounted root (xfs filesystem) readonly on device 8:18. ida_get_new_above free idr ffff8802161c3700 devtmpfs: mounted Freeing unused kernel memory: 424k freed Write protecting the kernel read-only data: 8192k Freeing unused kernel memory: 1464k freed Freeing unused kernel memory: 392k freed ida_get_new_above free idr ffff8802167b44c8 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 ida_get_new_above free idr ffff8802161c3700 XFS (sda): Mounting Filesystem XFS (sda): Ending clean mount ATL1E 0000:02:00.0: irq 40 for MSI/MSI-X ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ida_get_new_above free idr ffff88021626c290 ATL1E 0000:02:00.0: eth0: NIC Link is Up <100 Mbps Full Duplex> ATL1E 0000:02:00.0: eth0: NIC Link is Up <100 Mbps Full Duplex> udevd[797]: starting version 171 ida_get_new_above free idr ffff88021e896058 ida_get_new_above free idr ffff88021e8b0700 Adding 2097148k swap on /var/tmp/swap/swapfile. Priority:-1 extents:2 across:2634672k ida_get_new_above free idr ffff88021e8b8058 ida_get_new_above free idr ffff88021e896290 ida_get_new_above free idr ffff88021e8b8290 ida_get_new_above free idr ffff88021e8b84c8 ida_get_new_above free idr ffff88021e8b8700 ida_get_new_above free idr ffff88021e8b8938 ida_get_new_above free idr ffff88021e8b8b70 ida_get_new_above free idr ffff88021e8b8da8 ida_get_new_above free idr ffff88021e8b0290 ida_get_new_above free idr ffff88021e8a7da8 ida_get_new_above free idr ffff88021e8a6058 ida_get_new_above free idr ffff88021e8a6290 -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 9:28 ` Markus Trippelsdorf @ 2011-12-03 12:20 ` Dave Airlie 2011-12-03 12:29 ` Markus Trippelsdorf 0 siblings, 1 reply; 26+ messages in thread From: Dave Airlie @ 2011-12-03 12:20 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Jerome Glisse, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher >> > > > > FIX idr_layer_cache: Marking all objects used >> > > > >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit >> > > > exactly the same spot again. (CCing the drm list) If I had to guess it looks like 0 is getting written back to some random page by the GPU maybe, it could be that the GPU is in some half setup state at boot or on a reboot does it happen from a cold boot or just warm boot or kexec? Jerome, might be worth checking the ordering for when bus master gets enabled or if we turn off the writeback producers before writeback is enabled. Dave. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 12:20 ` Dave Airlie @ 2011-12-03 12:29 ` Markus Trippelsdorf 2011-12-03 19:31 ` Jerome Glisse 2011-12-05 10:44 ` David Laight 0 siblings, 2 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-03 12:29 UTC (permalink / raw) To: Dave Airlie Cc: Jerome Glisse, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > >> > > > > FIX idr_layer_cache: Marking all objects used > >> > > > > >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > >> > > > exactly the same spot again. (CCing the drm list) > > If I had to guess it looks like 0 is getting written back to some > random page by the GPU maybe, it could be that the GPU is in some half > setup state at boot or on a reboot does it happen from a cold boot or > just warm boot or kexec? Only happened with kexec thus far. Cold boot seems to be fine. -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 12:29 ` Markus Trippelsdorf @ 2011-12-03 19:31 ` Jerome Glisse 2011-12-03 19:32 ` Jerome Glisse 2011-12-04 1:02 ` Markus Trippelsdorf 2011-12-05 10:44 ` David Laight 1 sibling, 2 replies; 26+ messages in thread From: Jerome Glisse @ 2011-12-03 19:31 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf <markus@trippelsdorf.de> wrote: > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: >> >> > > > > FIX idr_layer_cache: Marking all objects used >> >> > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit >> >> > > > exactly the same spot again. (CCing the drm list) >> >> If I had to guess it looks like 0 is getting written back to some >> random page by the GPU maybe, it could be that the GPU is in some half >> setup state at boot or on a reboot does it happen from a cold boot or >> just warm boot or kexec? > > Only happened with kexec thus far. Cold boot seems to be fine. > > -- > Markus Can you add radeon.no_wb=1 to your kexec kernel paramater an see if you can reproduce. Cheers, Jerome -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 19:31 ` Jerome Glisse @ 2011-12-03 19:32 ` Jerome Glisse 2011-12-04 1:02 ` Markus Trippelsdorf 1 sibling, 0 replies; 26+ messages in thread From: Jerome Glisse @ 2011-12-03 19:32 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Sat, Dec 3, 2011 at 2:31 PM, Jerome Glisse <j.glisse@gmail.com> wrote: > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > <markus@trippelsdorf.de> wrote: >> On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: >>> >> > > > > FIX idr_layer_cache: Marking all objects used >>> >> > > > >>> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit >>> >> > > > exactly the same spot again. (CCing the drm list) >>> >>> If I had to guess it looks like 0 is getting written back to some >>> random page by the GPU maybe, it could be that the GPU is in some half >>> setup state at boot or on a reboot does it happen from a cold boot or >>> just warm boot or kexec? >> >> Only happened with kexec thus far. Cold boot seems to be fine. >> >> -- >> Markus > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > you can reproduce. > > Cheers, > Jerome Also cold boot with radeon.no_wb=1 :) Cheers, Jerome -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 19:31 ` Jerome Glisse 2011-12-03 19:32 ` Jerome Glisse @ 2011-12-04 1:02 ` Markus Trippelsdorf 2011-12-04 17:32 ` Jerome Glisse 2011-12-05 17:10 ` Jerome Glisse 1 sibling, 2 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-04 1:02 UTC (permalink / raw) To: Jerome Glisse Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > <markus@trippelsdorf.de> wrote: > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > >> >> > > > > FIX idr_layer_cache: Marking all objects used > >> >> > > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > >> >> > > > exactly the same spot again. (CCing the drm list) > >> > >> If I had to guess it looks like 0 is getting written back to some > >> random page by the GPU maybe, it could be that the GPU is in some half > >> setup state at boot or on a reboot does it happen from a cold boot or > >> just warm boot or kexec? > > > > Only happened with kexec thus far. Cold boot seems to be fine. > > > > -- > > Markus > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > you can reproduce. No, I cannot reproduce the issue with radeon.no_wb=1. (I write this after 700 successful kexec iterations...) -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-04 1:02 ` Markus Trippelsdorf @ 2011-12-04 17:32 ` Jerome Glisse 2011-12-05 17:10 ` Jerome Glisse 1 sibling, 0 replies; 26+ messages in thread From: Jerome Glisse @ 2011-12-04 17:32 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Sat, Dec 3, 2011 at 8:02 PM, Markus Trippelsdorf <markus@trippelsdorf.de> wrote: > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: >> On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf >> <markus@trippelsdorf.de> wrote: >> > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: >> >> >> > > > > FIX idr_layer_cache: Marking all objects used >> >> >> > > > >> >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit >> >> >> > > > exactly the same spot again. (CCing the drm list) >> >> >> >> If I had to guess it looks like 0 is getting written back to some >> >> random page by the GPU maybe, it could be that the GPU is in some half >> >> setup state at boot or on a reboot does it happen from a cold boot or >> >> just warm boot or kexec? >> > >> > Only happened with kexec thus far. Cold boot seems to be fine. >> > >> > -- >> > Markus >> >> Can you add radeon.no_wb=1 to your kexec kernel paramater an see if >> you can reproduce. > > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this > after 700 successful kexec iterations...) > Ok so it's GPU writeback will do a patch on monday. Cheers, Jerome -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-04 1:02 ` Markus Trippelsdorf 2011-12-04 17:32 ` Jerome Glisse @ 2011-12-05 17:10 ` Jerome Glisse 2011-12-05 18:15 ` Markus Trippelsdorf 1 sibling, 1 reply; 26+ messages in thread From: Jerome Glisse @ 2011-12-05 17:10 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher [-- Attachment #1: Type: text/plain, Size: 1213 bytes --] On Sun, Dec 04, 2011 at 02:02:00AM +0100, Markus Trippelsdorf wrote: > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: > > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > > <markus@trippelsdorf.de> wrote: > > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > > >> >> > > > > FIX idr_layer_cache: Marking all objects used > > >> >> > > > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > >> >> > > > exactly the same spot again. (CCing the drm list) > > >> > > >> If I had to guess it looks like 0 is getting written back to some > > >> random page by the GPU maybe, it could be that the GPU is in some half > > >> setup state at boot or on a reboot does it happen from a cold boot or > > >> just warm boot or kexec? > > > > > > Only happened with kexec thus far. Cold boot seems to be fine. > > > > > > -- > > > Markus > > > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > > you can reproduce. > > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this > after 700 successful kexec iterations...) > > -- > Markus Can you try if attached patch fix the issue when you don't pass the radeon.no_wb=1 option ? Cheers, Jerome [-- Attachment #2: 0001-drm-radeon-disable-possible-GPU-writeback-early.patch --] [-- Type: text/plain, Size: 27869 bytes --] >From 5e3e9d9b3069837a07bea7b4997c6fca26405bce Mon Sep 17 00:00:00 2001 From: Jerome Glisse <jglisse@redhat.com> Date: Mon, 5 Dec 2011 12:02:17 -0500 Subject: [PATCH] drm/radeon: disable possible GPU writeback early Given how kexec works we need to disable any kind of GPU writeback early in GPU initialization just in case some are still active from previous setup. Signed-off-by: Jerome Glisse <jglisse@redhat.com> --- drivers/gpu/drm/radeon/evergreen.c | 7 ++++++ drivers/gpu/drm/radeon/ni.c | 9 +++++++ drivers/gpu/drm/radeon/nid.h | 19 ++++++++++++++++ drivers/gpu/drm/radeon/r100.c | 7 ++++++ drivers/gpu/drm/radeon/r300.c | 7 ++++++ drivers/gpu/drm/radeon/r300d.h | 21 ++++++++++++++++++ drivers/gpu/drm/radeon/r420.c | 7 ++++++ drivers/gpu/drm/radeon/r420d.h | 42 ++++++++++++++++++++++++++++++++++++ drivers/gpu/drm/radeon/r520.c | 10 ++++++++ drivers/gpu/drm/radeon/r520d.h | 24 ++++++++++++++++++++ drivers/gpu/drm/radeon/r600.c | 7 ++++++ drivers/gpu/drm/radeon/rs400.c | 7 ++++++ drivers/gpu/drm/radeon/rs400d.h | 21 ++++++++++++++++++ drivers/gpu/drm/radeon/rs600.c | 10 ++++++++ drivers/gpu/drm/radeon/rs600d.h | 21 ++++++++++++++++++ drivers/gpu/drm/radeon/rs690.c | 10 ++++++++ drivers/gpu/drm/radeon/rs690d.h | 24 ++++++++++++++++++++ drivers/gpu/drm/radeon/rv515.c | 10 ++++++++ drivers/gpu/drm/radeon/rv515d.h | 24 ++++++++++++++++++++ drivers/gpu/drm/radeon/rv770.c | 7 ++++++ drivers/gpu/drm/radeon/rv770d.h | 20 +++++++++++++++++ 21 files changed, 314 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 1934728..d49596b 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -3249,6 +3249,13 @@ int evergreen_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); + /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c index c15fc8b..2a00ad1 100644 --- a/drivers/gpu/drm/radeon/ni.c +++ b/drivers/gpu/drm/radeon/ni.c @@ -1577,6 +1577,15 @@ int cayman_init(struct radeon_device *rdev) struct radeon_ring *ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]; int r; + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB0_CNTL, RB_NO_UPDATE); + WREG32(CP_RB1_CNTL, RB_NO_UPDATE); + WREG32(CP_RB2_CNTL, RB_NO_UPDATE); + /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/nid.h b/drivers/gpu/drm/radeon/nid.h index 4640334..3aa33c6 100644 --- a/drivers/gpu/drm/radeon/nid.h +++ b/drivers/gpu/drm/radeon/nid.h @@ -162,6 +162,25 @@ #define HDP_MISC_CNTL 0x2F4C #define HDP_FLUSH_INVALIDATE_CACHE (1 << 0) +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + #define CC_SYS_RB_BACKEND_DISABLE 0x3F88 #define GC_USER_SYS_RB_BACKEND_DISABLE 0x3F8C #define CGTS_SYS_TCC_DISABLE 0x3F90 diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 657040b..8a71502 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c @@ -4010,6 +4010,13 @@ int r100_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(RADEON_CP_CSQ_MODE, 0); + WREG32(RADEON_CP_CSQ_CNTL, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(RADEON_CP_RB_CNTL, RADEON_RB_NO_UPDATE); + WREG32(RADEON_GEN_INT_CNTL, 0); + /* Register debugfs file specific to this group of asics */ r100_debugfs(rdev); /* Disable VGA */ diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c index 3fc0d29..63ca887 100644 --- a/drivers/gpu/drm/radeon/r300.c +++ b/drivers/gpu/drm/radeon/r300.c @@ -1491,6 +1491,13 @@ int r300_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + /* Disable VGA */ r100_vga_render_disable(rdev); /* Initialize scratch registers */ diff --git a/drivers/gpu/drm/radeon/r300d.h b/drivers/gpu/drm/radeon/r300d.h index 1f519a5..b9f5e3e 100644 --- a/drivers/gpu/drm/radeon/r300d.h +++ b/drivers/gpu/drm/radeon/r300d.h @@ -350,5 +350,26 @@ #define S_00000D_FORCE_OV0(x) (((x) & 0x1) << 31) #define G_00000D_FORCE_OV0(x) (((x) >> 31) & 0x1) #define C_00000D_FORCE_OV0 0x7FFFFFFF +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c index 666e28f..9b9b293 100644 --- a/drivers/gpu/drm/radeon/r420.c +++ b/drivers/gpu/drm/radeon/r420.c @@ -360,6 +360,13 @@ int r420_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + /* Initialize scratch registers */ radeon_scratch_init(rdev); /* Initialize surface registers */ diff --git a/drivers/gpu/drm/radeon/r420d.h b/drivers/gpu/drm/radeon/r420d.h index fc78d31..d5ee6e8 100644 --- a/drivers/gpu/drm/radeon/r420d.h +++ b/drivers/gpu/drm/radeon/r420d.h @@ -245,5 +245,47 @@ #define S_00000D_FORCE_OV0(x) (((x) & 0x1) << 31) #define G_00000D_FORCE_OV0(x) (((x) >> 31) & 0x1) #define C_00000D_FORCE_OV0 0x7FFFFFFF +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c index 4ae1615..403b1d0 100644 --- a/drivers/gpu/drm/radeon/r520.c +++ b/drivers/gpu/drm/radeon/r520.c @@ -244,6 +244,16 @@ int r520_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); + /* Initialize scratch registers */ radeon_scratch_init(rdev); /* Initialize surface registers */ diff --git a/drivers/gpu/drm/radeon/r520d.h b/drivers/gpu/drm/radeon/r520d.h index 61af61f..6d34664 100644 --- a/drivers/gpu/drm/radeon/r520d.h +++ b/drivers/gpu/drm/radeon/r520d.h @@ -183,5 +183,29 @@ #define S_000007_AGP_BASE_ADDR_2(x) (((x) & 0xF) << 0) #define G_000007_AGP_BASE_ADDR_2(x) (((x) >> 0) & 0xF) #define C_000007_AGP_BASE_ADDR_2 0xFFFFFFF0 +#define R_006540_DxMODE_INT_MASK 0x006540 +#define R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL 0x007D08 +#define R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL 0x007D18 +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c index 951566f..d333909 100644 --- a/drivers/gpu/drm/radeon/r600.c +++ b/drivers/gpu/drm/radeon/r600.c @@ -2566,6 +2566,13 @@ int r600_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(R_0086D8_CP_ME_CNTL, S_0086D8_CP_ME_HALT(1)); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); + if (r600_debugfs_mc_info_init(rdev)) { DRM_ERROR("Failed to register debugfs file for mc !\n"); } diff --git a/drivers/gpu/drm/radeon/rs400.c b/drivers/gpu/drm/radeon/rs400.c index b0ce84a..4f708a5 100644 --- a/drivers/gpu/drm/radeon/rs400.c +++ b/drivers/gpu/drm/radeon/rs400.c @@ -494,6 +494,13 @@ int rs400_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + /* Disable VGA */ r100_vga_render_disable(rdev); /* Initialize scratch registers */ diff --git a/drivers/gpu/drm/radeon/rs400d.h b/drivers/gpu/drm/radeon/rs400d.h index 6d8bac5..fc6a9e5 100644 --- a/drivers/gpu/drm/radeon/rs400d.h +++ b/drivers/gpu/drm/radeon/rs400d.h @@ -156,5 +156,26 @@ #define S_000E40_GUI_ACTIVE(x) (((x) & 0x1) << 31) #define G_000E40_GUI_ACTIVE(x) (((x) >> 31) & 0x1) #define C_000E40_GUI_ACTIVE 0x7FFFFFFF +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c index ca6d5b6..76f56bb 100644 --- a/drivers/gpu/drm/radeon/rs600.c +++ b/drivers/gpu/drm/radeon/rs600.c @@ -939,6 +939,16 @@ int rs600_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); + /* Disable VGA */ rv515_vga_render_disable(rdev); /* Initialize scratch registers */ diff --git a/drivers/gpu/drm/radeon/rs600d.h b/drivers/gpu/drm/radeon/rs600d.h index a27c13a..54d96e6 100644 --- a/drivers/gpu/drm/radeon/rs600d.h +++ b/drivers/gpu/drm/radeon/rs600d.h @@ -668,4 +668,25 @@ #define PM_ASSERT_RESET (1 << 20) #define PM_PWRDN_PPLL (1 << 24) +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF + #endif diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c index 4f24a0f..e84913e 100644 --- a/drivers/gpu/drm/radeon/rs690.c +++ b/drivers/gpu/drm/radeon/rs690.c @@ -711,6 +711,16 @@ int rs690_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(RADEON_CP_CSQ_MODE, 0); + WREG32(RADEON_CP_CSQ_CNTL, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(RADEON_CP_RB_CNTL, RADEON_RB_NO_UPDATE); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); + /* Disable VGA */ rv515_vga_render_disable(rdev); /* Initialize scratch registers */ diff --git a/drivers/gpu/drm/radeon/rs690d.h b/drivers/gpu/drm/radeon/rs690d.h index 36e6398..fa41027 100644 --- a/drivers/gpu/drm/radeon/rs690d.h +++ b/drivers/gpu/drm/radeon/rs690d.h @@ -306,5 +306,29 @@ #define S_000104_MC_GLOBW_INIT_LAT(x) (((x) & 0xF) << 28) #define G_000104_MC_GLOBW_INIT_LAT(x) (((x) >> 28) & 0xF) #define C_000104_MC_GLOBW_INIT_LAT 0x0FFFFFFF +#define R_006540_DxMODE_INT_MASK 0x006540 +#define R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL 0x007D08 +#define R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL 0x007D18 +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c index 880637f..5133d96 100644 --- a/drivers/gpu/drm/radeon/rv515.c +++ b/drivers/gpu/drm/radeon/rv515.c @@ -482,6 +482,16 @@ int rv515_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); + /* Initialize scratch registers */ radeon_scratch_init(rdev); /* Initialize surface registers */ diff --git a/drivers/gpu/drm/radeon/rv515d.h b/drivers/gpu/drm/radeon/rv515d.h index 590309a..03cddd2 100644 --- a/drivers/gpu/drm/radeon/rv515d.h +++ b/drivers/gpu/drm/radeon/rv515d.h @@ -645,5 +645,29 @@ #define S_000013_IDCT_NORMAL_POWER_BUSY(x) (((x) & 0xFF) << 24) #define G_000013_IDCT_NORMAL_POWER_BUSY(x) (((x) >> 24) & 0xFF) #define C_000013_IDCT_NORMAL_POWER_BUSY 0x00FFFFFF +#define R_006540_DxMODE_INT_MASK 0x006540 +#define R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL 0x007D08 +#define R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL 0x007D18 +#define R_000040_GEN_INT_CNTL 0x000040 +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF #endif diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index a1668b6..7f8500b 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c @@ -1177,6 +1177,13 @@ int rv770_init(struct radeon_device *rdev) { int r; + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); + /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/rv770d.h b/drivers/gpu/drm/radeon/rv770d.h index 79fa588..03bed2d 100644 --- a/drivers/gpu/drm/radeon/rv770d.h +++ b/drivers/gpu/drm/radeon/rv770d.h @@ -38,6 +38,26 @@ #define R7XX_MAX_PIPES 8 #define R7XX_MAX_PIPES_MASK 0xff + +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + /* Registers */ #define CB_COLOR0_BASE 0x28040 #define CB_COLOR1_BASE 0x28044 -- 1.7.7.1 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 17:10 ` Jerome Glisse @ 2011-12-05 18:15 ` Markus Trippelsdorf 2011-12-05 18:43 ` Jerome Glisse 2011-12-05 19:11 ` Jerome Glisse 0 siblings, 2 replies; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-05 18:15 UTC (permalink / raw) To: Jerome Glisse Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.05 at 12:10 -0500, Jerome Glisse wrote: > On Sun, Dec 04, 2011 at 02:02:00AM +0100, Markus Trippelsdorf wrote: > > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: > > > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > > > <markus@trippelsdorf.de> wrote: > > > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > > > >> >> > > > > FIX idr_layer_cache: Marking all objects used > > > >> >> > > > > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > >> >> > > > exactly the same spot again. (CCing the drm list) > > > >> > > > >> If I had to guess it looks like 0 is getting written back to some > > > >> random page by the GPU maybe, it could be that the GPU is in some half > > > >> setup state at boot or on a reboot does it happen from a cold boot or > > > >> just warm boot or kexec? > > > > > > > > Only happened with kexec thus far. Cold boot seems to be fine. > > > > > > > > > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > > > you can reproduce. > > > > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this > > after 700 successful kexec iterations...) > > > > Can you try if attached patch fix the issue when you don't pass the > radeon.no_wb=1 option ? Yes the patch finally fixes the issue for me (tested with 120 kexec iterations). Thanks Jerome! -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 18:15 ` Markus Trippelsdorf @ 2011-12-05 18:43 ` Jerome Glisse 2011-12-05 19:11 ` Jerome Glisse 1 sibling, 0 replies; 26+ messages in thread From: Jerome Glisse @ 2011-12-05 18:43 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Mon, Dec 5, 2011 at 1:15 PM, Markus Trippelsdorf <markus@trippelsdorf.de> wrote: > On 2011.12.05 at 12:10 -0500, Jerome Glisse wrote: >> On Sun, Dec 04, 2011 at 02:02:00AM +0100, Markus Trippelsdorf wrote: >> > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: >> > > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf >> > > <markus@trippelsdorf.de> wrote: >> > > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: >> > > >> >> > > > > FIX idr_layer_cache: Marking all objects used >> > > >> >> > > > >> > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit >> > > >> >> > > > exactly the same spot again. (CCing the drm list) >> > > >> >> > > >> If I had to guess it looks like 0 is getting written back to some >> > > >> random page by the GPU maybe, it could be that the GPU is in some half >> > > >> setup state at boot or on a reboot does it happen from a cold boot or >> > > >> just warm boot or kexec? >> > > > >> > > > Only happened with kexec thus far. Cold boot seems to be fine. >> > > > >> > > >> > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if >> > > you can reproduce. >> > >> > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this >> > after 700 successful kexec iterations...) >> > >> >> Can you try if attached patch fix the issue when you don't pass the >> radeon.no_wb=1 option ? > > Yes the patch finally fixes the issue for me (tested with 120 kexec > iterations). > Thanks Jerome! > > -- > Markus Will respin with some minor code changes. Cheers, Jerome -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 18:15 ` Markus Trippelsdorf 2011-12-05 18:43 ` Jerome Glisse @ 2011-12-05 19:11 ` Jerome Glisse 2011-12-05 19:27 ` Markus Trippelsdorf 1 sibling, 1 reply; 26+ messages in thread From: Jerome Glisse @ 2011-12-05 19:11 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher [-- Attachment #1: Type: text/plain, Size: 1653 bytes --] On Mon, Dec 05, 2011 at 07:15:49PM +0100, Markus Trippelsdorf wrote: > On 2011.12.05 at 12:10 -0500, Jerome Glisse wrote: > > On Sun, Dec 04, 2011 at 02:02:00AM +0100, Markus Trippelsdorf wrote: > > > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: > > > > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > > > > <markus@trippelsdorf.de> wrote: > > > > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > > > > >> >> > > > > FIX idr_layer_cache: Marking all objects used > > > > >> >> > > > > > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > >> >> > > > exactly the same spot again. (CCing the drm list) > > > > >> > > > > >> If I had to guess it looks like 0 is getting written back to some > > > > >> random page by the GPU maybe, it could be that the GPU is in some half > > > > >> setup state at boot or on a reboot does it happen from a cold boot or > > > > >> just warm boot or kexec? > > > > > > > > > > Only happened with kexec thus far. Cold boot seems to be fine. > > > > > > > > > > > > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > > > > you can reproduce. > > > > > > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this > > > after 700 successful kexec iterations...) > > > > > > > Can you try if attached patch fix the issue when you don't pass the > > radeon.no_wb=1 option ? > > Yes the patch finally fixes the issue for me (tested with 120 kexec > iterations). > Thanks Jerome! > > -- > Markus Can you do a kick run on the modified patch ? I believe this patch could go to stable too as it's low impact from my pov. Cheers, Jerome [-- Attachment #2: 0001-drm-radeon-disable-possible-GPU-writeback-early-v2.patch --] [-- Type: text/plain, Size: 14649 bytes --] >From cccfa6f93faa6b556fd72e318606a01e333e67d3 Mon Sep 17 00:00:00 2001 From: Jerome Glisse <jglisse@redhat.com> Date: Mon, 5 Dec 2011 12:02:17 -0500 Subject: [PATCH] drm/radeon: disable possible GPU writeback early v2 Given how kexec works we need to disable any kind of GPU writeback early in GPU initialization just in case some are still active from previous setup. v2 follow previous sanity work done on earlier radeon, also write reg uncondionaly and disable irq too. Signed-off-by: Jerome Glisse <jglisse@redhat.com> --- drivers/gpu/drm/radeon/evergreen.c | 2 ++ drivers/gpu/drm/radeon/ni.c | 18 ++++++++++++++++++ drivers/gpu/drm/radeon/nid.h | 19 +++++++++++++++++++ drivers/gpu/drm/radeon/r100.c | 20 ++++++-------------- drivers/gpu/drm/radeon/r520.c | 2 +- drivers/gpu/drm/radeon/r600.c | 16 ++++++++++++++++ drivers/gpu/drm/radeon/radeon_asic.h | 2 ++ drivers/gpu/drm/radeon/rs600.c | 20 +++++++++++++++++++- drivers/gpu/drm/radeon/rs600d.h | 21 +++++++++++++++++++++ drivers/gpu/drm/radeon/rs690.c | 2 +- drivers/gpu/drm/radeon/rv515.c | 2 +- drivers/gpu/drm/radeon/rv770.c | 16 ++++++++++++++++ drivers/gpu/drm/radeon/rv770d.h | 20 ++++++++++++++++++++ 13 files changed, 142 insertions(+), 18 deletions(-) diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 1934728..6109579 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -3249,6 +3249,8 @@ int evergreen_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + rv770_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c index c15fc8b..f5d7054 100644 --- a/drivers/gpu/drm/radeon/ni.c +++ b/drivers/gpu/drm/radeon/ni.c @@ -1566,6 +1566,22 @@ int cayman_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +static void cayman_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB0_CNTL, RB_NO_UPDATE); + WREG32(CP_RB1_CNTL, RB_NO_UPDATE); + WREG32(CP_RB2_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -1577,6 +1593,8 @@ int cayman_init(struct radeon_device *rdev) struct radeon_ring *ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]; int r; + /* restore some register to sane defaults */ + cayman_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/nid.h b/drivers/gpu/drm/radeon/nid.h index 4640334..3aa33c6 100644 --- a/drivers/gpu/drm/radeon/nid.h +++ b/drivers/gpu/drm/radeon/nid.h @@ -162,6 +162,25 @@ #define HDP_MISC_CNTL 0x2F4C #define HDP_FLUSH_INVALIDATE_CACHE (1 << 0) +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + #define CC_SYS_RB_BACKEND_DISABLE 0x3F88 #define GC_USER_SYS_RB_BACKEND_DISABLE 0x3F8C #define CGTS_SYS_TCC_DISABLE 0x3F90 diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 657040b..d58531f 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c @@ -3990,20 +3990,12 @@ void r100_fini(struct radeon_device *rdev) */ void r100_restore_sanity(struct radeon_device *rdev) { - u32 tmp; - - tmp = RREG32(RADEON_CP_CSQ_CNTL); - if (tmp) { - WREG32(RADEON_CP_CSQ_CNTL, 0); - } - tmp = RREG32(RADEON_CP_RB_CNTL); - if (tmp) { - WREG32(RADEON_CP_RB_CNTL, 0); - } - tmp = RREG32(RADEON_SCRATCH_UMSK); - if (tmp) { - WREG32(RADEON_SCRATCH_UMSK, 0); - } + /* stop possible GPU activities */ + WREG32(RADEON_CP_CSQ_MODE, 0); + WREG32(RADEON_CP_CSQ_CNTL, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(RADEON_CP_RB_CNTL, RADEON_RB_NO_UPDATE); + WREG32(RADEON_GEN_INT_CNTL, 0); } int r100_init(struct radeon_device *rdev) diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c index 4ae1615..71a984b 100644 --- a/drivers/gpu/drm/radeon/r520.c +++ b/drivers/gpu/drm/radeon/r520.c @@ -249,7 +249,7 @@ int r520_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* TODO: disable VGA need to use VGA request */ /* BIOS*/ if (!radeon_get_bios(rdev)) { diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c index 951566f..ec437d5 100644 --- a/drivers/gpu/drm/radeon/r600.c +++ b/drivers/gpu/drm/radeon/r600.c @@ -2556,6 +2556,20 @@ int r600_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +static void r600_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(R_0086D8_CP_ME_CNTL, S_0086D8_CP_ME_HALT(1)); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -2566,6 +2580,8 @@ int r600_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + r600_restore_sanity(rdev); if (r600_debugfs_mc_info_init(rdev)) { DRM_ERROR("Failed to register debugfs file for mc !\n"); } diff --git a/drivers/gpu/drm/radeon/radeon_asic.h b/drivers/gpu/drm/radeon/radeon_asic.h index 6304aef..6b664b0 100644 --- a/drivers/gpu/drm/radeon/radeon_asic.h +++ b/drivers/gpu/drm/radeon/radeon_asic.h @@ -215,6 +215,7 @@ extern int rs600_init(struct radeon_device *rdev); extern void rs600_fini(struct radeon_device *rdev); extern int rs600_suspend(struct radeon_device *rdev); extern int rs600_resume(struct radeon_device *rdev); +void rs600_restore_sanity(struct radeon_device *rdev); int rs600_irq_set(struct radeon_device *rdev); int rs600_irq_process(struct radeon_device *rdev); void rs600_irq_disable(struct radeon_device *rdev); @@ -388,6 +389,7 @@ u32 rv770_page_flip(struct radeon_device *rdev, int crtc, u64 crtc_base); void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc); void r700_cp_stop(struct radeon_device *rdev); void r700_cp_fini(struct radeon_device *rdev); +void rv770_restore_sanity(struct radeon_device *rdev); /* * evergreen diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c index ca6d5b6..fc3c707 100644 --- a/drivers/gpu/drm/radeon/rs600.c +++ b/drivers/gpu/drm/radeon/rs600.c @@ -935,6 +935,24 @@ void rs600_fini(struct radeon_device *rdev) rdev->bios = NULL; } + +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +void rs600_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); +} + int rs600_init(struct radeon_device *rdev) { int r; @@ -946,7 +964,7 @@ int rs600_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* BIOS */ if (!radeon_get_bios(rdev)) { if (ASIC_IS_AVIVO(rdev)) diff --git a/drivers/gpu/drm/radeon/rs600d.h b/drivers/gpu/drm/radeon/rs600d.h index a27c13a..54d96e6 100644 --- a/drivers/gpu/drm/radeon/rs600d.h +++ b/drivers/gpu/drm/radeon/rs600d.h @@ -668,4 +668,25 @@ #define PM_ASSERT_RESET (1 << 20) #define PM_PWRDN_PPLL (1 << 24) +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF + #endif diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c index 4f24a0f..8a3b1f4 100644 --- a/drivers/gpu/drm/radeon/rs690.c +++ b/drivers/gpu/drm/radeon/rs690.c @@ -718,7 +718,7 @@ int rs690_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* TODO: disable VGA need to use VGA request */ /* BIOS*/ if (!radeon_get_bios(rdev)) { diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c index 880637f..c9ced40 100644 --- a/drivers/gpu/drm/radeon/rv515.c +++ b/drivers/gpu/drm/radeon/rv515.c @@ -488,7 +488,7 @@ int rv515_init(struct radeon_device *rdev) radeon_surface_init(rdev); /* TODO: disable VGA need to use VGA request */ /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* BIOS*/ if (!radeon_get_bios(rdev)) { if (ASIC_IS_AVIVO(rdev)) diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index a1668b6..3d0397d 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c @@ -1167,6 +1167,20 @@ int rv770_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +void rv770_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -1177,6 +1191,8 @@ int rv770_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + rv770_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/rv770d.h b/drivers/gpu/drm/radeon/rv770d.h index 79fa588..03bed2d 100644 --- a/drivers/gpu/drm/radeon/rv770d.h +++ b/drivers/gpu/drm/radeon/rv770d.h @@ -38,6 +38,26 @@ #define R7XX_MAX_PIPES 8 #define R7XX_MAX_PIPES_MASK 0xff + +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + /* Registers */ #define CB_COLOR0_BASE 0x28040 #define CB_COLOR1_BASE 0x28044 -- 1.7.7.1 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 19:11 ` Jerome Glisse @ 2011-12-05 19:27 ` Markus Trippelsdorf 2011-12-05 20:10 ` Pekka Enberg 0 siblings, 1 reply; 26+ messages in thread From: Markus Trippelsdorf @ 2011-12-05 19:27 UTC (permalink / raw) To: Jerome Glisse Cc: Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, Pekka Enberg, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On 2011.12.05 at 14:11 -0500, Jerome Glisse wrote: > On Mon, Dec 05, 2011 at 07:15:49PM +0100, Markus Trippelsdorf wrote: > > On 2011.12.05 at 12:10 -0500, Jerome Glisse wrote: > > > On Sun, Dec 04, 2011 at 02:02:00AM +0100, Markus Trippelsdorf wrote: > > > > On 2011.12.03 at 14:31 -0500, Jerome Glisse wrote: > > > > > On Sat, Dec 3, 2011 at 7:29 AM, Markus Trippelsdorf > > > > > <markus@trippelsdorf.de> wrote: > > > > > > On 2011.12.03 at 12:20 +0000, Dave Airlie wrote: > > > > > >> >> > > > > FIX idr_layer_cache: Marking all objects used > > > > > >> >> > > > > > > > > >> >> > > > Yesterday I couldn't reproduce the issue at all. But today I've hit > > > > > >> >> > > > exactly the same spot again. (CCing the drm list) > > > > > >> > > > > > >> If I had to guess it looks like 0 is getting written back to some > > > > > >> random page by the GPU maybe, it could be that the GPU is in some half > > > > > >> setup state at boot or on a reboot does it happen from a cold boot or > > > > > >> just warm boot or kexec? > > > > > > > > > > > > Only happened with kexec thus far. Cold boot seems to be fine. > > > > > > > > > > > > > > > > Can you add radeon.no_wb=1 to your kexec kernel paramater an see if > > > > > you can reproduce. > > > > > > > > No, I cannot reproduce the issue with radeon.no_wb=1. (I write this > > > > after 700 successful kexec iterations...) > > > > > > > > > > Can you try if attached patch fix the issue when you don't pass the > > > radeon.no_wb=1 option ? > > > > Yes the patch finally fixes the issue for me (tested with 120 kexec > > iterations). > > Thanks Jerome! > > > > -- > > Markus > > Can you do a kick run on the modified patch ? This one is also OK after ~60 iterations. -- Markus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 19:27 ` Markus Trippelsdorf @ 2011-12-05 20:10 ` Pekka Enberg 2011-12-05 20:20 ` Jerome Glisse 0 siblings, 1 reply; 26+ messages in thread From: Pekka Enberg @ 2011-12-05 20:10 UTC (permalink / raw) To: Markus Trippelsdorf Cc: Jerome Glisse, Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher On Mon, Dec 5, 2011 at 9:27 PM, Markus Trippelsdorf <markus@trippelsdorf.de> wrote: >> > Yes the patch finally fixes the issue for me (tested with 120 kexec >> > iterations). >> > Thanks Jerome! >> >> Can you do a kick run on the modified patch ? > > This one is also OK after ~60 iterations. Jerome, could you please include a reference to this LKML thread for context and attribution for Markus for reporting and following up to get the issue fixed in the changelog? Pekka -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-05 20:10 ` Pekka Enberg @ 2011-12-05 20:20 ` Jerome Glisse 0 siblings, 0 replies; 26+ messages in thread From: Jerome Glisse @ 2011-12-05 20:20 UTC (permalink / raw) To: Pekka Enberg Cc: Markus Trippelsdorf, Dave Airlie, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel, linux-mm@kvack.org, Matt Mackall, tj, Alex Deucher [-- Attachment #1: Type: text/plain, Size: 701 bytes --] On Mon, Dec 05, 2011 at 10:10:34PM +0200, Pekka Enberg wrote: > On Mon, Dec 5, 2011 at 9:27 PM, Markus Trippelsdorf > <markus@trippelsdorf.de> wrote: > >> > Yes the patch finally fixes the issue for me (tested with 120 kexec > >> > iterations). > >> > Thanks Jerome! > >> > >> Can you do a kick run on the modified patch ? > > > > This one is also OK after ~60 iterations. > > Jerome, could you please include a reference to this LKML thread for > context and attribution for Markus for reporting and following up to > get the issue fixed in the changelog? > > Pekka Attached updated patch, only changelog is different. Thanks Markus for testing this. Cheers, Jerome [-- Attachment #2: 0001-drm-radeon-disable-possible-GPU-writeback-early-v3.patch --] [-- Type: text/plain, Size: 14937 bytes --] >From cccfa6f93faa6b556fd72e318606a01e333e67d3 Mon Sep 17 00:00:00 2001 From: Jerome Glisse <jglisse@redhat.com> Date: Mon, 5 Dec 2011 12:02:17 -0500 Subject: [PATCH] drm/radeon: disable possible GPU writeback early v3 Given how kexec works we need to disable any kind of GPU writeback early in GPU initialization just in case some are still active from previous setup. This patch is done to fix the issue described in the lkml thread : WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 https://lkml.org/lkml/2011/12/5/466 Thanks to Markus Trippelsdorf for testing this. v2 follow previous sanity work done on earlier radeon, also write reg uncondionaly and disable irq too. v3 update change log Signed-off-by: Jerome Glisse <jglisse@redhat.com> Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de> --- drivers/gpu/drm/radeon/evergreen.c | 2 ++ drivers/gpu/drm/radeon/ni.c | 18 ++++++++++++++++++ drivers/gpu/drm/radeon/nid.h | 19 +++++++++++++++++++ drivers/gpu/drm/radeon/r100.c | 20 ++++++-------------- drivers/gpu/drm/radeon/r520.c | 2 +- drivers/gpu/drm/radeon/r600.c | 16 ++++++++++++++++ drivers/gpu/drm/radeon/radeon_asic.h | 2 ++ drivers/gpu/drm/radeon/rs600.c | 20 +++++++++++++++++++- drivers/gpu/drm/radeon/rs600d.h | 21 +++++++++++++++++++++ drivers/gpu/drm/radeon/rs690.c | 2 +- drivers/gpu/drm/radeon/rv515.c | 2 +- drivers/gpu/drm/radeon/rv770.c | 16 ++++++++++++++++ drivers/gpu/drm/radeon/rv770d.h | 20 ++++++++++++++++++++ 13 files changed, 142 insertions(+), 18 deletions(-) diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c index 1934728..6109579 100644 --- a/drivers/gpu/drm/radeon/evergreen.c +++ b/drivers/gpu/drm/radeon/evergreen.c @@ -3249,6 +3249,8 @@ int evergreen_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + rv770_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c index c15fc8b..f5d7054 100644 --- a/drivers/gpu/drm/radeon/ni.c +++ b/drivers/gpu/drm/radeon/ni.c @@ -1566,6 +1566,22 @@ int cayman_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +static void cayman_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB0_CNTL, RB_NO_UPDATE); + WREG32(CP_RB1_CNTL, RB_NO_UPDATE); + WREG32(CP_RB2_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -1577,6 +1593,8 @@ int cayman_init(struct radeon_device *rdev) struct radeon_ring *ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]; int r; + /* restore some register to sane defaults */ + cayman_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/nid.h b/drivers/gpu/drm/radeon/nid.h index 4640334..3aa33c6 100644 --- a/drivers/gpu/drm/radeon/nid.h +++ b/drivers/gpu/drm/radeon/nid.h @@ -162,6 +162,25 @@ #define HDP_MISC_CNTL 0x2F4C #define HDP_FLUSH_INVALIDATE_CACHE (1 << 0) +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + #define CC_SYS_RB_BACKEND_DISABLE 0x3F88 #define GC_USER_SYS_RB_BACKEND_DISABLE 0x3F8C #define CGTS_SYS_TCC_DISABLE 0x3F90 diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c index 657040b..d58531f 100644 --- a/drivers/gpu/drm/radeon/r100.c +++ b/drivers/gpu/drm/radeon/r100.c @@ -3990,20 +3990,12 @@ void r100_fini(struct radeon_device *rdev) */ void r100_restore_sanity(struct radeon_device *rdev) { - u32 tmp; - - tmp = RREG32(RADEON_CP_CSQ_CNTL); - if (tmp) { - WREG32(RADEON_CP_CSQ_CNTL, 0); - } - tmp = RREG32(RADEON_CP_RB_CNTL); - if (tmp) { - WREG32(RADEON_CP_RB_CNTL, 0); - } - tmp = RREG32(RADEON_SCRATCH_UMSK); - if (tmp) { - WREG32(RADEON_SCRATCH_UMSK, 0); - } + /* stop possible GPU activities */ + WREG32(RADEON_CP_CSQ_MODE, 0); + WREG32(RADEON_CP_CSQ_CNTL, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(RADEON_CP_RB_CNTL, RADEON_RB_NO_UPDATE); + WREG32(RADEON_GEN_INT_CNTL, 0); } int r100_init(struct radeon_device *rdev) diff --git a/drivers/gpu/drm/radeon/r520.c b/drivers/gpu/drm/radeon/r520.c index 4ae1615..71a984b 100644 --- a/drivers/gpu/drm/radeon/r520.c +++ b/drivers/gpu/drm/radeon/r520.c @@ -249,7 +249,7 @@ int r520_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* TODO: disable VGA need to use VGA request */ /* BIOS*/ if (!radeon_get_bios(rdev)) { diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c index 951566f..ec437d5 100644 --- a/drivers/gpu/drm/radeon/r600.c +++ b/drivers/gpu/drm/radeon/r600.c @@ -2556,6 +2556,20 @@ int r600_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +static void r600_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(R_0086D8_CP_ME_CNTL, S_0086D8_CP_ME_HALT(1)); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -2566,6 +2580,8 @@ int r600_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + r600_restore_sanity(rdev); if (r600_debugfs_mc_info_init(rdev)) { DRM_ERROR("Failed to register debugfs file for mc !\n"); } diff --git a/drivers/gpu/drm/radeon/radeon_asic.h b/drivers/gpu/drm/radeon/radeon_asic.h index 6304aef..6b664b0 100644 --- a/drivers/gpu/drm/radeon/radeon_asic.h +++ b/drivers/gpu/drm/radeon/radeon_asic.h @@ -215,6 +215,7 @@ extern int rs600_init(struct radeon_device *rdev); extern void rs600_fini(struct radeon_device *rdev); extern int rs600_suspend(struct radeon_device *rdev); extern int rs600_resume(struct radeon_device *rdev); +void rs600_restore_sanity(struct radeon_device *rdev); int rs600_irq_set(struct radeon_device *rdev); int rs600_irq_process(struct radeon_device *rdev); void rs600_irq_disable(struct radeon_device *rdev); @@ -388,6 +389,7 @@ u32 rv770_page_flip(struct radeon_device *rdev, int crtc, u64 crtc_base); void r700_vram_gtt_location(struct radeon_device *rdev, struct radeon_mc *mc); void r700_cp_stop(struct radeon_device *rdev); void r700_cp_fini(struct radeon_device *rdev); +void rv770_restore_sanity(struct radeon_device *rdev); /* * evergreen diff --git a/drivers/gpu/drm/radeon/rs600.c b/drivers/gpu/drm/radeon/rs600.c index ca6d5b6..fc3c707 100644 --- a/drivers/gpu/drm/radeon/rs600.c +++ b/drivers/gpu/drm/radeon/rs600.c @@ -935,6 +935,24 @@ void rs600_fini(struct radeon_device *rdev) rdev->bios = NULL; } + +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +void rs600_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(R_000740_CP_CSQ_CNTL, 0); + WREG32(R_000744_CP_CSQ_MODE, 0); + WREG32(R_000770_SCRATCH_UMSK, 0); + WREG32(R_000704_CP_RB_CNTL, S_000704_RB_NO_UPDATE(1)); + WREG32(R_000040_GEN_INT_CNTL, 0); + WREG32(R_006540_DxMODE_INT_MASK, 0); + WREG32(R_007D08_DC_HOT_PLUG_DETECT1_INT_CONTROL, 0); + WREG32(R_007D18_DC_HOT_PLUG_DETECT2_INT_CONTROL, 0); +} + int rs600_init(struct radeon_device *rdev) { int r; @@ -946,7 +964,7 @@ int rs600_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* BIOS */ if (!radeon_get_bios(rdev)) { if (ASIC_IS_AVIVO(rdev)) diff --git a/drivers/gpu/drm/radeon/rs600d.h b/drivers/gpu/drm/radeon/rs600d.h index a27c13a..54d96e6 100644 --- a/drivers/gpu/drm/radeon/rs600d.h +++ b/drivers/gpu/drm/radeon/rs600d.h @@ -668,4 +668,25 @@ #define PM_ASSERT_RESET (1 << 20) #define PM_PWRDN_PPLL (1 << 24) +#define R_000704_CP_RB_CNTL 0x000704 +#define S_000704_RB_NO_UPDATE(x) (((x) & 0x1) << 27) +#define R_000740_CP_CSQ_CNTL 0x000740 +#define S_000740_CSQ_CNT_PRIMARY(x) (((x) & 0xFF) << 0) +#define G_000740_CSQ_CNT_PRIMARY(x) (((x) >> 0) & 0xFF) +#define C_000740_CSQ_CNT_PRIMARY 0xFFFFFF00 +#define S_000740_CSQ_CNT_INDIRECT(x) (((x) & 0xFF) << 8) +#define G_000740_CSQ_CNT_INDIRECT(x) (((x) >> 8) & 0xFF) +#define C_000740_CSQ_CNT_INDIRECT 0xFFFF00FF +#define S_000740_CSQ_MODE(x) (((x) & 0xF) << 28) +#define G_000740_CSQ_MODE(x) (((x) >> 28) & 0xF) +#define C_000740_CSQ_MODE 0x0FFFFFFF +#define R_000744_CP_CSQ_MODE 0x000744 +#define R_000770_SCRATCH_UMSK 0x000770 +#define S_000770_SCRATCH_UMSK(x) (((x) & 0x3F) << 0) +#define G_000770_SCRATCH_UMSK(x) (((x) >> 0) & 0x3F) +#define C_000770_SCRATCH_UMSK 0xFFFFFFC0 +#define S_000770_SCRATCH_SWAP(x) (((x) & 0x3) << 16) +#define G_000770_SCRATCH_SWAP(x) (((x) >> 16) & 0x3) +#define C_000770_SCRATCH_SWAP 0xFFFCFFFF + #endif diff --git a/drivers/gpu/drm/radeon/rs690.c b/drivers/gpu/drm/radeon/rs690.c index 4f24a0f..8a3b1f4 100644 --- a/drivers/gpu/drm/radeon/rs690.c +++ b/drivers/gpu/drm/radeon/rs690.c @@ -718,7 +718,7 @@ int rs690_init(struct radeon_device *rdev) /* Initialize surface registers */ radeon_surface_init(rdev); /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* TODO: disable VGA need to use VGA request */ /* BIOS*/ if (!radeon_get_bios(rdev)) { diff --git a/drivers/gpu/drm/radeon/rv515.c b/drivers/gpu/drm/radeon/rv515.c index 880637f..c9ced40 100644 --- a/drivers/gpu/drm/radeon/rv515.c +++ b/drivers/gpu/drm/radeon/rv515.c @@ -488,7 +488,7 @@ int rv515_init(struct radeon_device *rdev) radeon_surface_init(rdev); /* TODO: disable VGA need to use VGA request */ /* restore some register to sane defaults */ - r100_restore_sanity(rdev); + rs600_restore_sanity(rdev); /* BIOS*/ if (!radeon_get_bios(rdev)) { if (ASIC_IS_AVIVO(rdev)) diff --git a/drivers/gpu/drm/radeon/rv770.c b/drivers/gpu/drm/radeon/rv770.c index a1668b6..3d0397d 100644 --- a/drivers/gpu/drm/radeon/rv770.c +++ b/drivers/gpu/drm/radeon/rv770.c @@ -1167,6 +1167,20 @@ int rv770_suspend(struct radeon_device *rdev) return 0; } +/* + * Due to how kexec works, it can leave the hw fully initialised when it + * boots the new kernel. + */ +void rv770_restore_sanity(struct radeon_device *rdev) +{ + /* stop possible GPU activities */ + WREG32(IH_RB_CNTL, 0); + WREG32(IH_CNTL, 0); + WREG32(CP_ME_CNTL, CP_ME_HALT | CP_PFP_HALT); + WREG32(SCRATCH_UMSK, 0); + WREG32(CP_RB_CNTL, RB_NO_UPDATE); +} + /* Plan is to move initialization in that function and use * helper function so that radeon_device_init pretty much * do nothing more than calling asic specific function. This @@ -1177,6 +1191,8 @@ int rv770_init(struct radeon_device *rdev) { int r; + /* restore some register to sane defaults */ + rv770_restore_sanity(rdev); /* This don't do much */ r = radeon_gem_init(rdev); if (r) diff --git a/drivers/gpu/drm/radeon/rv770d.h b/drivers/gpu/drm/radeon/rv770d.h index 79fa588..03bed2d 100644 --- a/drivers/gpu/drm/radeon/rv770d.h +++ b/drivers/gpu/drm/radeon/rv770d.h @@ -38,6 +38,26 @@ #define R7XX_MAX_PIPES 8 #define R7XX_MAX_PIPES_MASK 0xff + +#define IH_RB_CNTL 0x3e00 +# define IH_RB_ENABLE (1 << 0) +# define IH_IB_SIZE(x) ((x) << 1) /* log2 */ +# define IH_RB_FULL_DRAIN_ENABLE (1 << 6) +# define IH_WPTR_WRITEBACK_ENABLE (1 << 8) +# define IH_WPTR_WRITEBACK_TIMER(x) ((x) << 9) /* log2 */ +# define IH_WPTR_OVERFLOW_ENABLE (1 << 16) +# define IH_WPTR_OVERFLOW_CLEAR (1 << 31) +#define IH_CNTL 0x3e18 +# define ENABLE_INTR (1 << 0) +# define IH_MC_SWAP(x) ((x) << 1) +# define IH_MC_SWAP_NONE 0 +# define IH_MC_SWAP_16BIT 1 +# define IH_MC_SWAP_32BIT 2 +# define IH_MC_SWAP_64BIT 3 +# define RPTR_REARM (1 << 4) +# define MC_WRREQ_CREDIT(x) ((x) << 15) +# define MC_WR_CLEAN_CNT(x) ((x) << 20) + /* Registers */ #define CB_COLOR0_BASE 0x28040 #define CB_COLOR1_BASE 0x28044 -- 1.7.7.1 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* RE: WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 2011-12-03 12:29 ` Markus Trippelsdorf 2011-12-03 19:31 ` Jerome Glisse @ 2011-12-05 10:44 ` David Laight 1 sibling, 0 replies; 26+ messages in thread From: David Laight @ 2011-12-05 10:44 UTC (permalink / raw) To: Markus Trippelsdorf, Dave Airlie Cc: Jerome Glisse, Christoph Lameter, Alex, Shi, Eric Dumazet, netdev, linux-kernel, dri-devel, Pekka Enberg, linux-mm, Matt Mackall, tj, Alex Deucher > > If I had to guess it looks like 0 is getting written back to some > > random page by the GPU maybe, it could be that the GPU is in some half > > setup state at boot or on a reboot does it happen from a cold boot or > > just warm boot or kexec? > > Only happened with kexec thus far. Cold boot seems to be fine. Sounds like the GPU is writing to physical memory from the old mappings. This can happen to other devices if they aren't completely disabled - which may not happen since the kexec case probably avoids some of the hardware resets that occurr diring a normal reboot. I remember an ethernet chip writing into its rx ring/buffer area following a reboot (and reinstall!) when connected to a quiet lan. David -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a> ^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2011-12-07 14:39 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1321605837.30341.551.camel@debian>
[not found] ` <20111118085436.GC1615@x4.trippels.de>
[not found] ` <20111118120201.GA1642@x4.trippels.de>
[not found] ` <1321836285.30341.554.camel@debian>
[not found] ` <20111121080554.GB1625@x4.trippels.de>
[not found] ` <20111121082445.GD1625@x4.trippels.de>
[not found] ` <1321866988.2552.10.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC>
[not found] ` <20111121131531.GA1679@x4.trippels.de>
[not found] ` <1321884966.10470.2.camel@edumazet-HP-Compaq-6005-Pro-SFF-PC>
[not found] ` <20111121153621.GA1678@x4.trippels.de>
2011-11-23 16:03 ` WARNING: at mm/slub.c:3357, kernel BUG at mm/slub.c:3413 Markus Trippelsdorf
2011-11-23 16:06 ` Christoph Lameter
2011-11-24 8:50 ` Markus Trippelsdorf
2011-12-01 8:44 ` Markus Trippelsdorf
2011-12-01 8:53 ` Pekka Enberg
2011-12-02 19:43 ` Jerome Glisse
2011-12-02 20:06 ` Markus Trippelsdorf
2011-12-02 20:48 ` Markus Trippelsdorf
2011-12-07 14:32 ` Robert Richter
2011-12-07 14:39 ` Markus Trippelsdorf
2011-12-02 23:04 ` Jerome Glisse
2011-12-03 9:28 ` Markus Trippelsdorf
2011-12-03 12:20 ` Dave Airlie
2011-12-03 12:29 ` Markus Trippelsdorf
2011-12-03 19:31 ` Jerome Glisse
2011-12-03 19:32 ` Jerome Glisse
2011-12-04 1:02 ` Markus Trippelsdorf
2011-12-04 17:32 ` Jerome Glisse
2011-12-05 17:10 ` Jerome Glisse
2011-12-05 18:15 ` Markus Trippelsdorf
2011-12-05 18:43 ` Jerome Glisse
2011-12-05 19:11 ` Jerome Glisse
2011-12-05 19:27 ` Markus Trippelsdorf
2011-12-05 20:10 ` Pekka Enberg
2011-12-05 20:20 ` Jerome Glisse
2011-12-05 10:44 ` David Laight
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox