radeon CS parser refactoring
Alex Deucher
alexdeucher at gmail.com
Fri Jan 4 15:42:23 PST 2013
On Fri, Jan 4, 2013 at 5:57 PM, Ilija Hadzic
<ihadzic at research.bell-labs.com> wrote:
>
> On Fri, 4 Jan 2013, Dave Airlie wrote:
>
>> Did you run these with pre-kms userspace etc to make sure it doesn't
>> cause regressions there?
>>
>
> I did some tests with UMS and shuffled a number of cards. As I feared, I ran
> into a number of unrelated problems, but in each case I have seen identical
> beahvior between the kernel with my patches and without. So as far as I can
> tell, my patches do not introduce regressions in legacy modes, althugh I am
> not sure about the coverage.
>
> Also, in one test, I think I have hit a genuine bug in ATI DDX (explained
> below).
>
> Below I describe what I saw with each card family. Maybe for some test cases
> I am missing some "magic" option in xorg.conf or maybe what I am seeing
> (mostly reduced feature set) is expected in UMS.
>
> * With an NI card (TURKS, HD6570 card), Xorg just plain tells me that the
> card is supported in KMS only mode. So, I guess, that's it for that
> card.
Evergreen was the last set of hardware supported by UMS.
>
> * A test with Evergreen (CEDAR) card works in UMS mode, but I can't
> get 3D acceleration. I see these messages in Xorg log file:
>
> [ 37.024] (II) RADEON(0): No DRI yet on Evergreen
UMS support for evergreen is modesetting only. No accel.
> .....
> .....
> [ 37.364] (II) AIGLX: Screen 0 is not DRI2 capable
> [ 37.364] (II) AIGLX: Screen 0 is not DRI capable
> [ 37.664] (II) AIGLX: Loaded and initialized swrast
> [ 37.664] (II) GLX: Initialized DRISWRAST GL provider for screen 0
>
> Sounds like just a "property" of UMS to me, but I am not sure.
> Nevertheless, the behavior with and without my kernel patches is
> identical. Still, 2D copying should still be exercising the CS
> parser, so there is some test coverage here.
>
> * A test with an R7xx card (RV730, E4690 card) results in a segfault in
> DDX. Again, this is irrespective of my kernel patches, so I believe
> that the bug has been there for a while and that it's in userland.
> The crash occurs in r600_set_render_target() function and what causes
> it is corrupted cb_conf->surface pointer. When the crash occurs it
> has a value of 0x1, which doesn't look like something that would live
> in .bss, .data or come from the heap. I didn't try other R6xx cards,
> but I suspect that they may have the same problem because they share
> the code in DDX. I don't know if UMS DDX will be maintained going
> forward, so I don't know if it makes sense to open a bug for this.
> BTW, DDX I am testing this with is 6.14.6
R6xx and r7xx are really all you need to worry about in this case.
R1xx-r5xx UMS uses a different kernel interface for command submission
and evergreen and later don't have UMS drm support. UMS r6xx/r7xx
support used the same kernel interface for command submission but the
kernel side was much simpler. Additionally, UMS requires the old
non-gallium 3D drivers. It sounds like some other change in the ddx
broke UMS support for r6xx/r7xx. UMS support was dropped for
xf86-video-ati 7.0.0, so we mostly want to try and avoid breaking
things for users with ancient userspace stacks and a new kernel. That
said, I'm not sure there are that many UMS users left.
Alex
>
> * A test with R300 card (Radeon X300 card) works (again identically
> with and without my patches), but again without 3D acceleration.
> So it's similar result and comment as with the Evergreen test, though
> relevant messages in Xorg log file are slightly different:
>
> [ 35.630] (EE) AIGLX error: r300 does not export required DRI extension
> [ 35.630] (EE) AIGLX: reverting to software rendering
> [ 35.915] (II) AIGLX: Loaded and initialized swrast
> [ 35.915] (II) GLX: Initialized DRISWRAST GL provider for screen 0
>
> Again, I don't know if this is just the way things are in UMS mode or if
> there is some configuration magic I need to do.
>
> So at this point I'd say that I have not seen anything that would indicate a
> regression in legacy mode, although the limitations I have hit make the
> tests more limited that I thought they would be (and KMS I tested quite a
> bit, so I am confident there).
>
> thanks,
>
> Ilija
>
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
More information about the dri-devel
mailing list