All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.