linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v9 4/6] ARM: add vdso user-space code
Date: Wed, 10 Sep 2014 18:10:14 +0100	[thread overview]
Message-ID: <20140910171014.GF1710@arm.com> (raw)
In-Reply-To: <CALCETrUKcH11nL4peq5=t0TFMKeY8h-d5kbq1+VV9ujAzYpd-Q@mail.gmail.com>

On Wed, Sep 10, 2014 at 05:52:39PM +0100, Andy Lutomirski wrote:
> On Wed, Sep 10, 2014 at 9:47 AM, Will Deacon <will.deacon@arm.com> wrote:
> > On Fri, Aug 22, 2014 at 10:52:29PM +0100, Nathan Lynch wrote:
> >> Place vdso-related user-space code in arch/arm/kernel/vdso/.
> >>
> >> It is almost completely written in C with some assembly helpers to
> >> load the data page address, sample the counter, and fall back to
> >> system calls when necessary.
> >
> > I'm still a bit puzzled as to how we can implement a compat version of this
> > for a 32-bit userspace running under a 64-bit kernel. Maybe the answer is
> > that we don't care enough (programs will still work fine without it), but if
> > we did want to then we're going to need to build the kernel with two
> > toolchains and it gets really horrible.
> >
> > Do you have any ideas?
> 
> Convince the gcc and binutils people to add a-m32 option to aarch64?
> That's how x86_64 pulls this off :)  Or you could require a
> cross-compiler to be available to enable this particular feature.

The compilers have two separate backends, so I think I'll know what they
say. I guess it's either overhauling kbuild to support two cross compilers,
or have some shell script to accept an option we make up.

> I have no further bright ideas, unless aarch64 and arm assembly are
> miraculously nearly compatible, in which case you could do something
> like what x32 does (build 64-bit and then use objcopy to turn the
> result into an x32 object).

The assembler is pretty different, so I'd be pretty uneasy about trying to
do that.

Will

  reply	other threads:[~2014-09-10 17:10 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-22 21:52 [PATCH v9 0/6] ARM: VDSO Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 1/6] ARM: use _install_special_mapping for sigpage Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 2/6] ARM: place sigpage at a random offset above stack Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 3/6] ARM: miscellaneous vdso infrastructure, preparation Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 4/6] ARM: add vdso user-space code Nathan Lynch
2014-09-10 16:47   ` Will Deacon
2014-09-10 16:52     ` Andy Lutomirski
2014-09-10 17:10       ` Will Deacon [this message]
2014-09-10 17:25         ` Nathan Lynch
2014-09-12  6:50     ` Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 5/6] ARM: vdso initialization, mapping, and synchronization Nathan Lynch
2014-08-22 21:52 ` [PATCH v9 6/6] ARM: add CONFIG_VDSO Kconfig and Makefile bits Nathan Lynch
2014-08-27 20:49 ` [PATCH v9 0/6] ARM: VDSO Christopher Covington
2014-08-27 21:42   ` Andy Lutomirski
2014-09-03  5:41   ` Nathan Lynch
2014-09-03 13:13     ` Christopher Covington
2014-09-03 16:59     ` Andy Lutomirski
2014-09-03 20:03       ` Nathan Lynch
2014-09-03 20:12         ` Andy Lutomirski
2014-09-06  2:32 ` Nathan Lynch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140910171014.GF1710@arm.com \
    --to=will.deacon@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).