top and ps commands hang
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
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?
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
