About this list Date view Thread view Subject view Author view Attachment view

From: nathan_at_0x00.org
Date: Thu 18 Dec 2003 - 22:09:10 GMT


Hey,

I am testing v1.22 with 2.4.23. I am getting an oops in fs/proc/array.c:proc_pid_status
I believe the offending code is:

buffer += sprintf (buffer,"s_context: %d [", task->vx_id);
for (i=0; i<NB_S_CONTEXT; i++) {
        int ctx = task->s_info->vx_id[i];

        if (ctx == 0)
                break;
        buffer += sprintf (buffer," %d",ctx);
}

The oops is occuring on line 3 of that code. I believe the problem is due to lack of adequate locking around the block of code.
Should there be some read locking code around this block?
I am going to wrap the block that accesses the s_info structure around a read_lock()/unlock of tasklist_lock and see if I can stabilize the machine.

Let me know if anyone else has any insight into this.

Thanks.

-Nathan
_______________________________________________
Vserver mailing list
Vserver_at_list.linux-vserver.org
http://list.linux-vserver.org/mailman/listinfo/vserver


About this list Date view Thread view Subject view Author view Attachment view
[Next/Previous Months] [Main vserver Project Homepage] [Howto Subscribe/Unsubscribe] [Paul Sladen's vserver stuff]
Generated on Thu 18 Dec 2003 - 22:11:15 GMT by hypermail 2.1.3