Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Problem w/zsh-2.6-beta13-hzoli13 as login shell (long)
- X-seq: zsh-workers 801
- From: Danek Duvall <duvall@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
- To: Zoltan Hidvegi <hzoli@xxxxxxxxxx>
- Subject: Problem w/zsh-2.6-beta13-hzoli13 as login shell (long)
- Date: Wed, 6 Mar 1996 21:20:53 -0500
- Cc: zsh-workers@xxxxxxxxxxxxxxx (zsh-workers)
- In-reply-to: <199603052208.XAA12680@xxxxxxxxxxxxxxxxx>
- References: <199603052208.XAA12680@xxxxxxxxxxxxxxxxx>
-----BEGIN PGP SIGNED MESSAGE-----
Zsh is segfaulting when run from /bin/login, either from
rlogind/telnetd or by exec'ing /bin/login on the commandline.
Unfortunately, I can't get the thing to dump core, or I'd provide at
least a backtrace. The most I've been able to do is get an strace,
which I've provided at the end of the message.
- From the end of the trace, as far as I can tell, it's dying in
readwtab(), though I'm puzzled as to why, since it never has the
chance to read any config files to know about $WATCH.
It has no problem if simply started from the commandline, or as an
argument to -e of xterm. I have also tried running it as
% ARGV0=-zsh zsh
but that works fine as well. It's unlikely to be a problem with
/bin/login, as it's the same login that has worked fine for ages. The
kernel is new, but the old zsh (hzoli12) doesn't have any problems
with that.
I don't know what else might be the problem. I wish I could trace it
further, but like I said, I don't know how to get it to dump core. If
you have any suggestions, I'll do that.
Here are my system specs: linux 1.3.71, libc5.0.9, ncurses 1.9.8a, gcc
2.7.0 (not using -fno-strength-reduce), /bin/login from the shadow
password suite.
I hope you can make some sense of this.
Thanks,
Danek
- ------------------8<------------------------------------8<------------------
execve("/bin/zsh", ["-zsh"], [/* 8 vars */]) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40006000
mprotect(0x40000000, 18363, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x8000000, 304971, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
stat("/etc/ld.so.cache", {st_mode=S_IFREG|0644, st_size=4486, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY) = 5
mmap(0, 4486, PROT_READ, MAP_SHARED, 5, 0) = 0x40007000
close(5) = 0
open("/lib/libncurses.so.3.0", O_RDONLY) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 241664, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40009000
mmap(0x40009000, 184727, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x40009000
mmap(0x40037000, 34780, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x2d000) = 0x40037000
mmap(0x40040000, 14032, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40040000
close(5) = 0
mprotect(0x40009000, 184727, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
open("/lib/libc.so.5.0.9", O_RDONLY) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3"..., 4096) = 4096
mmap(0, 720896, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40044000
mmap(0x40044000, 489361, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x40044000
mmap(0x400bc000, 19860, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x77000) = 0x400bc000
mmap(0x400c1000, 205176, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x400c1000
close(5) = 0
mprotect(0x40044000, 489361, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
munmap(0x40007000, 4486) = 0
mprotect(0x8000000, 304971, PROT_READ|PROT_EXEC) = 0
mprotect(0x40009000, 184727, PROT_READ|PROT_EXEC) = 0
mprotect(0x40044000, 489361, PROT_READ|PROT_EXEC) = 0
mprotect(0x40000000, 18363, PROT_READ|PROT_EXEC) = 0
personality(PER_LINUX) = 0
brk(0) = 0x8054eac
brk(0x8057eac) = 0x8057eac
brk(0x8058000) = 0x8058000
brk(0x8059000) = 0x8059000
brk(0x805a000) = 0x805a000
open("/share/locale/C/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/share/locale/C/LC_TIME", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/share/locale/C/LC_NUMERIC", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/share/locale/C/LC_MONETARY", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/share/locale/C/LC_CTYPE", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/share/locale/C/LC_COLLATE", O_RDONLY) = -1 ENOENT (No such file or directory)
brk(0x805b000) = 0x805b000
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
getuid() = 405
geteuid() = 405
getgid() = 1
getegid() = 1
fstat(1, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
brk(0x805c000) = 0x805c000
ioctl(1, TCGETS, {B9600 opost isig icanon echo ...}) = 0
fstat(2, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
brk(0x805d000) = 0x805d000
ioctl(2, TCGETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
fstat(0, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
stat("/share/locale/C/LC_COLLATE", {st_mode=S_IFDIR|0755, st_size=5120, ...}) = 0
open("/dev", O_RDONLY) = 5
fcntl(5, F_SETFD, FD_CLOEXEC) = 0
brk(0x805e000) = 0x805e000
brk(0x805f000) = 0x805f000
readdir(5, {d_ino=12289, d_name="."}) = 1
readdir(5, {d_ino=2, d_name=".."}) = 1
readdir(5, {d_ino=12290, d_name="MAKEDEV"}) = 1
...
Tons of readdirs here
...
readdir(5, {d_ino=12381, d_name="ptyp2"}) = 1
readdir(5, {d_ino=12382, d_name="ttyp2"}) = 1
stat("/dev/ttyp2", {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
close(5) = 0
open("/dev/ttyp2", O_RDWR) = 5
fcntl(5, F_DUPFD, 10) = 10
close(5) = 0
fcntl(10, F_GETFL) = 0x2 (flags O_RDWR)
fstat(10, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
brk(0x8060000) = 0x8060000
ioctl(10, TCGETS, {B9600 opost isig icanon echo ...}) = 0
lseek(10, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
ioctl(10, TCGETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(10, TIOCGWINSZ, {ws_row=32, ws_col=80, ws_xpixel=579, ws_ypixel=420}) = 0
getpgrp() = 6765
getpgrp() = 6765
ioctl(10, TIOCGPGRP, [6765]) = 0
brk(0x8061000) = 0x8061000
brk(0x8062000) = 0x8062000
brk(0x8063000) = 0x8063000
gettimeofday({826125877, 948074}, {300, 1}) = 0
uname({sys="Linux", node="lorien", ...}) = 0
ioctl(10, TCGETS, {B9600 opost isig icanon echo ...}) = 0
fstat(10, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
stat("/dev", {st_mode=S_IFDIR|0755, st_size=5120, ...}) = 0
open("/dev", O_RDONLY) = 5
fcntl(5, F_SETFD, FD_CLOEXEC) = 0
readdir(5, {d_ino=12289, d_name="."}) = 1
readdir(5, {d_ino=2, d_name=".."}) = 1
readdir(5, {d_ino=12290, d_name="MAKEDEV"}) = 1
...
Tons of readdirs here
...
readdir(5, {d_ino=12381, d_name="ptyp2"}) = 1
readdir(5, {d_ino=12382, d_name="ttyp2"}) = 1
stat("/dev/ttyp2", {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
close(5) = 0
getppid() = 6763
getpid() = 6765
getuid() = 405
open("/etc/passwd", O_RDONLY) = 5
fstat(5, {st_mode=S_IFREG|0644, st_size=1312, ...}) = 0
brk(0x8064000) = 0x8064000
read(5, "root::0:0::/root:/bin/zsh\ndaemo"..., 4096) = 1312
lseek(5, -858, SEEK_CUR) = 454
close(5) = 0
stat("/home/duvall", {st_mode=S_IFDIR|0755, st_size=2048, ...}) = 0
stat("/home/duvall", {st_mode=S_IFDIR|0755, st_size=2048, ...}) = 0
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
fstat(0, {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
stat("/dev", {st_mode=S_IFDIR|0755, st_size=5120, ...}) = 0
open("/dev", O_RDONLY) = 5
fcntl(5, F_SETFD, FD_CLOEXEC) = 0
readdir(5, {d_ino=12289, d_name="."}) = 1
readdir(5, {d_ino=2, d_name=".."}) = 1
readdir(5, {d_ino=12290, d_name="MAKEDEV"}) = 1
...
Tons of readdirs here
...
readdir(5, {d_ino=12381, d_name="ptyp2"}) = 1
readdir(5, {d_ino=12382, d_name="ttyp2"}) = 1
stat("/dev/ttyp2", {st_mode=S_IFCHR|0622, st_rdev=makedev(4, 194), ...}) = 0
close(5) = 0
open("/var/run/utmp", O_RDONLY) = 5
read(5, "\6\0\0\0\220\2\0\0tty2\0\0\0\0\0"..., 56) = 56
read(5, "\6\0\0\0\257\v\0\0tty1\0\0\0\0\0"..., 56) = 56
read(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 56) = 56
read(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 56) = 56
read(5, "\7\0\0\0\353\27\0\0ttyp1\0\0\0\0"..., 56) = 56
read(5, "\7\0\10@\262\v\0\0console\0\0\0\0"..., 56) = 56
read(5, "\7\0\0\0m\32\0\0ttyp2\0\0\0\0\0\0"..., 56) = 56
close(5) = 0
brk(0x8064000) = 0x8064000
brk(0x8065000) = 0x8065000
- --- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++
- ------------------8<------------------------------------8<------------------
-----BEGIN PGP SIGNATURE-----
Version: 2.6.2
Comment: Processed by Mailcrypt 3.4, an Emacs/PGP interface
iQCVAwUBMT5IAHusfJIoDO+1AQEZGAP9Gj7Dv7s1lv8ujxRngo1Pwu9Il8u+sPxr
xbgYIiU7i44PpleAV0ncHhDKDQnYQc4rl9EKLYion51Dlc3BocBe7mNCITknavXx
Yg5Azmf7eZntpIGvzCU3hYnrUAZPE7e85bXVz+abRlCeVFe3YC8zBLqiwVy9dVEW
kJhx52B/KRE=
=68U2
-----END PGP SIGNATURE-----
Messages sorted by:
Reverse Date,
Date,
Thread,
Author