Sur mon Macbook, j'ai constaté que parfois il ne peut pas ouvrir un nouveau terminal - une fenêtre de terminal vide apparaît et il se bloque. Le redémarrage résout ce problème, mais il semble qu'il se reproduise au bout d'une semaine environ.
Le moniteur d'activité révèle que login
est en cours d'exécution, mais il n'arrive jamais à zsh
en tant que processus enfant. Si je laisse un terminal ouvert, ce terminal est toujours utilisable.
Je peux ouvrir un terminal bash sur un programme différent, et dans ce cas le système se bloque si j'exécute login
, zsh
ou, de manière intéressante, lorsque je lance ls /dev/tty*
.
Même en tapant ls /dev/tty
et le fait d'appuyer sur la touche tabulation pour la complétion automatique fait que le terminal se bloque et devient inutilisable.
Lorsque ces processus se bloquent, le terminal est inutile - CTRL-C ne les arrête pas.
Je pense que l'accès à /dev/ttys00* est bloqué. Il a peut-être des difficultés à allouer un pseudo-tty ? Je ne pense pas qu'il soit à court de ptys disponibles parce que w
ne montre qu'une ou deux ouvertures.
Voici une partie du résultat de sample
suggérant qu'il s'accroche lstat
:
Call graph:
2893 Thread_2786263 DispatchQueue_1: com.apple.main-thread (serial)
2893 start (in libdyld.dylib) + 1 [0x7fff5f9c43d5]
2893 ??? (in login) load address 0x105e34000 + 0x17b0 [0x105e357b0]
2893 ttyname (in libsystem_c.dylib) + 158 [0x7fff5fa3ba19]
2893 ttyname_r (in libsystem_c.dylib) + 146 [0x7fff5fa3baff]
2893 devname_r (in libsystem_c.dylib) + 175 [0x7fff5fa10e4d]
2893 lstat$INODE64 (in libsystem_kernel.dylib) + 10 [0x7fff5fafba0e]
Des idées ?