Re: 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to3.6-rc5 on AMD chipsets - bisected
From: Linus Torvalds
Date: Fri Sep 14 2012 - 18:20:45 EST
On Fri, Sep 14, 2012 at 3:10 PM, Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> wrote:
>
> I'm not seeing how it could be. Only ever looking at 1 other cpu
> (regardless which one) cannot be the same as checking 'all' of them.
Oh, you're right, it has that cpu_idle() in the loop too. So yeah, you
can't make it be even remotely equivalent. You can only make it
equivalent for the "all other cpu's are idle" case.
It doesn't even do *that*, though.
In fact, as far as I can tell, it looks like a cpu could be its own
idle_buddy. That whole logic looks very odd.
I vote we just revert it as "insane". The code really doesn't seem to
make any sense.
Linus
--
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/