lkml.org 
[lkml]   [2000]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectI am confused .. [Re: Why does exit_notify() block interrupts?]

Nobody replied to this message. I am a little confused. I guess
there are several possibilities :

1. People agree with me
2. People are not interested
3. People don't really know

I suppose in either case it seems to make sense for me to submit
a patch. Such a patch means a lot to embedded systems without
hurting the performance of desktop systems at all.

Any suggestions?

Jun Sun wrote:
>
> I am doing some interrupt latency measurement, and discovered
> a bottleneck in kernel/exit.c file. See the code excerption below.
>
> Clearly the interrupt blocking time is a linear function of
> the number of the child processes. In my particular test,
> the exiting process has about 400 child processes and causes
> long blocking time.
>
> Why does this code has to block interrupt? It appears
>
> 1) no interrupt handling routines would refer the data modified here.
>
> 2) similiar modifications happened elsewhere (such as in
> forget_original_parent())
> only the non-interrupt blocking version is used. In fact,
> read_lock() is used.
>
> I modified the write_lock_irq() to write_lock(), and the kernel seems
> to be running fine, at least with all my tests.
>
> Any thoughts?
>
> Jun
>
> -----------------
> kernel/exit.c
>
> static void exit_notify(void)
> {
> ....
> write_lock_irq(&tasklist_lock);
> while (current->p_cptr != NULL) {
> p = current->p_cptr;
> current->p_cptr = p->p_osptr;
> p->p_ysptr = NULL;
> p->flags &= ~(PF_PTRACED|PF_TRACESYS);
>
> ...
> }
> write_unlock_irq(&tasklist_lock);
>
> if (current->leader)
> disassociate_ctty(1);
> }
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.rutgers.edu
> Please read the FAQ at http://www.tux.org/lkml/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

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