Author: dnusinow Date: 2006-10-13 16:08:32 -0400 (Fri, 13 Oct 2006) New Revision: 3754
Added: trunk/xserver/xorg-server/debian/patches/31_blocksigio.diff Modified: trunk/xserver/xorg-server/debian/changelog trunk/xserver/xorg-server/debian/patches/series Log: * Add 31_blocksigio.diff. This patch by Alan Hourihane, and it prevents a race condition when a driver tries to set the cursor state when the server is in the middle of switching resolution. Thanks to Frans Pop for reporting the bug, Michel D?\195?\164nzer for reading through the backtrace and diagnosing the problem, and Alan for the final patch. Closes: #390646. Modified: trunk/xserver/xorg-server/debian/changelog =================================================================== --- trunk/xserver/xorg-server/debian/changelog 2006-10-13 20:01:24 UTC (rev 3753) +++ trunk/xserver/xorg-server/debian/changelog 2006-10-13 20:08:32 UTC (rev 3754) @@ -6,8 +6,13 @@ [ David Nusinow ] * Add depends on xserver-xorg so that /etc/X11/X gets installed. Thanks Frans Pop. Closes: #392295 + * Add 31_blocksigio.diff. This patch by Alan Hourihane, and it prevents a + race condition when a driver tries to set the cursor state when the server + is in the middle of switching resolution. Thanks to Frans Pop for + reporting the bug, Michel Dänzer for reading through the backtrace and + diagnosing the problem, and Alan for the final patch. Closes: #390646. - -- David Nusinow <[EMAIL PROTECTED]> Fri, 13 Oct 2006 15:36:03 -0400 + -- David Nusinow <[EMAIL PROTECTED]> Fri, 13 Oct 2006 16:05:54 -0400 xorg-server (2:1.1.1-9) unstable; urgency=low Added: trunk/xserver/xorg-server/debian/patches/31_blocksigio.diff =================================================================== --- trunk/xserver/xorg-server/debian/patches/31_blocksigio.diff (rev 0) +++ trunk/xserver/xorg-server/debian/patches/31_blocksigio.diff 2006-10-13 20:08:32 UTC (rev 3754) @@ -0,0 +1,28 @@ +Index: xorg-server/hw/xfree86/common/xf86Cursor.c +=================================================================== +--- xorg-server.orig/hw/xfree86/common/xf86Cursor.c 2006-09-18 17:27:03.000000000 -0400 ++++ xorg-server/hw/xfree86/common/xf86Cursor.c 2006-10-13 16:03:16.000000000 -0400 +@@ -214,6 +214,7 @@ + ScreenPtr pCursorScreen; + Bool Switched; + int px, py; ++ int sigstate; + + if (!pScr->vtSema || !mode || !pScr->SwitchMode) + return FALSE; +@@ -233,6 +234,7 @@ + if (pScreen == pCursorScreen) + miPointerPosition(&px, &py); + ++ sigstate = xf86BlockSIGIO (); + xf86EnterServerState(SETUP); + Switched = (*pScr->SwitchMode)(pScr->scrnIndex, mode, 0); + xf86EnterServerState(OPERATING); +@@ -270,6 +272,7 @@ + pScr->frameY1 = pScr->virtualY - 1; + } + } ++ xf86UnblockSIGIO (sigstate); + + if (pScr->AdjustFrame) + (*pScr->AdjustFrame)(pScr->scrnIndex, pScr->frameX0, pScr->frameY0, 0); Modified: trunk/xserver/xorg-server/debian/patches/series =================================================================== --- trunk/xserver/xorg-server/debian/patches/series 2006-10-13 20:01:24 UTC (rev 3753) +++ trunk/xserver/xorg-server/debian/patches/series 2006-10-13 20:08:32 UTC (rev 3754) @@ -26,3 +26,4 @@ 28_mesa_copy_sub_buffer.diff -p0 29_mesa_reseed_makefile.diff -p0 30_fix_vmode_switch.diff +31_blocksigio.diff -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]