Bug 37112
Summary: | GPU lockup when trying to use profile based frequency switching | ||
---|---|---|---|
Product: | Drivers | Reporter: | Hrvoje Senjan (hrvoje.senjan) |
Component: | Video(DRI - non Intel) | Assignee: | drivers_video-dri |
Status: | NEW --- | ||
Severity: | high | CC: | alan, alexdeucher, rjw, szg00000, zajec5 |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 3.9-rc2 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
kern.log
Xorg.0.log dmidecode messages |
Description
Hrvoje Senjan
2011-06-10 06:11:22 UTC
Created attachment 61412 [details]
kern.log
Created attachment 61422 [details]
Xorg.0.log
Created attachment 61432 [details]
dmidecode
Created attachment 61492 [details]
messages
messages log from Fedora 15/2.6.38.7
My first guess is , that kernel changes memory clock too low - with fglrx lowest memory clock is at 400MHz , but with radeon module/low frequency it changes it to 300MHz. (In reply to comment #5) > My first guess is , that kernel changes memory clock too low - with fglrx > lowest memory clock is at 400MHz , but with radeon module/low frequency it > changes it to 300MHz. Please, edit drivers/gpu/drm/radeon/radeon_pm.c, find: > if (rdev->asic->set_memory_clock && (mclk != rdev->pm.current_mclk)) { and make it > if (0) { Does it help? Yes it helps! :) Using default profile: default engine clock: 600000 kHz current engine clock: 594000 kHz default memory clock: 500000 kHz current memory clock: 495000 kHz voltage: 1100 mV PCIE lanes: 16 using low: default engine clock: 600000 kHz current engine clock: 109680 kHz default memory clock: 500000 kHz current memory clock: 495000 kHz voltage: 900 mV PCIE lanes: 16 I forgot to say 2 things: a)i tried your suggestion with 3.0.0-rc2 ,b) NO lockups :) (In reply to comment #6) > (In reply to comment #5) > > My first guess is , that kernel changes memory clock too low - with fglrx > > lowest memory clock is at 400MHz , but with radeon module/low frequency it > > changes it to 300MHz. > > Please, edit drivers/gpu/drm/radeon/radeon_pm.c, find: > > if (rdev->asic->set_memory_clock && (mclk != rdev->pm.current_mclk)) { > and make it > > if (0) { > > Does it help? @Rafał Any progress on this bug? It's a reall pain to recompile kerenels without powersaving :( Just tried 3.6 rc2. No lockups/hangs! There can be a screen flickering (mostly visible while scrolling), but now dynpm works correctly: cat /sys/kernel/debug/dri/0/radeon_pm_info default engine clock: 600000 kHz current engine clock: 297000 kHz default memory clock: 500000 kHz current memory clock: 396000 kHz voltage: 900 mV PCIE lanes: 16 Still locks up with low profile. Would really appreciate for some further info, the situation is the same with low and mid methods, it tries to change the memory clock too low. Thanks You should try the new dpm support in kernel 3.11 or newer. Boot with radeon.dpm=1 on the kernel command line in grub. I don't plan to put any more work into the old pm code. |