User: Password:
Subscribe / Log in / New account

x86 vDSO revamp

From:  Roland McGrath <>
To:  Andrew Morton <>, Linus Torvalds <>, Thomas Gleixner <>, Ingo Molnar <>, "H. Peter Anvin" <hpa
Subject:  [PATCH 00/18] x86 vDSO revamp
Date:  Mon, 19 Nov 2007 13:59:43 -0800 (PST)
Message-ID:  <20071119215944.01B7C26F8BE@magilla.localdomain>
Archive-link:  Article

The following patches do a bunch of cleanup and rejiggering to the x86
vDSO implementation, but don't change any actual code in the routines in
the vDSO.  They consolidate the 32-bit vDSO code and support for it
between i386 and x86_64/ia32.  This makes them behave the same where
they didn't before (placement), and reduces a lot of duplication.  They
simplify the magic for tracking addresses inside the vDSO, which makes
it possible to remove the fragile kludges in the layout of the vDSO
images.  They consolidate the layout details and build logic for 64-bit
and 32-bit vDSOs.

Most of these patches require the earlier ones in the series, and mostly
in this order.  Patch 17 is optional without upsetting the others, and is
the only one that changes anything users might see in 32-bit processes
(aside from x86_64 behaving more like real i386).  It changes the code
addresses inside the vDSO, commonly seen in backtraces.  Nothing should
care, but anything that had previously hard-coded the expected low 0xfff
bits of those addresses could be wrong now (e.g. tests that check for
verbatim backtrace output including __kernel_* addresses).

There are several renames in here, so GIT can apply them but maybe patch
can't.  (If there is a switch to git-format-patch to produce something
more universally applicable, I haven't found it.)


Copyright © 2007, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds