Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 103406

Summary: auto-modprobe triggers 'wait() while SIGCHLD ignored' warning
Product: [Fedora] Fedora Reporter: Bill Nottingham <notting>
Component: kernelAssignee: Dave Jones <davej>
Status: CLOSED CURRENTRELEASE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 3CC: pfrields, rvokal
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 2.3-10 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-01-14 05:04:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 100644    

Description Bill Nottingham 2003-08-29 20:44:09 UTC
SSIA.

Comment 1 David Woodhouse 2003-08-29 22:03:16 UTC
What version of bluez-utils? 

* Sun Apr 27 2003 David Woodhouse <dwmw2> 2.3-3
- Unignore SIGCHLD before starting pin helper, report its return code

If it ain't that, what do you do to provoke it?

Comment 2 Bill Nottingham 2003-08-29 22:09:18 UTC
2.3-9.

Nothing in particular; I get that message from somewhere in the startup sequence
(there is no bluetooth hardware on this box, AFAIK.)

Comment 3 David Woodhouse 2003-08-29 22:15:22 UTC
OK; will investigate. No calls to wait() or popen() in the source though -- it's
got to be a library; I suspect dbus. Shame the kernel doesn't give the address
of the offending syscall.

Comment 4 Bill Nottingham 2003-08-29 22:24:09 UTC
        sa.sa_handler = SIG_IGN;
        sigaction(SIGCHLD, &sa, NULL);
        sigaction(SIGPIPE, &sa, NULL);
(in main.c)

Comment 5 David Woodhouse 2003-08-30 09:40:10 UTC
Well yes, but that part's fine as long as you don't subsequently call wait().
And I can't see where we're calling wait() from. 

But since we don't actually have any children we care about, apart from the ones
for which I've already _explicitly_ made it unignore SIGCHLD, I suppose we can
just stop ignoring SIGCHLD altogether.

At least if people bitch at me about that they'll be able to tell me the name of
the zombies to which they object :)

2.3-10 ought to make this go away. Reopen if it doesn't.


Comment 6 David Woodhouse 2003-08-30 09:49:10 UTC
Oh, actually that's crap; I see zombies already. Will look again on Monday.

Comment 7 David Woodhouse 2003-08-30 14:19:26 UTC
OK, I found it and it's not bluez-utils' fault. Patch reverted in 2.3-11.

We ignore SIGCHLD, we do something which triggers a module autoload. Kernel
helpfully calls wait() for us, to wait for the modprobe to finish.

Reassigning to kernel.


Comment 8 Dave Jones 2004-11-20 01:59:39 UTC
fixed in latest kernels ?

Comment 9 Dave Jones 2005-01-14 05:04:14 UTC
ye olde bug. assuming fixed.