xserver-xorg-video-ati: Changes to 'ubuntu'
debian/changelog | 7 +++++++
debian/patches/xmir.patch | 43 ++++++++++++++++++++++++-------------------
2 files changed, 31 insertions(+), 19 deletions(-)
New commits:
commit 808d5ac292ae4852b661fd79510769768cbf9507
Author: Christopher James Halse Rogers <raof@ubuntu.com>
Date: Wed Oct 30 14:01:15 2013 +1100
xmir: Fix intermittent crash on screen unlock
diff --git a/debian/changelog b/debian/changelog
index 650e537..eb42ce4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+xserver-xorg-video-ati (1:7.2.0-0ubuntu11) UNRELEASED; urgency=low
+
+ * xmir.patch: Don't register uevent handler under XMir; no good can come of
+ it. Fixes intermittent crash on screen unlock.
+
+ -- Christopher James Halse Rogers <raof@ubuntu.com> Wed, 30 Oct 2013 14:00:45 +1100
+
xserver-xorg-video-ati (1:7.2.0-0ubuntu10) saucy; urgency=low
* Drop libatomic-ops-dev from build-deps.
diff --git a/debian/patches/xmir.patch b/debian/patches/xmir.patch
index 5cbbf72..d91a1f7 100644
--- a/debian/patches/xmir.patch
+++ b/debian/patches/xmir.patch
@@ -205,7 +205,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
xf86DrvMsg(scrn->scrnIndex, X_ERROR,
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
-@@ -220,7 +220,11 @@
+@@ -220,10 +220,15 @@
return FALSE;
pScreen->CreateScreenResources = RADEONCreateScreenResources_KMS;
@@ -217,8 +217,13 @@ Date: Mon Jul 22 17:02:17 2013 +1000
+ else if (!drmmode_set_desired_modes(pScrn, &info->drmmode))
return FALSE;
- drmmode_uevent_init(pScrn, &info->drmmode);
-@@ -285,6 +289,66 @@
+- drmmode_uevent_init(pScrn, &info->drmmode);
++ if (!xorgMir)
++ drmmode_uevent_init(pScrn, &info->drmmode);
+
+ if (info->r600_shadow_fb) {
+ pixmap = pScreen->GetScreenPixmap(pScreen);
+@@ -285,6 +290,66 @@
}
#endif
@@ -285,7 +290,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
{
SCREEN_PTR(arg);
-@@ -302,6 +366,10 @@
+@@ -302,6 +367,10 @@
#ifdef RADEON_PIXMAP_SHARING
radeon_dirty_update(pScreen);
#endif
@@ -296,7 +301,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
}
static void
-@@ -606,6 +674,22 @@
+@@ -606,6 +675,22 @@
dev->domain, dev->bus, dev->dev, dev->func);
#endif
@@ -319,7 +324,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
info->dri2.drm_fd = drmOpen("radeon", busid);
if (info->dri2.drm_fd == -1) {
-@@ -835,6 +919,14 @@
+@@ -835,6 +920,14 @@
if (!RADEONPreInitChipType_KMS(pScrn))
goto fail;
@@ -334,7 +339,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (radeon_open_drm_master(pScrn) == FALSE) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Kernel modesetting setup failed\n");
goto fail;
-@@ -909,10 +1001,14 @@
+@@ -909,10 +1002,14 @@
}
info->swapBuffersWait = xf86ReturnOptValBool(info->Options,
@@ -350,7 +355,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (drmmode_pre_init(pScrn, &info->drmmode, pScrn->bitsPerPixel / 8) == FALSE) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Kernel modesetting setup failed\n");
goto fail;
-@@ -922,7 +1018,10 @@
+@@ -922,7 +1019,10 @@
pRADEONEnt->HasCRTC2 = FALSE;
else
pRADEONEnt->HasCRTC2 = TRUE;
@@ -362,7 +367,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
/* fix up cloning on rn50 cards
* since they only have one crtc sometimes the xserver doesn't assign
-@@ -1122,6 +1221,11 @@
+@@ -1122,6 +1222,11 @@
if (info->accel_state->use_vbos)
radeon_vbo_free_lists(pScrn);
@@ -374,7 +379,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
drmDropMaster(info->dri2.drm_fd);
drmmode_fini(pScrn, &info->drmmode);
-@@ -1150,6 +1254,21 @@
+@@ -1150,6 +1255,21 @@
RADEONFreeRec(pScrn);
}
@@ -396,7 +401,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
Bool RADEONScreenInit_KMS(SCREEN_INIT_ARGS_DECL)
{
ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
-@@ -1157,7 +1276,7 @@
+@@ -1157,7 +1277,7 @@
int subPixelOrder = SubPixelUnknown;
char* s;
void *front_ptr;
@@ -405,7 +410,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
pScrn->fbOffset = 0;
-@@ -1168,7 +1287,8 @@
+@@ -1168,7 +1288,8 @@
pScrn->defaultVisual)) return FALSE;
miSetPixmapDepths ();
@@ -415,7 +420,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (ret) {
ErrorF("Unable to retrieve master\n");
return FALSE;
-@@ -1185,7 +1305,8 @@
+@@ -1185,7 +1306,8 @@
"failed to initialise GEM buffer manager");
return FALSE;
}
@@ -425,7 +430,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (!info->csm)
info->csm = radeon_cs_manager_gem_ctor(info->dri2.drm_fd);
-@@ -1309,7 +1430,10 @@
+@@ -1309,7 +1431,10 @@
/* Cursor setup */
miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
@@ -437,7 +442,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (RADEONCursorInit_KMS(pScreen)) {
}
}
-@@ -1351,6 +1475,8 @@
+@@ -1351,6 +1476,8 @@
info->CreateScreenResources = pScreen->CreateScreenResources;
pScreen->CreateScreenResources = RADEONCreateScreenResources_KMS;
@@ -446,7 +451,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
#ifdef RADEON_PIXMAP_SHARING
pScreen->StartPixmapTracking = PixmapStartDirtyTracking;
pScreen->StopPixmapTracking = PixmapStopDirtyTracking;
-@@ -1385,13 +1511,13 @@
+@@ -1385,13 +1512,13 @@
{
SCRN_INFO_PTR(arg);
RADEONInfoPtr info = RADEONPTR(pScrn);
@@ -463,7 +468,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
if (ret)
ErrorF("Unable to retrieve master\n");
info->accel_state->XInited3D = FALSE;
-@@ -1399,7 +1525,9 @@
+@@ -1399,7 +1526,9 @@
pScrn->vtSema = TRUE;
@@ -474,7 +479,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
return FALSE;
return TRUE;
-@@ -1414,7 +1542,8 @@
+@@ -1414,7 +1543,8 @@
xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
"RADEONLeaveVT_KMS\n");
@@ -484,7 +489,7 @@ Date: Mon Jul 22 17:02:17 2013 +1000
xf86RotateFreeShadow(pScrn);
-@@ -1540,6 +1669,7 @@
+@@ -1540,6 +1670,7 @@
}
info->front_surface = surface;
}
Reply to: