debian/changelog | 7 +++ debian/patches/102-fixup-close.diff | 77 ++++++++++++++++++++++++++++++++++++ debian/patches/series | 1 3 files changed, 85 insertions(+)
New commits: commit 0fd415f5c89966c3ae8f03cecb9f429570caadea Author: Maarten Lankhorst <maarten.lankho...@canonical.com> Date: Wed Mar 27 09:47:48 2013 +0100 release to raring diff --git a/debian/changelog b/debian/changelog index 15d078e..133724b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,9 @@ -xserver-xorg-video-nouveau (1:1.0.6-0ubuntu4) UNRELEASED; urgency=low +xserver-xorg-video-nouveau (1:1.0.6-0ubuntu4) raring; urgency=low * Clean up (forced) device close (LP: #1157614) - 102-fixup-close.diff - -- Maarten Lankhorst <maarten.lankho...@ubuntu.com> Mon, 25 Mar 2013 13:59:55 +0100 + -- Maarten Lankhorst <maarten.lankho...@ubuntu.com> Mon, 25 Mar 2013 14:01:46 +0100 xserver-xorg-video-nouveau (1:1.0.6-0ubuntu3) raring; urgency=low commit f16680f9dd6fd0adf36741692150f46dafc88894 Author: Maarten Lankhorst <maarten.lankho...@canonical.com> Date: Mon Mar 25 14:01:06 2013 +0100 Clean up (forced) device close (LP: #1157614) 102-fixup-close.diff diff --git a/debian/changelog b/debian/changelog index f30ada1..15d078e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xserver-xorg-video-nouveau (1:1.0.6-0ubuntu4) UNRELEASED; urgency=low + + * Clean up (forced) device close (LP: #1157614) + - 102-fixup-close.diff + + -- Maarten Lankhorst <maarten.lankho...@ubuntu.com> Mon, 25 Mar 2013 13:59:55 +0100 + xserver-xorg-video-nouveau (1:1.0.6-0ubuntu3) raring; urgency=low * Remove individual patches, sync to git a80785f792 to pick up some fixes. diff --git a/debian/patches/102-fixup-close.diff b/debian/patches/102-fixup-close.diff new file mode 100644 index 0000000..b9a6108 --- /dev/null +++ b/debian/patches/102-fixup-close.diff @@ -0,0 +1,77 @@ +--- a/src/drmmode_display.c ++++ b/src/drmmode_display.c +@@ -627,6 +627,9 @@ + drmmode_output->mode_output = + drmModeGetConnector(drmmode->fd, drmmode_output->output_id); + ++ if (!drmmode_output->mode_output) ++ return XF86OutputStatusDisconnected; ++ + switch (drmmode_output->mode_output->connection) { + case DRM_MODE_CONNECTED: + status = XF86OutputStatusConnected; +@@ -663,6 +666,9 @@ + drmModePropertyPtr props; + xf86MonPtr ddc_mon = NULL; + ++ if (!koutput) ++ return NULL; ++ + /* look for an EDID property */ + for (i = 0; i < koutput->count_props; i++) { + props = drmModeGetProperty(drmmode->fd, koutput->props[i]); +@@ -927,6 +933,9 @@ + drmModeGetConnector(drmmode->fd, drmmode_output->output_id); + } + ++ if (!drmmode_output->mode_output) ++ return FALSE; ++ + for (i = 0; i < drmmode_output->num_props; i++) { + drmmode_prop_ptr p = &drmmode_output->props[i]; + if (p->atoms[0] != property) +@@ -1437,6 +1446,7 @@ + if (drmmode->uevent_monitor) { + struct udev *u = udev_monitor_get_udev(drmmode->uevent_monitor); + ++ RemoveGeneralSocket(udev_monitor_get_fd(drmmode->uevent_monitor)); + udev_monitor_unref(drmmode->uevent_monitor); + udev_unref(u); + } +@@ -1524,6 +1534,12 @@ + drmmode_screen_fini(ScreenPtr pScreen) + { + ScrnInfoPtr scrn = xf86ScreenToScrn(pScreen); ++ drmmode_ptr drmmode = drmmode_from_scrn(scrn); + + drmmode_uevent_fini(scrn); ++ ++ /* Register a wakeup handler to get informed on DRM events */ ++ RemoveBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA, ++ drmmode_wakeup_handler, scrn); ++ RemoveGeneralSocket(drmmode->fd); + } +--- a/src/nv_driver.c ++++ b/src/nv_driver.c +@@ -432,8 +432,8 @@ + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "NVLeaveVT is called.\n"); + + ret = drmDropMaster(pNv->dev->fd); +- if (ret) +- ErrorF("Error dropping master: %d\n", ret); ++ if (ret && errno != EIO && errno != ENODEV) ++ ErrorF("Error dropping master: %i(%m)\n", -errno); + } + + static void +@@ -624,8 +624,9 @@ + { + NVPtr pNv = NVPTR(pScrn); + +- nouveau_device_del(&pNv->dev); + drmFree(pNv->drm_device_name); ++ nouveau_client_del(&pNv->client); ++ nouveau_device_del(&pNv->dev); + } + + static Bool diff --git a/debian/patches/series b/debian/patches/series index fdf7b34..3822187 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -4,3 +4,4 @@ 100-vblank-on.diff 101-git-a80785f792.diff +102-fixup-close.diff -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1ukm2a-0002js...@vasks.debian.org