Messages in this thread | | | Date | Wed, 24 Jun 2009 17:21:43 +0200 | From | Oleg Nesterov <> | Subject | Re: [RFC,PATCH 2/2] change __wake_up_parent() to use filtered wakeup |
| |
On 06/24, Roland McGrath wrote: > > Looks good, I'm glad to see this revived. > > I note that even simpler than eligible_child() is just:
I think the check below is orthogonal to eligible_child(). Not sure eligible_child() can really help, but otoh it is cheap and doesn't hurt. But perhaps we can kill it later.
> if ((wo->wo_flags & __WNOTHREAD) && wo->child_wait.private != p->parent) > return 0; > > IIRC that is the test that Ratan's original patch used to address the > particular application usage that first troubled him.
Aha, now I see what was the problem with Ratan's workload.
> But probably this > is already what you meant by "more clever later"
I didn't mean this particular optimization, but it looks good to me.
> (and ->parent is perhaps > not right in all cases there).
I think this is right... Except I'd like to avoid using ->parent.
> Your two patches as they are look safe and useful to me and I hope they can > go in soon.
Thanks.
Yes I think these 2 patches should be applied first, even if eligible_child() itself doesn't buy much. It will be cleaner if we add "real" checks on top.
Oleg.
| |