On 12 June 2013 15:05, Simon Toedt <[email protected]> wrote: > On Wed, Jun 12, 2013 at 1:46 PM, Glenn Fowler <[email protected]> wrote: >> the ast-ksh 2013-06-11 alpha source has been posted to >> http://www.research.att.com/sw/download/alpha/ >> its still a work in progress >> dgk and I are corrdinating the new vmalloc implementation vs signals >> in addition to the work dgk is doing in ksh vs signals > > On Debian Linux signals.sh keeps hanging. An example: > ./src/cmd/ksh93/tests/signal.sh > test signal begins at 2013-06-12+14:30:26 > signal.sh[296]: kill -VTALRM $$ failed, required termination > by signal 'KILL' > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > kill: 46807: no such process > > The parent process hangs in the memory allocator: > #0 0x00007eff3039c570 in __nanosleep_nocancel () at > ../sysdeps/unix/syscall-template.S:81 > #1 0x00007eff306fde67 in tvsleep (tv=0x0, rv=0x0) at > /home/simon/kshbuild/src/lib/libast/tm/tvsleep.c:63 > #2 0x00007eff3076746f in asorelax (nsec=262144) at > /home/simon/kshbuild/src/lib/libast/aso/asorelax.c:46 > #3 0x00007eff3076741e in asolock (lock=0x7eff301e303c, key=20130501, > type=4) at /home/simon/kshbuild/src/lib/libast/aso/asolock.c:40 > #4 0x00007eff3076ebf9 in dballoc (vm=0x7eff31b22dc0, size=144, > local=0) at /home/simon/kshbuild/src/lib/libast/vmalloc/vmdebug.c:333 > #5 0x00007eff30768793 in _ast_malloc (size=144) at > /home/simon/kshbuild/src/lib/libast/vmalloc/malloc.c:680 > #6 0x00007eff3128f689 in set_trapinfo (shp=0x7eff3152bac0 <sh>, > sig=41, info=0x7fff8fa0d630) > at /home/simon/kshbuild/src/cmd/ksh93/sh/fault.c:93 > #7 0x00007eff3128fc68 in sh_fault (sig=41, info=0x7fff8fa0d630, > context=0x7fff8fa0d500) > at /home/simon/kshbuild/src/cmd/ksh93/sh/fault.c:241 > #8 <signal handler called> > #9 sh_fault (sig=0, info=0x0, context=0x0) at > /home/simon/kshbuild/src/cmd/ksh93/sh/fault.c:119 > #10 <signal handler called> > #11 0x00007eff3076f5b0 in vmdbcheck (vm=0x7eff31b22dc0) at > /home/simon/kshbuild/src/lib/libast/vmalloc/vmdebug.c:560 > #12 0x00007eff3076ec16 in dballoc (vm=0x7eff31b22dc0, size=176, > local=0) at /home/simon/kshbuild/src/lib/libast/vmalloc/vmdebug.c:336 > #13 0x00007eff30768793 in _ast_malloc (size=176) at > /home/simon/kshbuild/src/lib/libast/vmalloc/malloc.c:680 > #14 0x00007eff3073b9e3 in sfnew (oldf=0x0, buf=0x7eff301ecc60, size=8, > file=-1, flags=5) > at /home/simon/kshbuild/src/lib/libast/sfio/sfnew.c:97 > #15 0x00007eff30758387 in _sfopenat (cwd=-100, f=0x0, > file=0x7eff301ecc60 "rttrap 6", mode=0x7eff312fe0d5 "s") > at /home/simon/kshbuild/src/lib/libast/sfio/_sfopen.c:120 > #16 0x00007eff307584c3 in _sfopen (f=0x0, file=0x7eff301ecc60 "rttrap > 6", mode=0x7eff312fe0d5 "s") > at /home/simon/kshbuild/src/lib/libast/sfio/_sfopen.c:203 > #17 0x00007eff3073c5e7 in sfopen (f=0x0, file=0x7eff301ecc60 "rttrap > 6", mode=0x7eff312fe0d5 "s") > at /home/simon/kshbuild/src/lib/libast/sfio/sfopen.c:40 > #18 0x00007eff312917e6 in sh_trap_20120720 (shp=0x7eff3152bac0 <sh>, > trap=0x7eff301ecc60 "rttrap 6", mode=0) > at /home/simon/kshbuild/src/cmd/ksh93/sh/fault.c:876 > #19 0x00007eff31290719 in sh_chktrap (shp=0x7eff3152bac0 <sh>) at > /home/simon/kshbuild/src/cmd/ksh93/sh/fault.c:516 > #20 0x00007eff312eae90 in sh_exec (shp=0x7eff3152bac0 <sh>, > t=0x7eff3021ead0, flags=512) at > /home/simon/kshbuild/src/cmd/ksh93/sh/xec.c:2955 > #21 0x00007eff312e9b0f in sh_exec (shp=0x7eff3152bac0 <sh>, > t=0x7eff3021eaa0, flags=512) at > /home/simon/kshbuild/src/cmd/ksh93/sh/xec.c:2626 > #22 0x00007eff312e9200 in sh_exec (shp=0x7eff3152bac0 <sh>, > t=0x7eff3021ea60, flags=4) at > /home/simon/kshbuild/src/cmd/ksh93/sh/xec.c:2464 > #23 0x00007eff31273005 in exfile (shp=0x7eff3152bac0 <sh>, > iop=0x7eff302386f0, fno=11) at > /home/simon/kshbuild/src/cmd/ksh93/sh/main.c:599 > #24 0x00007eff312721ac in sh_main (ac=2, av=0x7fff8fa0f508, > userinit=0x0) at /home/simon/kshbuild/src/cmd/ksh93/sh/main.c:371 > #25 0x0000000000400751 in main (argc=2, argv=0x7fff8fa0f508) at > /home/simon/kshbuild/src/cmd/ksh93/sh/pmain.c:45
Solaris 11.1 too hangs: fffffd7ffbcaa44a nanosleep (fffffd7fffdfd058, fffffd7fffdfd048) fffffd7ffba6a050 tvsleep () + 40 fffffd7ffbb07cac asorelax () + 3c fffffd7ffbb07c2b asolock () + bb fffffd7ffbb11f16 dballoc () + 96 fffffd7ffbb0968c _ast_malloc () + fc fffffd7ffb86eaea set_trapinfo () + ba fffffd7ffb86f298 sh_fault () + 6b8 fffffd7ffbca2326 __sighndlr () + 6 fffffd7ffbc94ffc call_user_handler () + 2a4 fffffd7ffbc95223 sigacthandler (30, fffffd7fffdfd708, fffffd7fffdfd3a0) + db --- called from signal handler with signal 48 (SIGRTMIN+7) --- fffffd7ffbcabb0b _syscall6 () + 1b fffffd7ffbc94f65 call_user_handler () + 20d fffffd7ffbc95223 sigacthandler (19, fffffd7fffdfdcd0, fffffd7fffdfd970) + db --- called from signal handler with signal 25 (SIGCONT) --- fffffd7ffbb12c4b vmdbcheck () + 1bb fffffd7ffbb11f38 dballoc () + b8 fffffd7ffbb0968c _ast_malloc () + fc fffffd7ffb8b58ff nv_putval () + 8df fffffd7ffb8baac9 nv_newattr () + 6f9 fffffd7ffb83c780 setall () + 1630 fffffd7ffb83ab51 b_typeset () + 1101 fffffd7ffb8ecb39 sh_exec () + 2689 fffffd7ffb8f030b sh_exec () + 5e5b fffffd7ffb8f7adb sh_funscope_20120720 () + aeb fffffd7ffb8f561a sh_funct () + 37a fffffd7ffb8ed7dc sh_exec () + 332c fffffd7ffb8f82d9 sh_eval_20120720 () + 3d9 fffffd7ffb871a2e sh_trap_20120720 () + 2fe fffffd7ffb870149 sh_chktrap () + 3c9 fffffd7ffb8f399f sh_exec () + 94ef fffffd7ffb8f1eff sh_exec () + 7a4f fffffd7ffb8f143b sh_exec () + 6f8b fffffd7ffb84451f exfile () + 11df fffffd7ffb843302 sh_main () + 17e2 000000000040bd12 main () + 92 000000000040bb2c ???????? () The funny thing is the trap nesting, i.e. SIGCONT immediately followed by a SIGRTMIN+7. WTF does the SIGCONT come from? Glenn? Ced -- Cedric Blancher <[email protected]> Institute Pasteur _______________________________________________ ast-developers mailing list [email protected] http://lists.research.att.com/mailman/listinfo/ast-developers
