zsh-workers
 help / color / mirror / code / Atom feed
* zsh-2.6-beta13-hzoli13 release
@ 1996-03-05 22:08 Zoltan Hidvegi
  1996-03-07  2:20 ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (long) Danek Duvall
  0 siblings, 1 reply; 6+ messages in thread
From: Zoltan Hidvegi @ 1996-03-05 22:08 UTC (permalink / raw)
  To: zsh-workers

[-- Attachment #1: Type: application/pgp, Size: 4840 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Problem w/zsh-2.6-beta13-hzoli13 as login shell (long)
  1996-03-05 22:08 zsh-2.6-beta13-hzoli13 release Zoltan Hidvegi
@ 1996-03-07  2:20 ` Danek Duvall
  1996-03-07 13:49   ` Zoltan Hidvegi
  0 siblings, 1 reply; 6+ messages in thread
From: Danek Duvall @ 1996-03-07  2:20 UTC (permalink / raw)
  To: Zoltan Hidvegi; +Cc: zsh-workers

-----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-----


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Problem w/zsh-2.6-beta13-hzoli13 as login shell (long)
  1996-03-07  2:20 ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (long) Danek Duvall
@ 1996-03-07 13:49   ` Zoltan Hidvegi
  1996-03-07 16:38     ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed) Danek Duvall
  0 siblings, 1 reply; 6+ messages in thread
From: Zoltan Hidvegi @ 1996-03-07 13:49 UTC (permalink / raw)
  To: Danek Duvall; +Cc: zsh-workers

Danek Duvall wrote:
> 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.
> 
> 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.

Unfortunately I cannot reproduce this.  I tried it on 1.3.71 with libc-5.2.18
and libc-5.3.3,  with ncurses and with termcap with sr-bugfixed gcc-2.7.2.

Did you used the ncurses include files to compile zsh?  You may need to add
something like -I/usr/include/ncurses to INCLUDES in Src/Makefile.  If this
does not fix the problem, try to use unlimit coredumpsize before execing
login to get a core then use gdb zsh core then bt to get a backtrace.  If that
does not work, try to login to an account with sh as login shell and
no /etc/profile and ~/.profile, then start zsh -l from there and see if it
gets a SEGV from there.  Or as a last resort add a sleep(1000); right after
the variable declaratins in main() in init.c, login to an account which has
this modified shell as login shell, then attach the shell process to gdb, send
a SIGALRM to the attached process and continue its execution.  If you do not
have a meaningful backtrace try to link with -lncurses_g.  It may happen that
starting /usr/local/bin/zsh works but zsh or ./zsh alone does not work so
experiment with this a little bit.

Thanks,

Zoltan


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed)
  1996-03-07 13:49   ` Zoltan Hidvegi
@ 1996-03-07 16:38     ` Danek Duvall
  1996-03-07 17:35       ` Mark Borges
  1996-03-12 23:28       ` Steven L Baur
  0 siblings, 2 replies; 6+ messages in thread
From: Danek Duvall @ 1996-03-07 16:38 UTC (permalink / raw)
  To: Zoltan Hidvegi; +Cc: zsh-workers

-----BEGIN PGP SIGNED MESSAGE-----

Zoltan> Unfortunately I cannot reproduce this.  I tried it on 1.3.71 with libc-5.2.18
Zoltan> and libc-5.3.3,  with ncurses and with termcap with sr-bugfixed gcc-2.7.2.

Looks like the problem was my using libc-5.0.9.  I just upgraded to
libc-5.2.18, and the problem vanished, along with problems with some
other programs (interestingly, the common link seems to have been the
use of ncurses-1.9.8a....).

Sorry to waste your time on that one. <sigh>

One other problem/feature I noticed -- hzoli13 doesn't like to use =1,
=2, etc as identifiers to directories on the stack as I'm used to from
older versions.  Is this now not allowed, and ~1, ~2, etc preferred?
If so, I'd like to suggest a return to the =-style of referring to the
directory stack.

Thanks,
Danek

-----BEGIN PGP SIGNATURE-----
Version: 2.6.2
Comment: Processed by Mailcrypt 3.4, an Emacs/PGP interface

iQCVAwUBMT8REnusfJIoDO+1AQG3LwQArWp7MbPcKrm61v4WaqhFe7Mj3L0Y35IY
ubfCdIzLmx8ulf3skoojwnUI3O0BfE3AvuPdmKiteGrAr6RUugPlb1Yqb+Yu6IU/
vFgNCkW2bH+sHV/skH33/2SQxteTtJ5KC7KDvkaj7KOOETLjL3ZtTQxrgDJTaGkL
H/2gGAsWMZ4=
=V1k8
-----END PGP SIGNATURE-----


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed)
  1996-03-07 16:38     ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed) Danek Duvall
@ 1996-03-07 17:35       ` Mark Borges
  1996-03-12 23:28       ` Steven L Baur
  1 sibling, 0 replies; 6+ messages in thread
From: Mark Borges @ 1996-03-07 17:35 UTC (permalink / raw)
  To: Danek Duvall; +Cc: zsh-workers

>> On Thu, 7 Mar 1996 11:38:47 -0500,
>> Danek Duvall(DD) wrote:

DD> One other problem/feature I noticed -- hzoli13 doesn't like to use
DD> =1, =2, etc as identifiers to directories on the stack as I'm used
DD> to from older versions.  Is this now not allowed, and ~1, ~2, etc
DD> preferred?

Yes. This is due to Zefram's "big named directory patch" of message
711 (see below), though I can't recall any details of the July
discussion at the moment. You can still use `-1', `-2', though, so I
don't see it as a big loss. 

  -mb-


------- Start of forwarded message -------
Resent-Date: Sat, 6 Jan 1996 07:57:27 -0500 (EST)
From: Zefram <A.Main@dcs.warwick.ac.uk>
Message-Id: <20152.199601061257@stone.dcs.warwick.ac.uk>
Subject: Big named directory patch
To: zsh-workers@math.gatech.edu (Z Shell workers mailing list)
Date: Sat, 6 Jan 1996 12:57:29 +0000 (GMT)
Resent-Message-Id: <"7uZeh.0.Vu2.o6dxm"@euclid>
Resent-From: zsh-workers@math.gatech.edu
Resent-Sender: zsh-workers-request@math.gatech.edu

-----BEGIN PGP SIGNED MESSAGE-----

The patch below is compressed due to being 45K in size.  It primarily
changes the organisation of named directories from a simple array to a
hash table.  This simplifies a lot of code, which can now use the
preexisting generic hash table code.  Lookup of named directories is
slightly speeded up as a result.  Reverse lookup, for %~ prompt
sequences, is slightly slower, but it's really not noticeable.

It also changes ~ and = expansion, in the ways discussed in July.
Basically, = expansion now has nothing to do with the directory stack,
so use ~n in place of =n.  =- is now ~-0.  See the man page patch for
details.

 -zefram

[patch elided]

------- End of forwarded message -------


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed)
  1996-03-07 16:38     ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed) Danek Duvall
  1996-03-07 17:35       ` Mark Borges
@ 1996-03-12 23:28       ` Steven L Baur
  1 sibling, 0 replies; 6+ messages in thread
From: Steven L Baur @ 1996-03-12 23:28 UTC (permalink / raw)
  To: zsh-workers

>>>>> "Danek" == Danek Duvall <duvall@dhduvall.student.Princeton.EDU> writes:

Zoltan> Unfortunately I cannot reproduce this.  I tried it on 1.3.71
Zoltan> with libc-5.2.18 and libc-5.3.3, with ncurses and with termcap
Zoltan> with sr-bugfixed gcc-2.7.2.

Danek> Looks like the problem was my using libc-5.0.9.  I just upgraded to
Danek> libc-5.2.18, and the problem vanished, along with problems with some
Danek> other programs (interestingly, the common link seems to have been the
Danek> use of ncurses-1.9.8a....).

Danek> Sorry to waste your time on that one. <sigh>

Danek> One other problem/feature I noticed -- hzoli13 doesn't like to use =1,
Danek> =2, etc as identifiers to directories on the stack as I'm used to from
Danek> older versions.  Is this now not allowed, and ~1, ~2, etc preferred?
Danek> If so, I'd like to suggest a return to the =-style of referring to the
Danek> directory stack.

You may still have trouble if you're compiling with gcc 2.7 and not
using -fno-strength-reduce or not using gcc 2.7.2 no-srbug.  The
strength reduction optimization bug in gcc 2.7 definitely zaps zsh.

-- 
steve@miranova.com baur
Unsolicited commercial e-mail will be proofread for $250/hour.
Andrea Seastrand: For your vote on the Telecom bill, I will vote for anyone
except you in November.



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~1996-03-12 23:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1996-03-05 22:08 zsh-2.6-beta13-hzoli13 release Zoltan Hidvegi
1996-03-07  2:20 ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (long) Danek Duvall
1996-03-07 13:49   ` Zoltan Hidvegi
1996-03-07 16:38     ` Problem w/zsh-2.6-beta13-hzoli13 as login shell (fixed) Danek Duvall
1996-03-07 17:35       ` Mark Borges
1996-03-12 23:28       ` Steven L Baur

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).