[RFC wayland-protocols] inputfd - direct input access protocol

Steven Newbury steve at snewbury.org.uk
Wed Apr 5 10:04:47 UTC 2017


On Wed, 2017-04-05 at 10:53 +0100, Daniel Stone wrote:
> Hi Steven,
> 
> On 5 April 2017 at 10:42, Steven Newbury <steve at snewbury.org.uk>
> wrote:
> > On Wed, 2017-04-05 at 10:25 +0100, Daniel Stone wrote:
> > > The compositor _must_ interpose every single keyboard/mouse
> > > event,
> > > and
> > > they are simple enough that it is possibly to easily encode them
> > > with
> > > universally-accepted concepts. Neither is true of gamepads or
> > > joysticks. Hence, a different protocol.
> > 
> > There's a reason the mouse support from the X DGA Extension out-
> > survived the "direct framebuffer access".  The latency through the
> > wire
> > whether X or Wayland for mouse input it just too high for mouse
> > controlled high framerate 3D games.  inputfd *will* be wanted for
> > mice,
> > and unlike keyboard there isn't the issue of state.  Arbitration
> > between desktop use and focused application utilising inputfd is
> > the
> > issue IMHO, and as Carsten says, I don't see why that is any
> > different
> > than if a game controller is your primary input device.
> 
> DGA's DirectMouse doesn't change the latency. It doesn't give the
> client a direct-to-kernel stream. It still results in the server
> doing
I wondered if I was implying that too strongly as I wrote it, I know it
didn't provide a direct-to-kernel stream.  Are you sure it didn't also
reduce latency though, even if only because it skipped the acceleration
code as you mention below? I suppose latency was bounded by the main
thread?

> some light internal processing in a signal handler, placing them on a
> queue, waiting to wake up, and then posting them to the client from
> the main thread. Its actual benefit was to give clients access to
> unaccelerated relative motion vectors. So the relative/confined
> pointer protocols put us on a par with 'DirectMouse' already there.
It's certainly sufficient for most use cases.  Are you sure about
DirectMouse parity?

> 
> I would suggest it only outlasted the direct framebuffer access
> because we later got DRI{1,2,3} for free with GL games, and because
> unlike direct framebuffer access, it wasn't catastrophically broken
> by
> later hardware.
Yes, of course.  DGA direct framebuffer access was pretty useless as a
graphics API.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20170405/3a67f18b/attachment.sig>


More information about the wayland-devel mailing list