From: Eric Anholt <eric@anholt.net>
To: Keith Packard <keithp@keithp.com>, mesa-dev@lists.freedesktop.org
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH] dri3: Support GLX_INTEL_swap_event
Date: Mon, 25 Nov 2013 13:48:51 -0800 [thread overview]
Message-ID: <87hab0cfuk.fsf@eliezer.anholt.net> (raw)
In-Reply-To: <1385103489-24727-1-git-send-email-keithp@keithp.com>
[-- Attachment #1.1: Type: text/plain, Size: 1543 bytes --]
Keith Packard <keithp@keithp.com> writes:
> The easy part is turning on the extension, now that the X server has a patch
> to send the events.
>
> The only trick was making sure the Present extension reliably provided the
> right 'sbc' count back in the event, and that's done by making sure the sbc
> count is always the same as the sequence number that we send in the
> PresentPixmap requests, and that's done by using the same variable for both
> roles.
I'd prefer to see sbc stay with its current name, since that's its name
in the specs we're trying to implement (GLX_OML_sync_control,
GLX_INTEL_swap_event). If you drop the rename from the patch,
Reviewed-by: Eric Anholt <eric@anholt.net>
I think our handling of SBC for glXWaitForSbcOML() is wrong. From the
OML_sync_control spec:
The SBC value is incremented by the graphics driver at the completion
of each buffer swap (e.g., the pixel copy has been completed or the
hardware register that swaps memory banks has been written). For pixel
formats that do not contain a back buffer, the SBC will always be
returned as 0.
I read that as "SBC is incremented when the PresentComplete comes in"
not "SBC is incremented when we generate the Present request".
Otherwise glXWaitForSbcOML doesn't make much sense. (in the "e.g." I'm
assuming they're talking a hardware register for pageflipping that
immediately starts scanning out the new stuff, not our fancy new
automatically double buffered ones that you have to push hard on to get
an immediate pageflip mode)
[-- Attachment #1.2: Type: application/pgp-signature, Size: 835 bytes --]
[-- Attachment #2: Type: text/plain, Size: 156 bytes --]
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev
next prev parent reply other threads:[~2013-11-25 21:48 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-22 6:58 [PATCH] dri3: Support GLX_INTEL_swap_event Keith Packard
2013-11-25 21:48 ` Eric Anholt [this message]
2013-11-25 22:44 ` Keith Packard
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=87hab0cfuk.fsf@eliezer.anholt.net \
--to=eric@anholt.net \
--cc=dri-devel@lists.freedesktop.org \
--cc=keithp@keithp.com \
--cc=mesa-dev@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox