Re: [PATCH 6/6] Add 32 bit VDSO support for 32 and 64 bit kernels

From: H.J. Lu
Date: Thu Dec 20 2012 - 13:29:40 EST


On Thu, Dec 20, 2012 at 10:21 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
> On 12/20/2012 09:53 AM, Stefani Seibold wrote:
>>
>> In a 32 bit kernel a VDSO can mapped on an fix address VDSO_HIGH_BASE
>> (kernel parameter vdso32=2 or CONFIG_COMPAT_VDSO), which is 0xffffe000.
>> There is no available page BEFORE nor AFTER the page, so it is not
>> possible to have VVAR or HPET as a part of that list!!!!
>>
>
> [Cc: Roland, Linus, H.J.]
>
> The pages before it are safe to use, because they are kernel internal
> and hence not ABI (and in fact depend on the kernel configuration
> parameters.) So pushing down the start of the fixmap region is not a
> problem. This means that to retain this compatibility the existing
> entry points need to be at the end, which is more painful than we'd
> like, but nevertheless there.
>
> Do we know what actually used these fixed address, if anything, ever?
>

Glibc gets VDSO address from AT_* vector. I think glibc is
safe.


--
H.J.
--
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/