WaitForSomething(): select: Invalid argument, part 2
Felipe Contreras
felipe.contreras at gmail.com
Mon Sep 30 08:36:19 PDT 2013
Hi,
I've been investigating the bug regarding WaitForSomething() invalid
arguments[1], and I've made some progress, but could use some help.
This has happened sporadically in my machine, it was happening
reliably with Chromium but the issue went away before I could track it
down, and now it's happening with Dota 2.
It happens always in the same part of the game, so at least I could
try to reproduce, but it doesn't happen all the time.
I've compiled my own X server and added debugging to find out the
culprit, and so far this is what I've found.
The issue seems to happen in dix/dixutils.c::BlockHandler(), after
this is run, waittime,tv_sec = 0, and waittime.tv_usec = -1000.
Clearly the arguments are wrong, so it's no wonder Select() complains.
It's clear that an integer -1 is being converted wrongly, but I've no
idea where.
I've tried adding debugging to all the BlockHandler() functions I
could see, as I don't know how that works, so far with no luck. It
seems to be one of the screens/gpuscreens BlockHandler(), but I don't
know where those are coming from.
I'll keep trying to reproduce the issue, and hopefully the next time I
do I would have more information.
In the meantime, do you have any pointers?
[1] http://thread.gmane.org/gmane.comp.freedesktop.xorg/49065
--
Felipe Contreras
More information about the xorg-devel
mailing list