Re: [PATCH 2.6.12-rc5-mm2] [sched] add allowed CPUs check into find_idlest_group()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



M.Baris Demiray wrote:

Hello Nick,

Nick Piggin wrote:

M.Baris Demiray wrote:

[...]
Close.

Probably it would be better to take the intersection of
(group->cpumask, p->cpus_allowed), and skip the group if
the intersection is empty.


But, isn't it required for us to be allowed to run on _every_
CPU in that group. If we take intersection and continue if
that's not empty, then there could be CPUs in group that are
not allowed. Since any CPU then can be the idlest in that
group we can be assigned to a CPU that is not allowed.
Missing something?


That should be OK. We basically aren't too interested in
exactly which CPU it should go to, but just that it should
go to that group.

If the group is determined to be the idlest, and there is
a CPU that can run the task, then that's all we need.

 > [...]


I don't think it does anything ;)


LOL. Hope next one'll do.

Meanwhile, what is the problem with that patch? Not traversing
the CPUs correctly or continue;ing is wrong?

    for_each_cpu_mask(i, group->cpumask) {
        if (!cpu_isset(i, p->cpus_allowed))
            continue;
    }


In Linux, the for_* macros actually *are* for loops. So that is
that loop that your continue continues, and seeing as it is at
the end of that for loop, it does nothing.

Thanks,
Nick

--
SUSE Labs, Novell Inc.

Send instant messages to your online friends http://au.messenger.yahoo.com -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux