top and ps commands hang

Latest response

Hi guys,

thanks for your help with this.

I patched my RHEL 5 box, and when I run "top" or "ps" are a regular user, the commands hang. But when I run as root, the commands do not hang.

Any help with this will be appreciated.

Thanks

Arrey

Responses

Does "strace ps" (as the regular user) give you a clue why ps is hanging?

Hi Siem,

When we are executing top, ls, cat command its server hangs. As per your previous update I am giving below out please check and let us know that is the cause.

[root@ct11osbdb001 ~]# strace top execve("/usr/bin/top", ["top"], [/* 29 vars /]) = 0 brk(0) = 0xbb5000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0b80cdd000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=45771, ...}) = 0 mmap(NULL, 45771, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f0b80cd1000 close(3) = 0 open("/lib64/libproc-3.2.8.so", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000=\200g;\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=65640, ...}) = 0 mmap(0x3b67800000, 2240440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b67800000 mprotect(0x3b6780e000, 2097152, PROT_NONE) = 0 mmap(0x3b67a0e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x3b67a0e000 mmap(0x3b67a0f000, 81848, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3b67a0f000 close(3) = 0 open("/lib64/libncursesw.so.5", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\203\300j;\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=195616, ...}) = 0 mmap(0x3b6ac00000, 2288784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b6ac00000 mprotect(0x3b6ac2e000, 2097152, PROT_NONE) = 0 mmap(0x3b6ae2e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2e000) = 0x3b6ae2e000 close(3) = 0 open("/lib64/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\356Ag;\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1926760, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0b80cd0000 mmap(0x3b67400000, 3750152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b67400000 mprotect(0x3b6758a000, 2097152, PROT_NONE) = 0 mmap(0x3b6778a000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18a000) = 0x3b6778a000 mmap(0x3b6778f000, 18696, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3b6778f000 close(3) = 0 open("/lib64/libtinfo.so.5", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\310\300i;\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=138280, ...}) = 0 mmap(0x3b69c00000, 2232320, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b69c00000 mprotect(0x3b69c1d000, 2097152, PROT_NONE) = 0 mmap(0x3b69e1d000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x3b69e1d000 close(3) = 0 open("/lib64/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\r\0g;\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=22536, ...}) = 0 mmap(0x3b67000000, 2109696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b67000000 mprotect(0x3b67002000, 2097152, PROT_NONE) = 0 mmap(0x3b67202000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x3b67202000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0b80ccf000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0b80cce000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0b80ccd000 arch_prctl(ARCH_SET_FS, 0x7f0b80cce700) = 0 mprotect(0x3b6778a000, 16384, PROT_READ) = 0 mprotect(0x3b67202000, 4096, PROT_READ) = 0 mprotect(0x3b66e1f000, 4096, PROT_READ) = 0 munmap(0x7f0b80cd1000, 45771) = 0 uname({sys="Linux", node="ct11osbdb001", ...}) = 0 open("/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 3 read(3, "0-1\n", 8192) = 4 close(3) = 0 open("/proc/sys/kernel/pid_max", O_RDONLY) = 3 read(3, "32768\n", 24) = 6 close(3) = 0 open("/etc/toprc", O_RDONLY) = -1 ENOENT (No such file or directory) open("/root/.toprc", O_RDONLY) = -1 ENOENT (No such file or directory) getuid() = 0 stat("/proc/self", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 brk(0) = 0xbb5000 brk(0xbd6000) = 0xbd6000 stat("/root/.terminfo", 0x7fff2642ac60) = -1 ENOENT (No such file or directory) stat("/etc/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("/etc/terminfo/v/vt100", R_OK) = -1 ENOENT (No such file or directory) stat("/usr/share/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 access("/usr/share/terminfo/v/vt100", R_OK) = 0 open("/usr/share/terminfo/v/vt100", O_RDONLY) = 3 read(3, "\32\1,\0&\0\7\0\16\1\"\2vt100|vt100-am|dec v"..., 4097) = 1194 close(3) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, TIOCGWINSZ, {ws_row=39, ws_col=168, ws_xpixel=0, ws_ypixel=0}) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(0, SNDCTL_TMR_CONTINUE or TCSETSF, {B38400 opost isig -icanon -echo ...}) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig -icanon -echo ...}) = 0 ioctl(1, TIOCGWINSZ, {ws_row=39, ws_col=168, ws_xpixel=0, ws_ypixel=0}) = 0 rt_sigaction(SIGALRM, {0x402d80, [ALRM], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGHUP, {0x402d80, [HUP], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGINT, {0x402d80, [INT], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGPIPE, {0x402d80, [PIPE], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGQUIT, {0x402d80, [QUIT], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTERM, {0x402d80, [TERM], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTSTP, {0x405e80, [TSTP], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTTIN, {0x405e80, [TTIN], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTTOU, {0x405e80, [TTOU], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGCONT, {0x402390, [CONT], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGWINCH, {0x402390, [WINCH], SA_RESTORER|SA_RESTART, 0x3b674326a0}, {SIG_DFL, [], 0}, 8) = 0 stat("/proc/self/task", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 open("/proc", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3 fcntl(3, F_GETFD) = 0x1 (flags FD_CLOEXEC) getdents(3, / 346 entries */, 32768) = 9160 stat("/proc/1", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0 open("/proc/1/stat", O_RDONLY) = 4 read(4, "1 (init) S 0 1 1 0 -1 4202752 33"..., 1023) = 275 close(4) = 0 open("/proc/1/statm", O_RDONLY) = 4 read(4, "4838 273 213 35 0 102 0\n", 1023) = 24 close(4) = 0

Thanks

Ajay Kumar Singh

Looking at the end of the output:

stat("/proc/self/task", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
fcntl(3, F_GETFD) = 0x1 (flags FD_CLOEXEC)
getdents(3, / 346 entries */, 32768) = 9160
stat("/proc/1", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
open("/proc/1/stat", O_RDONLY) = 4
read(4, "1 (init) S 0 1 1 0 -1 4202752 33"..., 1023) = 275
close(4) = 0 open("/proc/1/statm", O_RDONLY) = 4
read(4, "4838 273 213 35 0 102 0\n", 1023) = 24
close(4) = 0

There are 346 entries in /proc and top should access all entries related to processes. It is strange that processing stops with the close() system call of file /proc/1/statm. Does a "root" top in another terminal reveal the behavior of the hanging top?

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.