help to explain the truss output

the init process on a solaris box is using 20% CPU. I am not sure what

it is doing. truss output shows it is looping. Could someone explain

this section of the truss output:

setcontext(0xFFBEF318)

Incurred fault #6, FLTBOUNDS %pc = 0x00031D04

siginfo: SIGSEGV SEGV_MAPERR addr=0x0000000C

Received signal #11, SIGSEGV [caught]

siginfo: SIGSEGV SEGV_MAPERR addr=0x0000000C

Any help are appreciated.

[451 byte] By [kdusta] at [2007-11-27 11:41:44]
# 1

The program received a segmentation error. Which essentially means it dereferenced a invalid pointer. Truss only shows you system calls, and chances are that what ever the program was doing didnt involve a system call, so truss won't tell you much.

You would be better off running it under dbx or gdb.

If its your own application, make sure you compile it with -g to get debugging info included in the executable.

robert.cohena at 2007-7-29 17:39:57 > top of Java-index,Solaris Operating System,Solaris Essentials - General Technical Questions...
# 2

The process in question is the init process, pid=1. It used 20% CPU. it is wierd.

kdusta at 2007-7-29 17:39:57 > top of Java-index,Solaris Operating System,Solaris Essentials - General Technical Questions...
# 3

Hadnt noticed you were talking about init.

That is kinda weird.

init exists to do the "wait" collection for dying processes who's parents have already exited.

So normally it justs sits in a loop doing the "wait" system call.

Do you have large number of processes being created and exiting quickly?

robert.cohena at 2007-7-29 17:39:57 > top of Java-index,Solaris Operating System,Solaris Essentials - General Technical Questions...
# 4

By any chance, did you just reboot the machine recently, and can you verify that the root filesystem was mounted read write?

jeffrey.sa at 2007-7-29 17:39:57 > top of Java-index,Solaris Operating System,Solaris Essentials - General Technical Questions...