Quoting Kyriazis, George (2017-10-10 11:02:26) > > > On Oct 10, 2017, at 12:46 PM, Dylan Baker <dy...@pnwbakers.com> wrote: > > > > Quoting Jose Fonseca (2017-10-10 08:41:49) > >> On 10/10/17 16:31, Kyriazis, George wrote: > >>> Hello… > >>> > >>> Piglit on windows prints out a message saying “Timeout are not > >>> implemented on Windows.”. These timeouts are the test timeouts in case a > >>> test hangs. > >>> > >>> What do people do when running piglit on windows and they hit a timeout? > >>> I would imagine there would be a non-zero number of people running piglit > >>> on windows on a regular basis, as a regression tool... > >>> > >>> Thank you! > >>> > >>> George > >> > >> I haven't been involved into piglit Windows testing lately, so my > >> understanding might be dated. > >> > >> I believe that we have timeouts when we test piglit on Windows. It's not > >> implemented on piglit python framework itself, but rather on VMware > >> testing framework (that driver piglit, and a bunch of other tests.) > >> > >> That said, I believe it would be better long term if piglit framework > >> had timeouts on Windows, as it can probably track that with finer > >> granularity than we do now by putting a timeout on whole piglit or > >> subsets of piglit tests. > >> > >> python3's subprocess module has timeout options, so it should be > >> relatively easy to implement on top of it, in a cross-platform manner. > >> > >> Jose > >> _______________________________________________ > >> mesa-dev mailing list > >> mesa-dev@lists.freedesktop.org > >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > > Since I added that warning message... > > > > There are no timeouts in python 2 on windows, even with 3rd party packages. > > > > For python 3 to properly handle timeouts you need to kill the process that > > exceeds the expected timeout. Basically when timeout expires the sub-process > > communicate call stops blocking, but doesn't actually kill the process. On > > Linux > > we ask the process to terminate, wait 3 seconds and then SIGKILL it. > > > > I don't know how to do that on windows, so I didn't implement it and instead > > windows users get a warning. If someone with a basic grasp of how to kill a > > process on windows wanted that functionality it probably wouldn't be too > > hard to > > implement. > > > > Alternatively there are constructs that are only in python 3 that do the > > killing > > for you, on both Windows and Linux, but they don't have a python 2 > > equivalent. > > > Hmm.. Since the current code has special cases between python 2/3 and > windows/linux, finding a cross-platform method for both OSes seems like a > “nice to have” at this point, although desirable. > > I’ll see if I can find a quick fix for this. > > Thank you! > > George > > > Dylan >
You could have a look at framework/test/base.py, the logic is in there. I don't think it would really be that much code to add to that mess, and we could always delete it whenever we finally decide that we don't care about python 2 anymore. Dylan
signature.asc
Description: signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev