summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2011-06-29 15:48:34 -0400
committerAdam Jackson <ajax@redhat.com>2012-03-09 12:02:41 -0500
commit245371b3ff48a9b5089a02c02056a1df5999f1fd (patch)
treec17d344d1cfb97e4a577eaf6c1e1536624b25270
parentb1be72c5ca6cb98ba64637990b142be0f1710a19 (diff)
dri2: Don't block GLX clients on VT switchdri2-no-block
This was necessary in DRI1 for a variety of reasons (SAREA ownership, VRAM layout, etc). None of that is relevant to DRI2. Tested with Gnome 3 on an Ironlake GPU. As a pleasant side effect, we no longer need the ScrnInfoRec type, which means DRI2 is (at least very nearly) DDX-independent. Signed-off-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--glx/glxdri2.c51
1 files changed, 0 insertions, 51 deletions
diff --git a/glx/glxdri2.c b/glx/glxdri2.c
index 5e524db99..96ab30386 100644
--- a/glx/glxdri2.c
+++ b/glx/glxdri2.c
@@ -64,9 +64,6 @@ struct __GLXDRIscreen {
void *driver;
int fd;
- xf86EnterVTProc *enterVT;
- xf86LeaveVTProc *leaveVT;
-
const __DRIcoreExtension *core;
const __DRIdri2Extension *dri2;
const __DRI2flushExtension *flush;
@@ -594,48 +591,6 @@ static const __DRIextension *loader_extensions[] = {
NULL
};
-static Bool
-glxDRIEnterVT (int index, int flags)
-{
- ScrnInfoPtr scrn = xf86Screens[index];
- Bool ret;
- __GLXDRIscreen *screen = (__GLXDRIscreen *)
- glxGetScreen(screenInfo.screens[index]);
-
- LogMessage(X_INFO, "AIGLX: Resuming AIGLX clients after VT switch\n");
-
- scrn->EnterVT = screen->enterVT;
-
- ret = scrn->EnterVT (index, flags);
-
- screen->enterVT = scrn->EnterVT;
- scrn->EnterVT = glxDRIEnterVT;
-
- if (!ret)
- return FALSE;
-
- glxResumeClients();
-
- return TRUE;
-}
-
-static void
-glxDRILeaveVT (int index, int flags)
-{
- ScrnInfoPtr scrn = xf86Screens[index];
- __GLXDRIscreen *screen = (__GLXDRIscreen *)
- glxGetScreen(screenInfo.screens[index]);
-
- LogMessage(X_INFO, "AIGLX: Suspending AIGLX clients for VT switch\n");
-
- glxSuspendClients();
-
- scrn->LeaveVT = screen->leaveVT;
- (*screen->leaveVT) (index, flags);
- screen->leaveVT = scrn->LeaveVT;
- scrn->LeaveVT = glxDRILeaveVT;
-}
-
static void
initializeExtensions(__GLXDRIscreen *screen)
{
@@ -696,7 +651,6 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
const char *driverName, *deviceName;
__GLXDRIscreen *screen;
size_t buffer_size;
- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
screen = calloc(1, sizeof *screen);
if (screen == NULL)
@@ -771,11 +725,6 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
screen->base.GLXmajor = 1;
screen->base.GLXminor = 4;
- screen->enterVT = pScrn->EnterVT;
- pScrn->EnterVT = glxDRIEnterVT;
- screen->leaveVT = pScrn->LeaveVT;
- pScrn->LeaveVT = glxDRILeaveVT;
-
LogMessage(X_INFO,
"AIGLX: Loaded and initialized %s\n", driverName);