Re: [PATCH] move put_task_struct() reaping into a thread [Re: 2.6.18-rt1]

Bill Huey
2006-09-21T07:19:25Z

On Thu, Sep 21, 2006 at 08:54:02AM +0200, Ingo Molnar wrote:
> * Bill Huey <billh@gnuppy.monkey.org> wrote:
>
> > On Wed, Sep 20, 2006 at 04:19:07PM +0200, Ingo Molnar wrote:
> > > I'm pleased to announce the 2.6.18-rt1 tree, which can be downloaded
> > > from the usual place:
> > ...
> > > as usual, bugreports, fixes and suggestions are welcome,
> >
> > Speaking of which...
> >
> > This patch moves put_task_struct() reaping into a thread instead of an
> > RCU callback function [...]
>
> had some time to think about it since yesterday: RCU reaping is done in
> softirqs (check out the softirq-rcu threads on your -rt box), that's why
> i removed the delayed-task-drop code to begin with. Now i dont doubt

It's correct from the standpoint of it being reaped in another thread,
so it fixed those crashes. But I pushed it down into another thread at the
request of Esben and his private discussion with Paul McKenney, since
a summary from Esben felt that call_rcu() was somehow less than ideal to
do that.

> that you saw crashes under 2.6.17 - but did you manage to figure out
> what the reason is for those crashes, and do those reasons really
> necessiate the pushing of task-reapdown into yet another set of kernel
> threads?

Unfortunately no. I even used Robert's .config on my machine. I added a
disk controller and networking device driver just to boot into his
configuration and I still couldn't replicated any of his kjournald problems
at all. If I had his hardware I'd have a better way of replicating those
problems and pound it out.

bill