Bug 815674 - unable to signal process group
Summary: unable to signal process group
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.3
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Red Hat Kernel Manager
QA Contact: Red Hat Kernel QE team
Depends On:
Blocks: 810583
TreeView+ depends on / blocked
Reported: 2012-04-24 08:35 UTC by Peter Hatina
Modified: 2016-06-01 01:31 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2012-05-03 09:12:30 UTC
Target Upstream Version:

Attachments (Terms of Use)
Usage example in C (333 bytes, text/x-csrc)
2012-04-24 13:29 UTC, Peter Hatina
no flags Details

Description Peter Hatina 2012-04-24 08:35:33 UTC
Description of problem:
I am not able to signal a group of processes. Wrt kill(1), by specifying negative PID, kill should send signal to the process group.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. create a process group (parent, several children)
2. kill -s SIGTERM -- -PID_OF_PARENT
Actual results:
bash: kill: (-PID_OF_PARENT) - No such process

Expected results:
Process group should have been signalled.

Comment 2 Peter Hatina 2012-04-24 13:29:06 UTC
Created attachment 579856 [details]
Usage example in C

The program should signal a process group by the signal specified in the first argument.

Actual result is: kill: No such process

Same, as /bin/kill.

Comment 3 Peter Hatina 2012-04-25 13:23:09 UTC
Kernel used: 2.6.32-232.el6.x86_64

Comment 4 Oleg Nesterov 2012-04-30 12:33:57 UTC
(In reply to comment #2)
> Created attachment 579856 [details]

this test-case can't demonstrate the bug, it simply does sys_kill().

> The program should signal a process group by the signal specified in the first
> argument.

Yes, but pgid should be correct.

> Actual result is: kill: No such process
> Same, as /bin/kill.

I do not have the testing machine with rhel right now, but I simply
can't believe it has the bug like this ;) I bet it would have been
noticed a long ago.

Could you please double check? Or could you provide the "complete"
test-case? Or, simply, could you show how did you verify that
kill -pgid doesn't work?

Or. could you try the simplest test-case:

    $ perl -wle '$SIG{CONT}=sub{print $$}; fork ? wait : kill "CONT", -getppid'

on my machine the output is:


which shows that kill -pgid works correctly.

Comment 5 Peter Hatina 2012-05-03 09:12:30 UTC
Oleg, thank you for your reply. The problem was in misunderstanding of the process group.

Note You need to log in before you can comment on or make changes to this bug.