How to find out what a process has been doing on a PPC-440 sy stem

Kallol Biswas Kallol_Biswas at pmc-sierra.com
Fri Jun 2 11:45:30 EST 2006


>From ksp it is very easy to find all the register values. Just read _switch() macro.

-----Original Message-----
From: Kallol Biswas 
Sent: Thursday, June 01, 2006 6:02 PM
To: 'External List'
Subject: RE: How to find out what a process has been doing on a PPC-440 system

There is a tsk->thread.ksp (kernel stack pointer) but tsk->thread.regs is null. Next job is to get the register values from the ksp. If anyone has done it before it will save me some time.

-----Original Message-----
From: Kallol Biswas 
Sent: Thursday, June 01, 2006 5:47 PM
To: Kallol Biswas; External List
Subject: RE: How to find out what a process has been doing on a PPC-440 system

I think reading the .*switch() macros/functions we can get the answers.

-----Original Message-----
From: linuxppc-dev-bounces+biswaska=pmc-sierra.com at ozlabs.org [mailto:linuxppc-dev-bounces+biswaska=pmc-sierra.com at ozlabs.org] On Behalf Of Kallol Biswas
Sent: Thursday, June 01, 2006 5:36 PM
To: External List
Subject: How to find out what a process has been doing on a PPC-440 system

Hi,
   I have a list of processes running in a linux system (2.6.11 kernel).
One of the processes invokes send() system call and does not return.
The command "ps" shows that the process is in "RUNNING" state. With an ICE
I could dump each process structures and all the fields, but can't find a way to get the stack trace for each process. Not sure how contexts are saved on ppc-4xx kernel. It seems that they are saved in kernel stack. How do we
get the top of the stack from the task_struct pointers? How to find out
where in kernel send() blocks (not sleeping/scheduled)?

Kallol


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev



More information about the Linuxppc-dev mailing list