Re: [PATCH 1/2] elf loader support for auxvec base platform string
From: Nathan Lynch <hidden>
Date: 2008-07-07 15:55:37
Also in:
lkml
Mikael Pettersson wrote:
Nathan Lynch writes: > Some IBM POWER-based platforms have the ability to run in a > mode which mostly appears to the OS as a different processor from the > actual hardware. For example, a Power6 system may appear to be a > Power5+, which makes the AT_PLATFORM value "power5+". > > However, some applications (virtual machines, optimized libraries) can > benefit from knowledge of the underlying CPU model. A new aux vector > entry, AT_BASE_PLATFORM, will denote the actual hardware. For > example, on a Power6 system in Power5+ compatibility mode, AT_PLATFORM > will be "power5+" and AT_BASE_PLATFORM will be "power6". Why on earth would you ever want AT_PLATFORM to differ from AT_BASE_PLATFORM? In cases that matter you admit that AT_BASE_PLATFORM takes precedence, so why involve a fake lame not-quite-the-platform in the first place? Workaround for buggy software?
My apologies, I did not explain the motivation well. The idea is that while AT_PLATFORM indicates the instruction set supported, AT_BASE_PLATFORM indicates the underlying microarchitecture. It's not a matter of buggy software, or of one value taking precedence over the other.