Am 15.11.2013 09:27, schrieb Michel
Dänzer:
the relevant syslog part is:On Fre, 2013-11-15 at 08:49 +0100, Jochen Rollwagen wrote:I think there are two issues here: the first is the missing alignment workaround, since i'll be upgrading to 3.4.69 anyway i'll insert some diagnostic messages in radeon_device.c and see what happens.Yes, please do that before speculating more about the problem.But i'm pretty certain now that this isn't the cause for the lockups. They are probably (quite certainly) caused by the dynamic binding/unbinding of AGP memory which the Uninorth chipset used in 32-bit powermacs obviously doesn't support."doesn't support" is too strong; it's working fine on this PowerBook5,8. But the older the revision of UniNorth, the more quirks.All it supports seems to be statically allocating a 256 MB contigouous non-cacheable AGP aperture and using that (since the chipset doesn't do any address mapping via the GART as indicated in the OpenBSD code).It does address mapping for the GPU, that's the whole point of the GART. What UniNorth doesn't do in contrast to most AGP bridges is provide a linear aperture to the CPU as well. But that shouldn't be an issue per se.So to get AGP mode working again on those machines one would have to disable the dynamic memory stuff. Question: Would that require changes in the driver only or also in the DRM ?It's not really possible with radeon KMS. /var/log/syslog:Nov 22 11:32:08 mac-mini kernel: [ 3.363099] [drm] Initialized radeon 2.16.0 20080528 for 0000:00:10.0 on minor 0 /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.476580] radeon 0000:00:10.0: GPU lockup CP stall for more than 10000msec /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.477629] radeon 0000:00:10.0: GPU reset succeed /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.655218] kernel BUG at drivers/gpu/drm/radeon/radeon_object.c:410! /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.660331] Modules linked in: dm_crypt arc4 btusb parport_pc ppdev b43 bnep joydev bluetooth lp mac_hid parport rtc_generic mac80211 snd_aoa_codec_onyx snd_aoa_codec_tas snd_aoa_codec_toonie cfg80211 snd_aoa_fabric_layout snd_aoa snd_aoa_i2sbus snd_aoa_soundbus bcma snd_powermac snd_pcm snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device snd soundcore snd_page_alloc usbhid hid radeon firewire_ohci sungem firewire_core crc_itu_t sungem_phy ttm drm_kms_helper ssb drm /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.664059] NIP [f15b5158] radeon_bo_get_surface_reg+0x30/0x144 [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.664313] LR [f159b7b8] radeon_surface_init+0x3c/0xac [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.664657] [eba63c10] [f15d10bc] r100_pll_rreg+0x58/0x70 [radeon] (unreliable) /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.664931] [eba63c30] [f159b7b8] radeon_surface_init+0x3c/0xac [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.665184] [eba63c50] [f15d2edc] r100_resume+0x68/0x104 [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.665414] [eba63c70] [f159d54c] radeon_gpu_reset+0x120/0x164 [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.665661] [eba63c90] [f15b2544] radeon_fence_wait+0x3d8/0x404 [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.665914] [eba63d00] [f15c7618] radeon_ib_get+0x250/0x2d0 [radeon] /var/log/syslog:Nov 22 11:41:03 mac-mini kernel: [ 554.666155] [eba63d50] [f15c9c80] radeon_cs_ioctl+0x3c4/0x6e0 [radeon] the code where the kernel bug seems to hit is int radeon_bo_get_surface_reg(struct radeon_bo *bo) { struct radeon_device *rdev = bo->rdev; struct radeon_surface_reg *reg; struct radeon_bo *old_object; int steal; int i; BUG_ON(!atomic_read(&bo->tbo.reserved)); |
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel