[Intel-gfx] [PATCH 0/2] drmtest: Fix hanging child processes

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Tue Dec 3 17:44:53 CET 2013


From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>

It was observed both on Linux and Android that tests which
fork can sometimes hang failing to terminate child
processes.

This was eventually tracked down to race conditions in C
library implementations, all with regards to caching of
PID/TGID and TID values.

Solution is to revert the previous workaround, which closed
the race under glibc a bit, and ensure current values from
the kernel are used during timing sensitive periods.

This was tested under Android only but should be a generic fix.

Tvrtko Ursulin (2):
  Revert "lib/drmtest: ducttape over fork race"
  drmtest: Avoid wrong PID/TID after clone races

 lib/drmtest.c | 20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)

-- 
1.8.4.3




More information about the Intel-gfx mailing list