Re: INIT hangs with tonight BK pull (2.6.9-rc1+)

From: William Lee Irwin III
Date: Fri Sep 03 2004 - 03:17:54 EST


At some point in the past, Dmitry Torokhov wrote:
>> Well, I was excited about blowing away 100B from each task but am now
>> a bit concerned about the semantic impact of the refcounting part of it.
>> It's unclear what pins an ID while a tty has a reference to it without
>> the reference counting; Kirill, could you answer this?

On Fri, Sep 03, 2004 at 12:09:10PM +0400, Kirill Korotaev wrote:
> stop.
> tty doesn't hold reference to ID neither in my patch nor in the original
> kernel.
> tty only knows session ID and wants to traverse all tasks with such ID.
> if task dies it calls detach_pid() and it won't be found in such a loop.
> No reference counting is required.
> The problem was in loop. Or more exactly my
> do_each_task_pid()/while_each_task_pid() macros were incompatible with
> continue statement inside. It was really foolish error. Like the most are...

Well, that sounds easy enough to deal with. I suppose the reference
counting argument is that the refcounting is on the tty by the tasks
and not vice-versa, and disassociate_ctty() cleans up the SID reference.


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