summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2016-05-19 15:08:05 -0700
committerAdam Jackson <ajax@redhat.com>2016-07-18 15:27:51 -0400
commita414db021575accff64abad6f1047245e81c7476 (patch)
tree30075e970cc7a42fcc56cf4bc07cf2e94c169ba0
parent7762a602c1dfdd8cfcf2b8c2281cf4d683d05216 (diff)
dix: Intermediate GrabServer state 'GrabKickout' not needed
The intermediate grabState, "GrabKickout", was used to trigger dispatch into going back to WaitForSomething after doing a GrabServer so that the set of ready clients would be recomputed to match what the server should be processing. As we only process one client per WaitForSomething call, we will always hit WaitForSomething after finishing the current client, and so don't need any special case here. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--dix/dispatch.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/dix/dispatch.c b/dix/dispatch.c
index 28a3c3f5f..7eb200dc4 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -151,7 +151,6 @@ static ClientPtr grabClient;
#define GrabNone 0
#define GrabActive 1
-#define GrabKickout 2
static int grabState = GrabNone;
static long grabWaiters[mskcnt];
CallbackListPtr ServerGrabCallback = NULL;
@@ -375,11 +374,6 @@ Dispatch(void)
/* KillClient can cause this to happen */
continue;
}
- /* GrabServer activation can cause this to be true */
- if (grabState == GrabKickout) {
- grabState = GrabActive;
- break;
- }
isItTimeToYield = FALSE;
start_tick = SmartScheduleTime;
@@ -1059,7 +1053,7 @@ ProcGrabServer(ClientPtr client)
rc = OnlyListenToOneClient(client);
if (rc != Success)
return rc;
- grabState = GrabKickout;
+ grabState = GrabActive;
grabClient = client;
if (ServerGrabCallback) {