From: Sapan J . B. <sa...@co...> - 2002-04-06 04:44:17
|
Hi! Found it. Breakpoint 5, update_thread () at sigio_user.c:195 195 block_signals(); (gdb) n 196 n = write(sigio_private[0], &c, sizeof(c)); (gdb) n 197 if(n != sizeof(c)){ (gdb) n 198 printk("add_sigio_fd : write failed, errno = %d\n", errno); (gdb) n 199 goto fail; (gdb) n 205 goto fail; (gdb) n 211 kill(write_sigio_pid, SIGKILL); (gdb) p write_sigio_pid $1 = -1 Making this if (write_sigio_pid != -1) kill... makes everything work like a charm... (This is UML running on a kernel patched with my tty pollout patche at www.corewars.org/tty_bugs.diff). Sapan |