Problema com o zsh segfaulting: como avaliar melhor o problema?

2

Estou usando o arco Linux 3.15.2-1-ARCH x86_64. Eu não uso zsh (zsh-5.0.5-1) todos os dias, caso contrário eu teria notado segfaults , quando eu inicio a partir do bash cli:

arch kernel: zsh[2187]: segfault at 8 ip 00007f3b49853083 sp 00007fff2ad39198 error 4 in libc-2.19.so[7f3b497d2000+1a4000]
arch systemd-coredump[2188]: Process 2187 (zsh) dumped core.

Agora eu lembro de executá-lo em algum momento e passar pelo script de configuração ( zsh /usr/share/zsh/functions/Newuser/zsh-newuser-install -f segfaults também agora). Então fiz o seguinte:

  • Reiniciar
  • O comportamento é o mesmo no X ou no console
  • Remova a configuração e limpe o cache de pacotes e, em seguida, reinstale : pacman -Rns zsh; paccache -r; paccache -ruk0; pacman -S zsh .
  • Tente compilar usando a receita para 5.0.5-1 e 5.0.4-1 : compila e, em seguida, verifica o binário, executando-o, que segfaults em ambos os casos, então isso aborta.
  • Certifique-se de que não tenha nenhum .zsh* arquivo em meu diretório pessoal - tenha certeza de ter o basic .zsh* arquivos no meu diretório home
  • Renomeado /etc/profile
  • Renomeado /etc/zsh/zprofile
  • zsh-completions é / não está instalado

Ironicamente, zsh --version ou --help funcionam e ecoam as informações relevantes.

Então, qual poderia ser o problema com minha configuração / ambiente aqui?

Observação: foi executado rápido gdb se isso trouxer algum insight o que está acontecendo:

(gdb) run
Starting program: /usr/bin/zsh 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff713e083 in __strchr_sse2 () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff713e083 in __strchr_sse2 () from /usr/lib/libc.so.6
#1  0x000000000044f2e3 in ?? ()
#2  0x000000000044f7d4 in op ()
#3  0x000000000045003b in ?? ()
#4  0x00000000004505cd in ?? ()
#5  0x00000000004507dc in matheval ()
#6  0x0000000000450829 in mathevali ()
#7  0x00000000004602b0 in ?? ()
#8  0x00000000004624ab in assignsparam ()
#9  0x0000000000463636 in createparamtable ()
#10 0x000000000043f2b5 in setupvals ()
#11 0x0000000000440e14 in zsh_main ()
#12 0x00007ffff70dd000 in __libc_start_main () from /usr/lib/libc.so.6
#13 0x000000000040f7be in _start ()
    
por Community 03.07.2014 / 01:33

1 resposta

1

O comportamento pode ser reproduzido com:

export HISTSIZE=V=

Por alguma razão eu tive isso no meu arquivo .bashrc . O mais provável é que eu não tivesse foco na janela que eu achava que tinha, acabei adicionando V = sem perceber e fui descuidado salvando o arquivo; talvez tenha sido aberto no editor - eles estão configurados para ativar o histórico ilimitado . Mas zsh usa o parâmetro também . Então bash não se queixou do erro, mas zsh fez ... Uma rápida olhada na saída de env para qualquer coisa incomum tem que estar na lista de verificação de depuração.

    
por 03.07.2014 / 10:46