Acabei de concluir a instalação do Ubuntu 13.04 em um novo PC e notei que a execução de 'ps aux' em um terminal faz com que ele fique suspenso até a metade exibindo uma lista dos processos:
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 27076 2872 ? Ss 15:20 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S 15:20 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 15:20 0:00 [ksoftirqd/0]
[...trimmed...]
root 1207 0.0 0.0 20972 996 tty6 Ss+ 15:20 0:00 /sbin/getty -8 38400 tty6
root 1219 0.0 0.0 70428 2812 ? Ss 15:20 0:00 /usr/sbin/cups-browsed
... e para, sem retornar ao prompt de comando. Pressionar Ctrl-C para tentar abortar a listagem não termina ps, e apenas exibe ^ C no terminal.
Curioso, corri nele e achei que ps estava bloqueando uma chamada read () enquanto tentava buscar a linha de comando para o processo anacron:
[...trimmed...]
write(1, "root 1207 0.0 0.0 20972 "..., 91root 1207 0.0 0.0 20972 996 tty6 Ss+ 15:20 0:00 /sbin/getty -8 38400 tty6
) = 91
stat("/proc/1219", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/1219/stat", O_RDONLY) = 6
read(6, "1219 (cups-browsed) S 1 1219 121"..., 1023) = 193
close(6) = 0
open("/proc/1219/status", O_RDONLY) = 6
read(6, "Name:\tcups-browsed\nState:\tS (sle"..., 1023) = 777
close(6) = 0
open("/proc/1219/cmdline", O_RDONLY) = 6
read(6, "/usr/sbin/cups-browsed$ cat /proc/1239/cmdline
", 131072) = 23
read(6, "", 131049) = 0
close(6) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=331, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=331, ...}) = 0
write(1, "root 1219 0.0 0.0 70428 "..., 88root 1219 0.0 0.0 70428 2812 ? Ss 15:20 0:00 /usr/sbin/cups-browsed
) = 88
stat("/proc/1239", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/1239/stat", O_RDONLY) = 6
read(6, "1239 (anacron) D 1 1239 1239 0 -"..., 1023) = 189
close(6) = 0
open("/proc/1239/status", O_RDONLY) = 6
read(6, "Name:\tanacron\nState:\tD (disk sle"..., 1023) = 772
close(6) = 0
open("/proc/1239/cmdline", O_RDONLY) = 6
read(6,
Por acaso, tentar fazer isso também resulta em um problema:
$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 27076 2872 ? Ss 15:20 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S 15:20 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 15:20 0:00 [ksoftirqd/0]
[...trimmed...]
root 1207 0.0 0.0 20972 996 tty6 Ss+ 15:20 0:00 /sbin/getty -8 38400 tty6
root 1219 0.0 0.0 70428 2812 ? Ss 15:20 0:00 /usr/sbin/cups-browsed
Encontrei algumas outras postagens de outras pessoas que viram esse fenômeno específico, mas parece que ninguém encontrou uma solução ainda.
link
link
Esta é uma instalação quase nova do Ubuntu 13.04. Acabei de baixar o arquivo .iso da página de downloads do Ubuntu ontem à noite, instalei-o via USB e instalei todas as atualizações mais recentes. Após a instalação, adicionei alguns outros aplicativos (nvidia-current, VirtualBox, Audacity, Audacioso, Google Chrome e VLC), mas não notei esse problema com ps até agora.
Especificações de hardware: Intel i7-3930K @ 3.20GHz, 16GB de RAM, Nvidia GeForce GTX 680 (drivers de 304.88).
Alguém mais já experimentou esse problema antes? Existe uma solução alternativa ou patch de kernel disponível?