KMS and Radeon RS880 (HD 4200)

Alex Deucher alexdeucher at gmail.com
Wed Jul 14 16:22:07 PDT 2010


On Wed, Jul 14, 2010 at 7:02 PM, Godfrey Benitez <xlistmail at yahoo.com> wrote:
> On Wed, 7/14/10, alexdeucher wrote:
>> On Wed, Jul 14, 2010 at 8:29 AM, xlistmail wrote:
>> > I have an AMD 785G-based motherboard with built-in Radeon
>> > graphics identified by lspci as "ATI Technologies Inc RS880
>> > [Radeon HD 4200]". I can easily get month-long uptimes
>> > when Kernel Mode Setting is disabled. However, when KMS
>> > is enabled, the screen locks within two days of running
>> > continuously, sometime even less. By lock, I mean the monitor
>> > turns black. The keyboard still appears responsive, I can
>> > toggle Num Lock and Caps Lock on and off,  and I can issue
>> > Ctrl-Alt-Delete to reboot the computer.
>> >
>> > The bug appears to be randomly triggered. It has happened
>> > while I am running widely different programs like Firefox
>> > and Abiword. (Surprisingly, the bug has yet to happen
>> > when I'm playing a presumably graphics-intensive 3D game
>> > like Glest). Interestingly, however, the bug happens more
>> > frequently (it happens faster) when I choose to reboot the
>> > computer (hot restart) rather than shut it down and then
>> > turn it back on (cold start).
>> >
>> > The kernel log (kern.log) shows a string of error messages
>> > that begins (trimmed to avoid spamming the list):
>>
>> That's a GPU lockup.  Unfortunately, unless you have a reliable test
>> case, it's very hard to track down the cause.
>>
>> > Jul 14 16:45:19 localhost kernel: [121762.072083] [drm:radeon_fence_wait]
>> > *ERROR* fence(ffff880076f71a40:0x0130ECFB) 504ms timeout going to reset GPU
>> > Jul 14 16:45:19 localhost kernel: [121762.072096] radeon 0000:01:05.0: GPU
>> > softreset
>> > Jul 14 16:45:19 localhost kernel: [121762.072101] radeon 0000:01:05.0:
>> > R_008010_GRBM_STATUS=0xA27334AC
>
> [etc]
>
> Thanks for the reply. I was just hoping there was some other magic
> option I could pass to modprobe besides "radeon modeset=(0|1)"?
> modinfo gives several other options for the radeon module, omitting
> the obviously nonrelevant ones like benchmark, tv and testing:
>
> no_wb:Disable AGP writeback for scratch registers (int)
> dynclks:Disable/Enable dynamic clocks (int)
> r4xx_atom:Enable ATOMBIOS modesetting for R4xx (int)
> vramlimit:Restrict VRAM for testing (int)
> agpmode:AGP Mode (-1 == PCI) (int)
> gartsize:Size of PCIE/IGP gart to setup in megabytes (32,64, etc)
> connector_table:Force connector table (int)
> new_pll:Select new PLL code for AVIVO chips (int)

None of those are relevant in this case.

>
> Also, while I'm running without KMS at the moment, I remember seeing a BIOS
> warning when I restarted my system after the X freeze. If I recall correctly
> it mentioned something about a "sync flood". My IGP is using a combination
> of UMA plus sideport memory (with no option to run on Sideport alone.)
>
> Is there a difference in the way the kernel handles modesetting so that
> user mode doesn't crash?

It's not modesetting that causes a GPU hang, it's command buffers that
are sent to the GPU for drawing.  The 3D state for the various
acceleration routines is basically the same with kms and ums, but kms
supports additional functionality (real memory manager, interrupts,
etc.).  It's hard to say where the problem is unless you can get a
reliable test case.  There are always improvements.  As I said, you
should try a newer kernel.

Alex



More information about the xorg mailing list