[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Bug#105476: proc and auth not robust
From: |
Roland McGrath |
Subject: |
Bug#105476: proc and auth not robust |
Date: |
Sun, 5 Aug 2001 14:50:09 -0400 (EDT) |
> On Sat, Aug 04, 2001 at 06:26:12PM -0400, Roland McGrath wrote:
> > Agreed. I see no reason it needs to hold the lock before the first line
> > that touches P->p_id. Hmm, I wonder what happens if the process dies while
> > proc is blocked in auth_server_authenticate. process_has_exited will have
> > come in and done ids_rele(p->p_id). So it's necessary to check p_dead
> > after reacquiring the lock.
>
> Yes. I thought about this a few days ago and came to the same conclusion.
> It is safe to refer to *p as we get a reference in reqport_find (our
> intran), so even if the child was reaped in the meantime we are fine.
Correct. The data structure will still be there, though we must watch out
for changes in its state (e.g. many members are invalid after p_dead has
been set).