[SSI-devel] [ ssic-linux-Bugs-2009805 ] OpenSSI fails glibc tst-waitid test
Brought to you by:
brucewalker,
rogertsang
From: SourceForge.net <no...@so...> - 2010-03-13 20:00:16
|
Bugs item #2009805, was opened at 2008-07-03 11:18 Message generated for change (Settings changed) made by rogertsang You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=405834&aid=2009805&group_id=32541 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Process Management Group: v2.0.0pre2 >Status: Closed Resolution: Fixed Priority: 5 Private: No Submitted By: John Hughes (hughesj) Assigned to: Roger Tsang (rogertsang) Summary: OpenSSI fails glibc tst-waitid test Initial Comment: $ gcc -o tst-waitid tst-waitid.c $ ./tst-waitid SIGCHLD for stopped code 128 SIGCHLD for stopped status 7 SIGCHLD for stopped pid 0 waitid WSTOPPED|WNOHANG returned bogus value 396019 On a non-ssi system no output is produced. ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2008-10-10 10:50 Message: checked in ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2008-08-26 01:22 Message: Logged In: YES user_id=1246761 Originator: NO The fix will be checked into CVS. ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2008-08-10 02:39 Message: Logged In: YES user_id=1246761 Originator: NO Also added the optional SIGCHLD for SIGCONT. No output is produced in OpenSSI. ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2008-07-14 02:28 Message: Logged In: YES user_id=1246761 Originator: NO Fixed the remaining issues. tst-waitid passes. # ./tst-waitid no SIGCHLD seen for SIGCONT (optional) no SIGCHLD seen for SIGCONT (optional) A patch will be available soon. cluster/ssi/vproc/dvp_debug.c | 7 cluster/ssi/vproc/dvp_init.c | 12 + cluster/ssi/vproc/dvp_pvpops.c | 154 ++++++++++++++++-- cluster/ssi/vproc/dvp_vpops.c | 147 +++++++++++++++-- cluster/ssi/vproc/nd_slave.c | 15 + cluster/ssi/vproc/nsc_initproc.c | 22 ++ cluster/ssi/vproc/rproc_cli_subr.c | 26 ++- cluster/ssi/vproc/rproc_cli_vproc.c | 26 +++ cluster/ssi/vproc/rproc_server.c | 11 + cluster/ssi/vproc/rproc_svr_vproc.c | 14 + cluster/ssi/vproc/vp_subr.c | 6 include/asm-i386/semaphore.h | 2 include/cluster/synch.h | 59 ++++--- include/linux/config.h | 4 include/linux/dpvproc.h | 14 + include/linux/sched.h | 8 include/linux/vproc.h | 14 + kernel/exit.c | 299 +++++++++++++++++++++++++++++------- kernel/signal.c | 155 ++++++++++++++++-- 19 files changed, 845 insertions(+), 150 deletions(-) ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2008-07-11 03:29 Message: Logged In: YES user_id=1246761 Originator: NO Some progress... 1. waitid succeeds and return value is pid, but userspace expects 0. (fixed) 2. returned si_status is correct but is kernel space value with non-zero __SIGCHLD mask. 3. WCONTINUED option is not supported in VPROC. (fixed; added feature) 4. WEXIT|WNOWAIT hangs because child already signalled p_exiting before parent waits for event; and parent was waiting for p_exiting event with spinlocks held. (fixed) 5. check_sigchld() errors. kernel doesn't fill the signal info for signal handler. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=405834&aid=2009805&group_id=32541 |