Re: [RFC PATCH v5 4/7] sched: bias task wakeups to preferred semi-idle packages

From: Balbir Singh
Date: Mon Dec 15 2008 - 13:02:47 EST


>> > > Sure its racy, but so what?
>> > >
>> > > The worst I can see it that we exclude a dying task from this logic,
>> > > which isn't a problem at all, since its dying anyway.
>> >
>> > At which point I seriously doubt it'd still be on the rq anyway.
>> >
>>
>> I forgot to mention that, the check should be (p->mm && !(p->flags & PF_KTHREAD))
>
> I can check for PF_KTHREAD for now. However, I should reduce the
> number of checks since this may slow down wake_idle for sched_mc=2.
>
> We can tolerate p->mm check on a dying process as Peter has suggested,
> hence we don't need to protect it. We are not going to access any
> contents of the mm struct.
>
> If PF_KTHREAD is only being used by AIO, then I feel we can drop the
> check since the threads will not have affinity and they can be moved
> to other cpus anyway.
>
> The main reason for skipping kthread is that they may be using per-cpu
> variables and sleep/preempted. I did not want the wake_idle() logic
> to move them around forcefully. This is not the general case and this
> situation should not happen.
>
> Second reason is to optimise on the affinity check since most of the
> kthreads have affinity and cannot be moved.
>
> This condition check needs optimisation after getting the framework
> functionally correct and useful.


Vaidy, you (or your mailer) seem to have dropped me off of the to/cc
list while replying and this seems to be the case for all replies.

Balbir
--
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/