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

Re: Pause when quitting under FreeBSD



In the last episode (Jul 27), Mark Daniel Reidel said:
> I'm not 100% sure if this is the right place to post this problem,
> but ever since I switched to a 64bit OS and installed my shell of
> choice, quitting zsh suddenly takes about 2 or 3 seconds. Since my
> configuration comes from an NFS-server, I can be 100% sure that it's
> the same unter FreeBSD 5.4 and 6 (which is the one that seems to have
> problems). I already tried a ktrace to maybe find the bugger, but the
> time-consumption seems to be during some breaks. Here's the important
> parts:
> 
> [...]
>    744 zsh      Events dropped.
>    744 zsh      1122421279.260961 RET   open 3
>    744 zsh      Events dropped.
>    744 zsh      1122421279.271187 RET   close 0
>    744 zsh      1122421280.524404 CALL  break(0x876c20)
>    744 zsh      1122421280.524420 RET   break 0
>    744 zsh      1122421280.563815 CALL  break(0x871c20)
> [...]
>    744 zsh      1122421281.009755 CALL  break(0x835c20)

If you can switch to another shell quickly and kill -STOP it, you
should be able to attach a gdb session and get a stack trace.  Or, run
gcore on it (which will SIGSTOP it temporarily) and gdb the resulting
corefile.  Since the next thing zsh does is unlink the history
lockfile, I'd guess the problem is hist.c:hend() or savehistfile()
somewhere.  Take a look at your ~/.zsh_history file; do you maybe have
some really really long lines in it?  Maybe an NFS glitch caused a run
of NULLs to get stored in there.

>    744 zsh      1122421281.009771 RET   break 0
>    744 zsh      1122421281.548473 CALL  break(0x7d4c20)
>    744 zsh      1122421281.548534 RET   break 0
>    744 zsh      1122421281.548602 CALL  unlink(0x7b6960)
>    744 zsh      1122421281.548606 NAMI  "/home/mark/.zsh_history.LOCK"
>    744 zsh      1122421281.553918 RET   unlink 0
> [...]

-- 
	Dan Nelson
	dnelson@xxxxxxxxxxxxxxx



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