summaryrefslogtreecommitdiffhomepage
path: root/pkg/sentry/kernel/semaphore
diff options
context:
space:
mode:
authorhenry.tjf <henry.tjf@antfin.com>2019-09-11 18:30:57 +0800
committerJianfeng Tan <henry.tjf@antfin.com>2019-09-24 14:18:22 +0000
commitbc9de939fd00e71ed8fbfc6c1b631c1facb445a2 (patch)
tree628bc3a995f255f2358dfb4076fa5d23a983c5dd /pkg/sentry/kernel/semaphore
parentd5b3dd7cb4360a9772c26ddb1a8e8b43d33f9f94 (diff)
tty: fix sending SIGTTOU on tty write
How to reproduce: $ echo "timeout 10 ls" > foo.sh $ chmod +x foo.sh $ ./foo.sh (will hang here for 10 secs, and the output of ls does not show) When "ls" process writes to stdout, it receives SIGTTOU signal, and hangs there. Until "timeout" process timeouts, and kills "ls" process. The expected result is: "ls" writes its output into tty, and terminates immdedately, then "timeout" process receives SIGCHLD and terminates. The reason for this failure is that we missed the check for TOSTOP (if set, background processes will receive the SIGTTOU signal when they do write). We use drivers/tty/n_tty.c:n_tty_write() as a reference. Fixes: #862 Reported-by: chris.zn <chris.zn@antfin.com> Signed-off-by: Jianfeng Tan <henry.tjf@antfin.com> Signed-off-by: chenglang.hy <chenglang.hy@antfin.com>
Diffstat (limited to 'pkg/sentry/kernel/semaphore')
0 files changed, 0 insertions, 0 deletions