Bug 35472
Summary: | [bisected] [r600] radeondrmfb rendering is broken and running X makes GPU lock-up on RV770 CE (Radeon HD 4730) | ||
---|---|---|---|
Product: | Drivers | Reporter: | Sergey Kondakov (virtuousfox) |
Component: | Video(DRI - non Intel) | Assignee: | drivers_video-dri |
Status: | CLOSED CODE_FIX | ||
Severity: | normal | CC: | alexdeucher, florian |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.38 | Subsystem: | |
Regression: | Yes | Bisected commit-id: | |
Attachments: |
full dmesg from 2.6.39
.config from 2.6.39 full dmesg from 2.6.37 2.6.39-overview_small.jpg 2.6.39-X_small.jpg 2.6.39-close-up_small.jpg Xorg.0.log_2.6.37 Xorg.0.log_2.6.39 fix |
Description
Sergey Kondakov
2011-05-20 04:03:20 UTC
Created attachment 58692 [details]
full dmesg from 2.6.39
Created attachment 58702 [details]
.config from 2.6.39
created via `make oldconfig` and based on .config from working 2.6.37
Can you bisect? Created attachment 58712 [details]
full dmesg from 2.6.37
dmesg from working kernel
you mean like taking kernel's git and bisecting entire commit range between 2.6.37 and 2.6.38 (or, more likely, 2.6.37.4 and 2.6.38-rc4 which i think i've tested) while rebooting every time ? i'm not sure if i up for it but if i am then it may take quite a while. meanwhile i will also try to get a photograph of the screen. but also not today, probably. any easily gathered info, however, i can drop anytime. Created attachment 58732 [details]
2.6.39-overview_small.jpg
this is how screen looks like with this glitch since 2.6.38.
all is ok on another PC with r300.
Created attachment 58742 [details]
2.6.39-X_small.jpg
this is all that X manages to draw with >=2.6.38
Created attachment 58752 [details]
2.6.39-close-up_small.jpg
close-up on radeondrmfb area where stuff is drawable at all (it always like that when TV is connected via S-video=>Composite cabling)
Created attachment 58762 [details]
Xorg.0.log_2.6.37
X log with normal kernel
Created attachment 58782 [details]
Xorg.0.log_2.6.39
X log with bad kernel
i tried 3.0.0-rc4 today. glitch is still present but i tried changing kernel config from: CONFIG_FIRMWARE_IN_KERNEL=y CONFIG_EXTRA_FIRMWARE="radeon/R600_rlc.bin radeon/R700_rlc.bin" CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware" to: CONFIG_FIRMWARE_IN_KERNEL=y CONFIG_EXTRA_FIRMWARE="" got an error: [ 0.538980] [drm] Loading RV770 Microcode [ 60.896109] [drm:rv770_startup] *ERROR* Failed to load firmware! but KMS launched with no grid and X started up too! there is no acceleration however and mesa runs from llvmpipe instead of r600g. ok, i've got some time & patience to do a bisect and this is what it came up with: 9535ab7323351bacf02d82af79921df1d6594969 is the first bad commit commit 9535ab7323351bacf02d82af79921df1d6594969 Author: Alex Deucher <alexdeucher@gmail.com> Date: Mon Nov 22 17:56:18 2010 -0500 drm/radeon/kms: setup mc chremap properly on r7xx/evergreen Should improve performance slightly and possibly fix some issues. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com> :040000 040000 14a61521aaac9fab80f19b41a6762c8ad21eb237 7b084f2dc2f42c928ffd09792f43815180d13057 M drivers looks like that commit really changes RV770 behaviour in not a nice way it's definitely it - i took 2.6.39 kernel and reverted RV770-specific part of that commit and it runs as expected. please, revert or fix. Created attachment 63872 [details]
fix
The attached patch should fix the issue.
yep, patch works. is it going to be merged in mainline ? to what version ? I've sent the patch to Dave and cc'ed stable. If it doesn't make 3.0, it will show up in 3.1 and get into older kernels via stable. thanks ! A patch referencing this bug report has been merged in Linux v3.0-rc6: commit daf54f1f363a61c618662ef66d4bf09d2b090941 Author: Alex Deucher <alexdeucher@gmail.com> Date: Thu Jun 30 08:59:55 2011 -0400 drm/radeon/kms: Fix chremap setup on RV770 CE |