Re: 2.5isms

Andi Kleen
2005-01-01T09:13:45Z

Nick Piggin <nickpiggin@yahoo.com.au> writes:

> Justin Pryzby wrote:
>> Hi all, I have more 2.5isms for the list. ./fs/binfmt_elf.c:
>> #ifdef CONFIG_X86_HT
>> /*
>> * In some cases (e.g. Hyper-Threading), we want to avoid L1
>> * evictions by the processes running on the same package. One
>> * thing we can do is to shuffle the initial stack for them.
>> *
>> * The conditionals here are unneeded, but kept in to make the
>> * code behaviour the same as pre change unless we have
>> * hyperthreaded processors. This should be cleaned up
>> * before 2.6
>> */
>> if (smp_num_siblings > 1)
>> STACK_ALLOC(p, ((current->pid % 64) << 7));
>> #endif
>>
>
> Can we just kill it? Or do it unconditionally? Or maybe better yet, wrap
> it properly in arch code?

You can't kill it without ruining performance on older HT CPUs.
I would just keep it, it fixes the problem perhaps with a small amount of
code. A more generalized #ifdef may be a good idea (NEED_STACK_RANDOM)
may be a good idea, but it is not really a pressing need. Enabling
it unconditionally may be an option, although it will make it harder
to repeat test runs on non hyperthreaded CPUs.

-Andi