[RFC PATCH] Add XMir Xorg-nested-in-Mir helper extension

Maarten Lankhorst maarten.lankhorst at canonical.com
Mon Jul 22 01:14:59 PDT 2013


Op 22-07-13 07:08, christopher.halse.rogers at canonical.com schreef:
> From: Christopher James Halse Rogers <raof at ubuntu.com>
>
> This is missing too much functionality to be usefully appiled, but the
> skeleton is here and the APIs it relies on are sufficiently stable. Sending
> to the list for extra visibility and for preliminary comments.
>
> We're sufficiently different to Wayland to make sharing code difficult,
> but I think there's probably some scope for common code in output handling,
> and possibly in GLX's interaction with the underlying compositor.
>
> Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers at canonical.com>
> ---
>  configure.ac                        |  11 ++
>  hw/xfree86/Makefile.am              |   9 +-
>  hw/xfree86/common/xf86Config.c      |  12 ++
>  hw/xfree86/common/xf86Globals.c     |   3 +
>  hw/xfree86/common/xf86Init.c        |  20 +++
>  hw/xfree86/common/xf86Priv.h        |   3 +
>  hw/xfree86/xmir/Makefile.am         |  26 ++++
>  hw/xfree86/xmir/xmir-output.c       | 225 ++++++++++++++++++++++++++++++
>  hw/xfree86/xmir/xmir-private.h      |  84 +++++++++++
>  hw/xfree86/xmir/xmir-thread-proxy.c | 115 +++++++++++++++
>  hw/xfree86/xmir/xmir-window.c       | 271 ++++++++++++++++++++++++++++++++++++
>  hw/xfree86/xmir/xmir.c              | 217 +++++++++++++++++++++++++++++
>  hw/xfree86/xmir/xmir.h              |  92 ++++++++++++
>  include/xorg-server.h.in            |   3 +
>  test/Makefile.am                    |   9 +-
>  test/xmir-thread-proxy.c            | 154 ++++++++++++++++++++
>  16 files changed, 1251 insertions(+), 3 deletions(-)
>  create mode 100644 hw/xfree86/xmir/Makefile.am
>  create mode 100644 hw/xfree86/xmir/xmir-output.c
>  create mode 100644 hw/xfree86/xmir/xmir-private.h
>  create mode 100644 hw/xfree86/xmir/xmir-thread-proxy.c
>  create mode 100644 hw/xfree86/xmir/xmir-window.c
>  create mode 100644 hw/xfree86/xmir/xmir.c
>  create mode 100644 hw/xfree86/xmir/xmir.h
>  create mode 100644 test/xmir-thread-proxy.c

A few quick notes..

- Please use the prime import calls in the drivers instead of duplicating the functionality.
- Instead of overriding AuthMagic2 in every driver, this should be done in xmir.
- The RFC patch for nouveau mir compositor support should be sent to xorg-devel too.
- You added a NVHasMirSupport function, but the xserver should already know whether it has
  a drm fd for the pci-id before calling the probe function, so that check should not be in
  the ddx.
- Any chance of getting rid of the separate mir thread and using xorg's polling mechanism?

~Maarten



More information about the xorg-devel mailing list