From: Helge Deller <deller@gmx.de>
To: Alex Deucher <alexdeucher@gmail.com>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: radeon: writeback-issues since kernel 2.6.34 on ATI FireMV 2200 PCI
Date: Wed, 04 Jan 2012 20:33:17 +0100 [thread overview]
Message-ID: <4F04A97D.4060707@gmx.de> (raw)
In-Reply-To: <CADnq5_PDemOw9_PPX3Gcz0SO6P0toqT2jyDHcfhXHNN9=BebzQ@mail.gmail.com>
On 01/04/2012 12:37 AM, Alex Deucher wrote:
> On Tue, Jan 3, 2012 at 6:12 PM, Helge Deller<deller@gmx.de> wrote:
>> On 01/03/2012 03:27 PM, Alex Deucher wrote:
>>>
>>> On Mon, Jan 2, 2012 at 5:07 PM, Helge Deller<deller@gmx.de> wrote:
>>>>
>>>> I'm facing the problem with the radeon drm driver, that I now manually
>>>> need
>>>> to set the kernel module parameter radeon.no_wb to 1 at bootup, else X
>>>> just
>>>> hangs in average up to 8 seconds per minute without any real activity (X
>>>> or
>>>> the video driver just seems to wait for something..).
>>>>
>>>> Fedora 13 (kernel 2.6.34.9-69.fc13.x86_64) worked without problems, while
>>>> all following Fedora distributions including F16 have this problem.
>>>> I'm using a dual-DVI ATI RV280 [FireMV 2200 PCI].
>>>>
>>>> I did compared the sources of those kernels and the only obvious change
>>>> to
>>>> me is in radeon_ring.c: radeon_ring_free_size() where those lines were
>>>> added
>>>> at the top of the function:
>>>> if (rdev->wb.enabled)
>>>> rdev->cp.rptr =
>>>> le32_to_cpu(rdev->wb.wb[RADEON_WB_CP_RPTR_OFFSET/4]);
>>>>
>>>> Given the problems I'm seeing (X-Windows hangs for a few seconds every
>>>> time)
>>>> this fits with the idea, that the driver is waiting for a free slot but
>>>> can't find any (maybe due to wrong values returned by not-working WB?).
>>>>
>>>> I'm wondering, if "rdev->wb.enabled" is correct in this place and if
>>>> "dev_priv->writeback_works" shouldn't be used instead here?
>>>>
>>>
>>> It's possible that writeback doesn't work on your system in which case
>>> no_wb=1 is apprioriate. dev_priv->writeback_works is part of the old
>>> UMS drm and is not used by KMS. The KMS code does not test if
>>> writeback works prior to enabling it like UMS did. The slow down you
>>> are seeing is caused by the driver waiting for the fence to be written
>>> back to memory. If writeback does not work, the fence is never
>>> written by the hw and the driver has to wait for the fence to time
>>> out.
>>
>>
>> Alex, thanks for the explanations.
>> In my opinion this is a regression then. The old code worked without
>> problems, while with the new driver (or only because of the added code
>> lines) the driver doesn't work out of the box.
>
> I just posted a patch to disable writeback by default on KMS on pre-R300 chips:
> http://lists.freedesktop.org/archives/dri-devel/2012-January/017829.html
Thanks a lot for this patch and especially for scheduling it for inclusion into the stable kernel series!
It should fix my problems.
Helge
>
>
>> Wouldn't it be an idea to port over the old UMS writeback-check-test to the
>> new KMS code base to avoid the issues I'm seeing?
>
> Maybe, assuming the writeback test reliably fails which I'm not sure
> is the case. UMS didn't utilize the hardware to the same extent that
> KMS does so it was less likely to be an issue there.
>
> Alex
>
>> I would be willing to test such code or even provide an initial patch if
>> necessary.
>>
>> Helge
prev parent reply other threads:[~2012-01-04 19:33 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-02 22:07 radeon: writeback-issues since kernel 2.6.34 on ATI FireMV 2200 PCI Helge Deller
2012-01-03 14:27 ` Alex Deucher
2012-01-03 23:12 ` Helge Deller
2012-01-03 23:37 ` Alex Deucher
2012-01-04 19:33 ` Helge Deller [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F04A97D.4060707@gmx.de \
--to=deller@gmx.de \
--cc=alexdeucher@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.