Bug #1368

suspend signal race?

Added by qhwt+dfly over 5 years ago. Updated 8 months ago.

Status:In ProgressStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:Userland
Target version:3.8.0

Description

Hi.
I noticed there's still a weird "race" with regard to suspend signal
(ctrl+Z), that I used to observe back in 1.8-RELEASE days. It's 100%
reproducible on -DEVELOPMENT or 2.2-RELEASE. What I did was basically
this, followed by ctrl+Z:

$ su root -c 'vi /usr/pkg/etc/mk.conf'
[1] + Suspended (signal) su root -c vi /usr/pkg/etc/mk.conf
$ fg

The result depends on root's login shell; if it's set to /bin/csh
(the default), the suspended process silently vanishes (killed?).
$ fg

Suspended
$ pgrep -u root vi

If the root's login shell is set to /bin/sh, the vi session won't
resume and gets stuck there (pressing ctrl+T shows that the process
is in [stop] state). If I send SIGCONT to vi, the vi session resumes
and I can continue to work on it.

The behavior on csh is quite undesirable, as you may lose the suspended
process (I think I've seen that before, but didn't care at that time).
It seems to occur for commands other than vi:
$ su root -c 'cat' # affected
$ su root -c 'seq 1 10000' # affected
$ su root -c 'seq 1 10000 | tee a' # can't be interrupted

Any ideas on how to resolve this issue?

History

#1 Updated by tuxillo 8 months ago

  • Description updated (diff)
  • Category set to Userland
  • Status changed from New to Closed
  • Assignee deleted (0)
  • Target version set to 3.8.0
  • % Done changed from 0 to 100

Hi,

I've tried to reproduce it without any luck (both csh/sh):

leaf:/home/tuxillo> vi /etc/defaults/rc.conf
^Z

Suspended
leaf:/home/tuxillo> jobs
[1] + Suspended vi /etc/defaults/rc.conf
leaf:/home/tuxillo> fg
(vi comes up again nicely)

Closing this one.

Cheers,
Antonio Huete

#2 Updated by tuxillo 8 months ago

  • Status changed from Closed to In Progress
  • % Done changed from 100 to 0

Reopening, my mistake when reading the issue.

Also available in: Atom PDF