xserver: Branch 'master' - 4 commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Feb 11 15:08:03 UTC 2020
.gitlab-ci.yml | 12 +++++++++---
hw/xfree86/drivers/modesetting/driver.c | 21 +++++++++++++++------
hw/xfree86/drivers/modesetting/driver.h | 3 ++-
hw/xfree86/drivers/modesetting/drmmode_display.c | 3 +--
4 files changed, 27 insertions(+), 12 deletions(-)
New commits:
commit 1310346d6052c91910f526cbdcc81061fe6abd94
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Feb 10 18:48:05 2020 +0100
gitlab-ci: Add meson build job with glamor disabled
To prevent breakage with glamor disabled from creeping in again.
Reviewed-by: Adam Jackson <ajax at redhat.com>
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5eb300da9..1b82083d5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -81,7 +81,13 @@ meson:
PIGLIT_DIR: /root/piglit
XTEST_DIR: /root/xts
script:
- - meson -Dc_args="-fno-common" -Dprefix=/usr -Dxephyr=true -Dwerror=true build/
+ - meson -Dc_args="-fno-common" -Dprefix=/usr -Dxephyr=true -Dwerror=true $MESON_EXTRA_OPTIONS build/
- ninja -j4 -C build/ install
- ninja -j4 -C build/ test
- .gitlab-ci/manpages-check
+
+meson-noglamor:
+ extends: meson
+ variables:
+ MESON_EXTRA_OPTIONS: >
+ -Dglamor=false
commit 72ccd7f540a36185ecdb62324c68496fb57e65fe
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Feb 10 18:44:11 2020 +0100
gitlab-ci: Drop "-build-and-test" job name suffix
It's long and kind of redundant.
Reviewed-by: Adam Jackson <ajax at redhat.com>
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ddc06a9f9..5eb300da9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -64,7 +64,7 @@ debian-testing:
after_script:
- ccache --show-stats
-autotools-build-and-test:
+autotools:
extends: .common-build-and-test
script:
- mkdir build/
@@ -75,7 +75,7 @@ autotools-build-and-test:
- cd ..
- .gitlab-ci/manpages-check
-meson-build-and-test:
+meson:
extends: .common-build-and-test
variables:
PIGLIT_DIR: /root/piglit
commit 49553049e871d03e9e26672843de8712d20f688a
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Feb 10 18:57:42 2020 +0100
modesetting: Remove local variable only used with glamor enabled
Resulted in a build failure with -Werror:
../hw/xfree86/drivers/modesetting/drmmode_display.c: In function ‘drmmode_crtc_set_mode’:
../hw/xfree86/drivers/modesetting/drmmode_display.c:759:15: error: unused variable ‘screen’ [-Werror=unused-variable]
759 | ScreenPtr screen = crtc->scrn->pScreen;
| ^~~~~~
Fixes: c66c548eabf0 "modesetting: Call glamor_finish from
drmmode_crtc_set_mode"
Reviewed-by: Adam Jackson <ajax at redhat.com>
diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
index c5ef91e05..27ad75049 100644
--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
@@ -756,7 +756,6 @@ drmmode_crtc_set_mode(xf86CrtcPtr crtc, Bool test_only)
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
drmmode_ptr drmmode = drmmode_crtc->drmmode;
- ScreenPtr screen = crtc->scrn->pScreen;
drmModeModeInfo kmode;
int output_count = 0;
uint32_t *output_ids = NULL;
@@ -770,7 +769,7 @@ drmmode_crtc_set_mode(xf86CrtcPtr crtc, Bool test_only)
#ifdef GLAMOR_HAS_GBM
/* Make sure any pending drawing will be visible in a new scanout buffer */
if (drmmode->glamor)
- glamor_finish(screen);
+ glamor_finish(crtc->scrn->pScreen);
#endif
if (ms->atomic_modeset) {
commit 0cb9fa7949d6c5398de220fbdbe1e262e943fcbb
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Feb 10 18:41:44 2020 +0100
modesetting: Fix build with glamor disabled
Fixes: cb1b1e184723 "modesetting: Indirect the glamor API through
LoaderSymbol"
Reviewed-by: Adam Jackson <ajax at redhat.com>
diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c
index d00e4a739..0c1867f02 100644
--- a/hw/xfree86/drivers/modesetting/driver.c
+++ b/hw/xfree86/drivers/modesetting/driver.c
@@ -743,9 +743,17 @@ FreeRec(ScrnInfoPtr pScrn)
}
-static void
-bind_glamor_api(void *mod, modesettingPtr ms)
+#ifdef GLAMOR_HAS_GBM
+
+static Bool
+load_glamor(ScrnInfoPtr pScrn)
{
+ void *mod = xf86LoadSubModule(pScrn, GLAMOR_EGL_MODULE_NAME);
+ modesettingPtr ms = modesettingPTR(pScrn);
+
+ if (!mod)
+ return FALSE;
+
ms->glamor.back_pixmap_from_fd = LoaderSymbolFromModule(mod, "glamor_back_pixmap_from_fd");
ms->glamor.block_handler = LoaderSymbolFromModule(mod, "glamor_block_handler");
ms->glamor.clear_pixmap = LoaderSymbolFromModule(mod, "glamor_clear_pixmap");
@@ -763,8 +771,12 @@ bind_glamor_api(void *mod, modesettingPtr ms)
ms->glamor.supports_pixmap_import_export = LoaderSymbolFromModule(mod, "glamor_supports_pixmap_import_export");
ms->glamor.xv_init = LoaderSymbolFromModule(mod, "glamor_xv_init");
ms->glamor.egl_get_driver_name = LoaderSymbolFromModule(mod, "glamor_egl_get_driver_name");
+
+ return TRUE;
}
+#endif
+
static void
try_enable_glamor(ScrnInfoPtr pScrn)
{
@@ -773,7 +785,6 @@ try_enable_glamor(ScrnInfoPtr pScrn)
OPTION_ACCEL_METHOD);
Bool do_glamor = (!accel_method_str ||
strcmp(accel_method_str, "glamor") == 0);
- void *mod;
ms->drmmode.glamor = FALSE;
@@ -788,9 +799,7 @@ try_enable_glamor(ScrnInfoPtr pScrn)
return;
}
- mod = xf86LoadSubModule(pScrn, GLAMOR_EGL_MODULE_NAME);
- if (mod) {
- bind_glamor_api(mod, ms);
+ if (load_glamor(pScrn)) {
if (ms->glamor.egl_init(pScrn, ms->fd)) {
xf86DrvMsg(pScrn->scrnIndex, X_INFO, "glamor initialized\n");
ms->drmmode.glamor = TRUE;
diff --git a/hw/xfree86/drivers/modesetting/driver.h b/hw/xfree86/drivers/modesetting/driver.h
index 60e4aaa96..7ee9f6827 100644
--- a/hw/xfree86/drivers/modesetting/driver.h
+++ b/hw/xfree86/drivers/modesetting/driver.h
@@ -132,6 +132,7 @@ typedef struct _modesettingRec {
void (*UpdatePacked)(ScreenPtr, shadowBufPtr);
} shadow;
+#ifdef GLAMOR_HAS_GBM
/* glamor API */
struct {
Bool (*back_pixmap_from_fd)(PixmapPtr, int, CARD16, CARD16, CARD16,
@@ -157,7 +158,7 @@ typedef struct _modesettingRec {
XF86VideoAdaptorPtr (*xv_init)(ScreenPtr, int);
const char *(*egl_get_driver_name)(ScreenPtr);
} glamor;
-
+#endif
} modesettingRec, *modesettingPtr;
#define glamor_finish(screen) ms->glamor.finish(screen)
More information about the xorg-commit
mailing list