All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: alex.bennee@linaro.org, laurent@vivier.eu
Subject: [PATCH 00/12] linux-user: Load a vdso for x86_64 and hppa
Date: Fri, 18 Jun 2021 20:43:17 -0700	[thread overview]
Message-ID: <20210619034329.532318-1-richard.henderson@linaro.org> (raw)

Supersedes: 20200519194452.9009-1-richard.henderson@linaro.org
Based-on: 20210618192951.125651-1-richard.henderson@linaro.org
("[PATCH v2 00/23] linux-user: Move signal trampolines to new page")

Previous cover letter:
> The subject of AT_SYSINFO came up on launchpad recently.
> 
> There is definite room for improvement in all of this:
> 
> (1) We could build the vdso binary into qemu instead of really
>     loading it from the file system.  This would obviate the
>     several problems of locating the .so file.  It would also
>     mean that --static builds continue to create a standalone
>     qemu binary.
> 
> (2) We could use our cross-build system to build the vdso.
>     Though we'd still likely want to keep the image in git
>     along side the other rom images for when cross-build is
>     not available.
> 
> (3) There are some ??? comments where some decisions could be made,
>     and other ??? that are merely commenting on weirdness.
> 
> (4) It shouldn't take too much effort to create vdsos for the
>     other architectures.  But we should get this one as clean
>     as we can first.

Amusingly, this patch set has turned 11 years old.
First posted April 4, 2010.

Change since previous:

Point (1) has been addressed: the vdso binary pre-processed,
validating the VDSO image, emitting a C array for the image,
collecting the set of relocations required, and identifying
any signal return trampolines.

Point (2) is still an issue in that the cross-build system is
tied up in tests/ makefiles.  It might be time to bite the bullet
and convert it all to meson.

I think there are fewer ??? than before.


r~


Richard Henderson (12):
  linux-user: Fix style problems in linuxload.c
  linux-user: Introduce imgsrc_read, imgsrc_read_alloc
  linux-user: Tidy loader_exec
  linux-user: Do not clobber bprm_buf swapping ehdr
  linux-user: Use ImageSource in load_elf_image
  linux-user: Use ImageSource in load_symbols
  linux-user: Replace bprm->fd with bprm->src.fd
  linux-user: Introduce imgsrc_mmap
  linux-user: Load vdso image if available
  linux-user: Add gen-vdso tool
  linux-user/x86_64: Add vdso
  linux-user/hppa: Add vdso and use it for rt_sigreturn

 linux-user/qemu.h               |  60 ++++++-
 linux-user/elfload.c            | 305 ++++++++++++++++++--------------
 linux-user/flatload.c           |   8 +-
 linux-user/gen-vdso.c           | 168 ++++++++++++++++++
 linux-user/hppa/signal.c        |   8 +-
 linux-user/linuxload.c          | 171 +++++++++++++-----
 linux-user/gen-vdso-elfn.c.inc  | 299 +++++++++++++++++++++++++++++++
 linux-user/hppa/Makefile.vdso   |   4 +
 linux-user/hppa/meson.build     |   6 +
 linux-user/hppa/vdso.S          | 149 ++++++++++++++++
 linux-user/hppa/vdso.ld         |  75 ++++++++
 linux-user/hppa/vdso.so         | Bin 0 -> 5192 bytes
 linux-user/meson.build          |   6 +-
 linux-user/x86_64/Makefile.vdso |   3 +
 linux-user/x86_64/meson.build   |   6 +
 linux-user/x86_64/vdso.S        | 122 +++++++++++++
 linux-user/x86_64/vdso.ld       |  74 ++++++++
 linux-user/x86_64/vdso.so       | Bin 0 -> 5912 bytes
 18 files changed, 1272 insertions(+), 192 deletions(-)
 create mode 100644 linux-user/gen-vdso.c
 create mode 100644 linux-user/gen-vdso-elfn.c.inc
 create mode 100644 linux-user/hppa/Makefile.vdso
 create mode 100644 linux-user/hppa/vdso.S
 create mode 100644 linux-user/hppa/vdso.ld
 create mode 100755 linux-user/hppa/vdso.so
 create mode 100644 linux-user/x86_64/Makefile.vdso
 create mode 100644 linux-user/x86_64/vdso.S
 create mode 100644 linux-user/x86_64/vdso.ld
 create mode 100755 linux-user/x86_64/vdso.so

-- 
2.25.1



             reply	other threads:[~2021-06-19  3:44 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-19  3:43 Richard Henderson [this message]
2021-06-19  3:43 ` [PATCH 01/12] linux-user: Fix style problems in linuxload.c Richard Henderson
2021-06-19  9:47   ` Philippe Mathieu-Daudé
2021-06-19  3:43 ` [PATCH 02/12] linux-user: Introduce imgsrc_read, imgsrc_read_alloc Richard Henderson
2021-06-19  3:43 ` [PATCH 03/12] linux-user: Tidy loader_exec Richard Henderson
2021-06-19  3:43 ` [PATCH 04/12] linux-user: Do not clobber bprm_buf swapping ehdr Richard Henderson
2021-06-19  9:50   ` Philippe Mathieu-Daudé
2021-06-19  3:43 ` [PATCH 05/12] linux-user: Use ImageSource in load_elf_image Richard Henderson
2021-06-19  3:43 ` [PATCH 06/12] linux-user: Use ImageSource in load_symbols Richard Henderson
2021-06-19  3:43 ` [PATCH 07/12] linux-user: Replace bprm->fd with bprm->src.fd Richard Henderson
2021-06-19  9:54   ` Philippe Mathieu-Daudé
2021-06-19  3:43 ` [PATCH 08/12] linux-user: Introduce imgsrc_mmap Richard Henderson
2021-06-19  3:43 ` [PATCH 09/12] linux-user: Load vdso image if available Richard Henderson
2021-06-19  3:43 ` [PATCH 10/12] linux-user: Add gen-vdso tool Richard Henderson
2021-06-19  3:43 ` [PATCH 11/12] linux-user/x86_64: Add vdso Richard Henderson
2021-06-19  3:43 ` [PATCH 12/12] linux-user/hppa: Add vdso and use it for rt_sigreturn Richard Henderson
2021-06-19  4:06 ` [PATCH 00/12] linux-user: Load a vdso for x86_64 and hppa no-reply

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=20210619034329.532318-1-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=laurent@vivier.eu \
    --cc=qemu-devel@nongnu.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.