Re: [PATCH 0/9] x86-64 put current in r10

Kyle Moffett
2005-11-30T16:39:37Z

On Nov 30, 2005, at 11:22:48, Randy.Dunlap wrote:
> On Wed, 30 Nov 2005, Jari Ruusu wrote:
>
>> Benjamin LaHaise wrote:
>>> The following emails contain the patches to convert x86-64 to
>>> store current
>>> in r10 (also at http://www.kvack.org/~bcrl/patches/v2.6.15-rc3/).
>> [snip]
>>> No benchmarks that I am aware of show regressions with this change.
>>
>> Ben,
>> Your patch breaks all out-of-tree amd64 assembler code used in
>> kernel. r10 register is one of those registers that does not need
>> to be preserved across function calls, and reserving that register
>> for other purpose means that all assembler code using r10 in
>> kernel must be rewritten. This is deeply unfunny.
>>
>> Andi,
>> Please don't apply Ben's patch. It is already bad enough having to
>> deal with two incompatible calling conventions on 32 bit x86.
>
> Just for the sake of understanding the current kernel release
> process, when would something like this be acceptable/possible?
> Would it require a Linux 3.0 version, or at least a 2.8?

It's perfectly acceptable in 2.6, assuming it's properly divided up
into small discrete changes and spends a bit of time in -mm first to
work out the bugs. If people want to maintain out-of-tree drivers,
especially those using assembly, when things break they get to keep
both pieces. This patch produces a rather large space savings and
speeds things up to boot, and I would support it being pushed to
Linus during the 2.6.16 merge window assuming it stands up to abuse
in -mm for a bit.

Cheers,
Kyle Moffett