[PATCH] uml: fix a crash under screen
Running UML inside a detached screen delivers SIGWINCH when UML is not expecting it. This patch ignores them. Signed-off-by: Jeff Dike <jdike@addtoit.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
718d8989bc
commit
2eaa297ca2
|
@ -61,7 +61,11 @@ void wait_stub_done(int pid, int sig, char * fname)
|
||||||
|
|
||||||
CATCH_EINTR(n = waitpid(pid, &status, WUNTRACED));
|
CATCH_EINTR(n = waitpid(pid, &status, WUNTRACED));
|
||||||
} while((n >= 0) && WIFSTOPPED(status) &&
|
} while((n >= 0) && WIFSTOPPED(status) &&
|
||||||
(WSTOPSIG(status) == SIGVTALRM));
|
((WSTOPSIG(status) == SIGVTALRM) ||
|
||||||
|
/* running UML inside a detached screen can cause
|
||||||
|
* SIGWINCHes
|
||||||
|
*/
|
||||||
|
(WSTOPSIG(status) == SIGWINCH)));
|
||||||
|
|
||||||
if((n < 0) || !WIFSTOPPED(status) ||
|
if((n < 0) || !WIFSTOPPED(status) ||
|
||||||
(WSTOPSIG(status) != SIGUSR1 && WSTOPSIG(status) != SIGTRAP)){
|
(WSTOPSIG(status) != SIGUSR1 && WSTOPSIG(status) != SIGTRAP)){
|
||||||
|
|
Loading…
Reference in New Issue