Messages in this thread | | | Date | Tue, 18 Dec 2012 10:44:22 -0800 | From | "H. Peter Anvin" <> | Subject | Re: [PATCH 6/6] Add 32 bit VDSO support for 32 and 64 bit kernels |
| |
On 12/18/2012 08:52 AM, Stefani Seibold wrote: > > Pardon, i never disregarded nor i have agreed that this is going to be a > part of the VDSO. I currently have also no idea how to do this and i see > no need at the moment to do this revamp. The 64 bit VDSO lives since > more than 6 years with this kind of implementation. >
It was part of this discussion thread, about how to best manage the address space. Fixed addresses are a major problem, and introducing new ones are extremely undesirable.
Hence I wrote:
> IMO it seems this is making it way more complicated than it is. Just > make sure you have a section in the vdso where you can map in a data > page with the symbols in the right offsets. Extra points for doing > magic so that it is at the beginning or end, but I think that might > be harder than necessary.
Basically, make the vvar and hpet pages part of the vdso page list. Optionally they can be mapped without the MAYWRITE option -- in fact, we could easily split the vdso into an executable area which gets MAYWRITE to be able to set breakpoints and a data area which doesn't -- but that is a minor tweak IMO.
> You asked me to do the VDSO 32 bit stuff for the IA32_EMULATION, before > it is ready for inclusion into the kernel. Thats exactly what i did. I > spend the whole weekend of my spare time to do this implementation. Now > we have them all. > > The patch works perfectly, all issues are solved: > > - Calling conventions > - ABI transformations > - System call gateway for X86 32 bit > - Mapping of the FIXMAP and HPET into the lower 32 bit address space for > IA32_EMULATION > - Support for 32 bit programs in 32 kernel and 64 bit kernel > - One VDSO source for all > > If you prefer an other solutions, its okay. There are many ways to code > things. But for now i think it is a good step ahead. That is what i > currently can provide.
This is good. We have some time anyway to get this ready for the 3.9 merge window.
-hpa
| |