[PATCH] uml: fix thread startup race
authorJeff Dike <jdike@addtoit.com>
Mon, 27 Mar 2006 09:14:40 +0000 (01:14 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 27 Mar 2006 16:44:38 +0000 (08:44 -0800)
commit5f4e8fd08f3993bc31a7dd91767fdb4da4fe6278
tree8bd66ec07c3051d6f6e09fc53c7f2bde20c3c67d
parent1fbbd6844e6a84e5d166ab475dc298d3b89fa4bf
[PATCH] uml: fix thread startup race

This fixes a race in the starting of write_sigio_thread.  Previously, some of
the data needed by the thread was initialized after the clone.  If the thread
ran immediately, it would see the uninitialized data, including an empty
pollfds, which would cause it to hang.

We move the data initialization to before the clone, and adjust the error
paths and cleanup accordingly.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/um/os-Linux/sigio.c