All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org>
To: Mario Kleiner <mario.kleiner.de-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
	Emil Velikov
	<emil.l.velikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Ben Skeggs <bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH] Add Option "DRI3" to allow to disable DRI3 under EXA.
Date: Tue, 14 Jul 2015 11:26:02 -0400	[thread overview]
Message-ID: <CAKb7Uvi7pCT-rkFxfpsmw-P0UhF86ZrEdtmJDc3kU+REz7oZ3Q@mail.gmail.com> (raw)
In-Reply-To: <55A48575.5060100-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>

On Mon, Jul 13, 2015 at 11:43 PM, Mario Kleiner
<mario.kleiner.de@gmail.com> wrote:
> On 07/07/2015 09:51 PM, Ilia Mirkin wrote:
>>
>> Lastly, from some discussions with ajax on IRC, it appears that DRI3
>> is half-baked at best wrt sync between server and client. I think we
>> should just disable it by default for now, until issues are ironed
>> out. (Rather than what this patch has, which is default-on for Xorg >
>> some version.)
>
>
> What are the remaining known trouble spots wrt. sync? It seems to work
> pretty well at least for single gpu + unredirected fullscreen windows (==
> kms page flipping can be used for Presents. That's the use case i usually
> test very obsessively, as it matters very much for my type of applications,
> but other than that i only lightly "test" it via regular desktop use, so
> maybe that's were problems remain?

Adam is the one who actually understands it... I was just asking
questions and the answer was "that's broken". A user was using DRI3
with EXA (nouveau DDX), and was seeing render fail in the form of
stale things on the screen. The nouveau DDX does a lot of "implicit"
sync stuff... it just emits commands into a pushbuf without kicking
it. However the libdrm code has cleverness to kick out any pushbufs if
you do a nouveau_bo_wait and that bo has been referenced.

HOWEVER if you have a pixmap and you share it using the fd thing, and
another process makes a (shared) bo out of it, and then does a
nouveau_bo_wait, that in no way will cause the DDX to kick its
pushbuf. Apparently there's some sort of sync thing that's supposed to
happen, but that's entirely unimplemented for DRI3. Unfortunately I
can't provide more details than that, as my knowledge of X internals
is quite limited. Some sort of DRI drawable or GLX drawable or ...
something.

I have no proof that this is the cause of the issue the user was
seeing, in fact it's just as likely to be something else. However this
seems like a pretty significant issue to me.

>
> We can disable it by default on exa - intel and amd/radeon drivers also
> disable by default. However, on gpus >= maxwell only glamor accel is
> supported and glamor on nouveau is either dri3/present or no hw accel at all
> afaics.

You probably saw my patches to just remove glamor from nouveau :) That
integration doesn't support DRI2, which in turn means no core contexts
(due to lack of GLX_ARB_create_context_profile), and a slew of other
issues. Seemed easier to just tell people to go use modesetting, which
gets all of these things right(er).

>
> Btw. there are also a few patches made by Chris Wilson floating on the
> mailing list since around january, some are reviewed and tested by myself,
> but not included in xorg master. Might be good for people to have a look at
> them and maybe get them into xorg 1.18?

I would not oppose the reviewing of Chris's patches ;) However I'm in
no position to evaluate them myself.

>
>>
>> On Sat, Jul 4, 2015 at 3:03 PM, Emil Velikov <emil.l.velikov@gmail.com>
>> wrote:
>>>
>>> The DRI option with the intel ddx can be used to indicate the following
>>>   - whether dri is disabled
>>>   - the dri "version" - dri1, dri2, dri3
>>>   - the dri module name - doo_dri.so bar_dri.so
>>>
>>> I'm not sure how exactly it's supposed to work/works, and I believe
>>> most of that is due to legacy reasons. I'm just saying let's not do
>>> the whole thing - just the dri "version" would be great (as you
>>> suggested).
>
>
> I can change that to allow selection between "2" and "3" - at least for exa,
> on glamor the parameter "2" would either need to get ignored or it would
> completely disable hw acceleration. I went for consistency with the ati ddx
> because i found the intel variant too confusing. I think it changed multiple
> times during the last year.

Bleargh. The ati ddx option name is much newer. Has it seen a release
yet? It'd be really nice to get all the DDX's to just agree on
something, instead of having different-but-similar options which
confuse everyone.

  -ilia
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

  parent reply	other threads:[~2015-07-14 15:26 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-30  3:30 [PATCH] Add Option "DRI3" to allow to disable DRI3 under EXA Mario Kleiner
     [not found] ` <1435635043-3738-1-git-send-email-mario.kleiner.de-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-06-30  7:00   ` Martin Peres
2015-07-04 17:17   ` Ilia Mirkin
     [not found]     ` <CAKb7UvhOcQ1-y2q3_8RZzvLewhsZ3A1OHC=vo3uBSwX3XTR0Eg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-04 18:23       ` Emil Velikov
     [not found]         ` <CACvgo53NaCJ6r+1LdJEG78Zyi+SBfMu2y1Mkm2HCKUo7Co5zQw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-04 18:28           ` Ilia Mirkin
     [not found]             ` <CAKb7Uvj-7AeG8EQ58cZZhF1O7HU=E_VkKO8wi7LpitoNBmCjGg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-04 19:03               ` Emil Velikov
     [not found]                 ` <CACvgo50R5kPGVAwDYTUSCkY-Cfh=HENFDT8OdT=nNKLG85=S9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-07 19:51                   ` Ilia Mirkin
     [not found]                     ` <CAKb7UvhuYJxLk1zPQbdTgG_HQcbo0Zt_TnpHf7gD2apk+RYCdA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-14  3:43                       ` Mario Kleiner
     [not found]                         ` <55A48575.5060100-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-07-14 15:26                           ` Ilia Mirkin [this message]
     [not found]                             ` <CAKb7Uvi7pCT-rkFxfpsmw-P0UhF86ZrEdtmJDc3kU+REz7oZ3Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-14 19:00                               ` Mario Kleiner
     [not found]                                 ` <55A55C40.4000207-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-07-14 19:12                                   ` Ilia Mirkin
2015-07-18 11:09                                   ` Dave Airlie
     [not found]                                     ` <CAPM=9ty34G39nceFnarvs0qOoJiyqjcsgXD0FdB4Ye_O1D+EhQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-19  8:34                                       ` Mario Kleiner
     [not found]                                         ` <55AB6116.4000004-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-07-22  4:39                                           ` Dave Airlie
     [not found]                                             ` <CAPM=9twESbxOf+r4cy=-B+FNpKQwm8dvgbA9b-6XNbo275KLKw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-07-26  8:12                                               ` Mario Kleiner
2015-07-26 13:11                                       ` Pekka Paalanen
2015-07-24 15:40                           ` Ilia Mirkin

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=CAKb7Uvi7pCT-rkFxfpsmw-P0UhF86ZrEdtmJDc3kU+REz7oZ3Q@mail.gmail.com \
    --to=imirkin-frubxkncsvf2fbvcvol8/a@public.gmane.org \
    --cc=bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=emil.l.velikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=mario.kleiner.de-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.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.