Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

zsh hangs on AIX 4.3.3



Greetings,

I'm trying to use zsh on an AIX 4.3.3 box. Unfortunately, I appear to be hitting a bug related to a wait
on signals.

I've trimmed down the script to a (perhaps local) minimum to recreate the problem. The script seems
to make it through about 351 interations, and then hangs. ^C won't break it out. ^Z won't suspend.
SIGHUP and SIGCHLD both will stop the process.

This problem occurs with zsh binaries that I compile as well as externally supplied
binaries (from two sources).

I would very much like to use zsh to script our administration work on these systems.
Any help would be greately appreciated.

Thanks,
Gene

----
script
----
#!/usr3/rfgadm/src/zsh-4.3.2/Src/zsh

integer ctr=1
disks=$(while ((ctr < 100)) ; do print $ctr ; let ctr=ctr+1 ; done )

integer outer=1
while [ 1 ] ; do
    print $disks |
        while read pdisk; do
            echo $pdisk  | read hdisk
            echo 0 | read n
            print $pdisk $((outer*${#disks}+pdisk))
        done
    ((outer=outer+1))
done

---
gcc info
---
11:39: [carterg@isriscwc {80}] gcc -v
Reading specs from /usr3_is/rfgadm/bin/../lib/gcc-lib/powerpc-ibm-aix4.3.2.0/3.3.6/specs
Configured with: ../gcc-3.3.6/configure --disable-nls
Thread model: aix
gcc version 3.3.6
11:47: [carterg@isriscwc {81}]

---
gdb trace
---
11:39: [carterg@isriscwc {260}] gdb /usr3/rfgadm/src/zsh-4.3.2/Src/zsh
GNU gdb 6.5
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "powerpc-ibm-aix4.3.3.0"...
(gdb) run zshprob
Starting program: /usr3_is/rfgadm/src/zsh-4.3.2/Src/zsh zshprob
...
62 349
63 350
64 351

Program received signal SIGTERM, Terminated.
0xd01888c8 in sigsuspend () from /usr/lib/libc.a(shr.o)
(gdb) bt
#0  0xd01888c8 in sigsuspend () from /usr/lib/libc.a(shr.o)
#1  0x100732b4 in signal_suspend (sig=20, sig2=0) at signals.c:376
#2  0x10079ed0 in zwaitjob (job=3, sig=0) at jobs.c:1161
#3  0x1007a090 in waitjobs () at jobs.c:1196
#4  0x1004546c in execpline (state=0x2ff22448, slcode=9218, how=2, last1=0)
    at exec.c:1161
#5  0x1004469c in execlist (state=0x2ff22448, dont_change_job=1, exiting=0) at exec.c:892
#6  0x100aeb48 in execwhile (state=0x2ff22448, do_exec=0) at loop.c:415
#7  0x1004a8e4 in execcmd (state=0x2ff22448, input=12, output=0, how=2, last1=2)
    at exec.c:2523
#8  0x10045e34 in execpline2 (state=0x2ff22448, pcode=643, how=2, input=12, output=0,
    last1=0) at exec.c:1300
#9  0x100460f8 in execpline2 (state=0x2ff22448, pcode=611, how=2, input=0, output=0,
    last1=0) at exec.c:1351
#10 0x10045024 in execpline (state=0x2ff22448, slcode=43010, how=2, last1=0)
    at exec.c:1086
#11 0x1004469c in execlist (state=0x2ff22448, dont_change_job=1, exiting=0) at exec.c:892
#12 0x100aeb48 in execwhile (state=0x2ff22448, do_exec=0) at loop.c:415
#13 0x1004a8e4 in execcmd (state=0x2ff22448, input=0, output=0, how=18, last1=2)
    at exec.c:2523
#14 0x10045e34 in execpline2 (state=0x2ff22448, pcode=515, how=18, input=0, output=0,
    last1=0) at exec.c:1300
#15 0x10045024 in execpline (state=0x2ff22448, slcode=58370, how=18, last1=0)
---Type <return> to continue, or q <return> to quit---
    at exec.c:1086
#16 0x1004469c in execlist (state=0x2ff22448, dont_change_job=0, exiting=0) at exec.c:892
#17 0x100441c4 in execode (p=0x20040440, dont_change_job=0, exiting=0) at exec.c:792
#18 0x10000c28 in loop (toplevel=1, justonce=0) at init.c:167
#19 0x10004520 in zsh_main (argc=2, argv=0x2ff225d4) at init.c:1326
#20 0x10000578 in main (argc=2, argv=0x2ff225d4) at main.c:93
(gdb)


Messages sorted by: Reverse Date, Date, Thread, Author