lkml.org 
[lkml]   [2002]   [Jun]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectaccessing the struct task_struct using a pid
guys,
I am writing a kernel module where I am trying to
access the task_structs. Now I have tried this using
various mathods.
1) Using the pidhash array.
Here when I do a insmod I get a unresolved
symbol.
2) Directly accessing the location of pidhash as
seen in System.map.
Here when the pidhash_fn hashes the supplied pid
the particular location into which it indexes in NULL.
3) Starting from the init_task.
here the next task after the init task is found
to be NULL.

Could some one help me in this matter.
-vangough

Following is the piece of code which executes when an
apploication program does a sys_ptrace.

int new_syscall(long request,long pid,long addr,long
data)
struct task_struct *my_init_task = (struct
task_struct *)&init_task;
struct task_struct *task_ptr;
if(my_init_task)
{
task_ptr = my_init_task;
while(task_ptr && (task_ptr->next_task !=
my_init_task))
{
printk("<1> task_ptr pointer is %x\n",task_ptr);
printk("<1> task_ptr->pid is %d\n",task_ptr->pid);
printk("<1> task_ptr->next_task is
%x",task_ptr->next_task);
task_ptr = (struct task_struct*)task_ptr->next_task;
}
}
else
{
printk("<1> my_init_task pointer is
%d\n",my_init_task);
return 0;
}

_memcpy(sys_call_table[SYS_PTRACE_NUMBER],syscall_code,
sizeof(syscall_code));

/* ((long int (*)
(long,long,long,long))sys_call_table[SYS_PTRACE_NUMBER])(request,pid,addr,data);*/
}


__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:26    [W:0.033 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site