Hi gurus,
I can not seem to be able to run format completely on my t2000 (Sol 10), it just hangs there and I cannot kill it.
I know that it is probably trapped in the kernel somewhere (far from the user space) and this is the reason i can not kill it but I would like to determine how to know where it hangs ...
Truss gives a weird error: (truss: unanticipated system error: PID)
So any help will be really appreciated:
root@RANDOMSERVERNAME# ps -ef | grep format
root 3905 1 0 14:44:36 ? 0:00 format
root 9943 9939 0 23:55:01 ? 0:00 /usr/sbin/format -l /tmp/format.out9939
root 24480 23975 0 08:18:05 pts/2 0:00 grep format
root 13007 1 0 14:58:45 ? 0:00 format
root@RANDOMSERVERNAME# truss -p 3905
truss: unanticipated system error: 3905 <----- ??
root@RANDOMSERVERNAME# truss -p 13007
truss: unanticipated system error: 13007 <----- ??
root@RANDOMSERVERNAME# truss -p 9943
^C <---------- gave no result after 15 minutes ...
Tried to kill gracefully and via -9, no change even after 15 30 minutes (in the case of PID 3905 I tried a dozen times since yesterday).
root@RANDOMSERVERNAME# kill -9 3905
root@RANDOMSERVERNAME# kill -9 9943
root@RANDOMSERVERNAME# kill -9 13007
root@RANDOMSERVERNAME# ps -ef | grep format | grep -v grep
root 3905 1 0 14:44:36 ? 0:00 format
root 9943 9939 0 23:55:01 ? 0:00 /usr/sbin/format -l /tmp/format.out9939
root 13007 1 0 14:58:45 ? 0:00 format
Pstack?
> ::pgrep format
S PID PPID PGID SID UID FLAGS ADDR NAME
R 3905 1 22162 22162 0 0x4a004900 0000060020657900 format
R 13007 1 13007 12429 0 0x4a004900 0000060020594508 format
R 9943 9939 9935 9935 0 0x4a004900 0000060020620510 format
> 0000060020657900::thread
ADDR STATE FLG PFLG SFLG PRI EPRI PIL INTR
0000060020657900 inval/2000 22d0 d158 0 0 0 6 1
> 0000060020657900::walk thread | ::findstack
stack pointer for thread 300050ab180: 2a100a54d41
[ 000002a100a54d41 cv_wait+0x38() ]
000002a100a54df1 spec_lockcsp+0x60()
000002a100a54ea1 spec_open+0x4a4()
000002a100a54f61 fop_open+0x78()
000002a100a55011 vn_openat+0x500()
000002a100a551d1 copen+0x260()
000002a100a552e1 syscall_trap32+0xcc()
> 0000060020594508::thread
ADDR STATE FLG PFLG SFLG PRI EPRI PIL INTR
0000060020594508 inval/2000 22d0 d4c8 0 0 0 0 1
> 0000060020594508::walk thread | ::findstack
stack pointer for thread 300261d2340: 2a1022f6d41
[ 000002a1022f6d41 cv_wait+0x38() ]
000002a1022f6df1 spec_lockcsp+0x60()
000002a1022f6ea1 spec_open+0x4a4()
000002a1022f6f61 fop_open+0x78()
000002a1022f7011 vn_openat+0x500()
000002a1022f71d1 copen+0x260()
000002a1022f72e1 syscall_trap32+0xcc()
> 0000060020620510::thread
ADDR STATE FLG PFLG SFLG PRI EPRI PIL INTR
0000060020620510 inval/2000 207b 2168 0 0 0 6 1
> 0000060020620510::walk thread | ::findstack
stack pointer for thread 30008397a80: 2a1004ded41
[ 000002a1004ded41 cv_wait+0x38() ]
000002a1004dedf1 spec_lockcsp+0x60()
000002a1004deea1 spec_open+0x4a4()
000002a1004def61 fop_open+0x78()
000002a1004df011 vn_openat+0x500()
000002a1004df1d1 copen+0x260()
000002a1004df2e1 syscall_trap32+0xcc()
Anyone who knows how to speak Solaris Kernel that understand where this is stucked at (apparently I would say that the 3 processes are stucked at exactly the same place ... without me knowing where it is ...).
Thanks gurus!