All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/26] tcg: Workaround macOS 11.2 mprotect bug
@ 2021-03-11  0:21 Richard Henderson
  2021-03-11  0:21 ` [PATCH 01/26] meson: Split out tcg/meson.build Richard Henderson
                   ` (26 more replies)
  0 siblings, 27 replies; 43+ messages in thread
From: Richard Henderson @ 2021-03-11  0:21 UTC (permalink / raw)
  To: qemu-devel; +Cc: r.bolshakov, j

Supercedes: 20210210105527.74943-1-r.bolshakov@yadro.com
("util/osdep: Avoid mprotect() RWX->NONE on Big Sur 11.2")

It took a few more patches than imagined to unify the two
places in which we manipulate the tcg code_gen buffer, but
the result is surely cleaner.

There's a lot more that could be done to clean up this part
of tcg too.  I tried to not get too side-tracked, but didn't
wholly succeed.


r~


Richard Henderson (26):
  meson: Split out tcg/meson.build
  meson: Move disas/tci.c to disas/meson.build
  meson: Split out fpu/meson.build
  tcg: Re-order tcg_region_init vs tcg_prologue_init
  tcg: Remove error return from tcg_region_initial_alloc__locked
  tcg: Split out tcg_region_initial_alloc
  tcg: Split out tcg_region_prologue_set
  tcg: Split out region.c
  accel/tcg: Inline cpu_gen_init
  accel/tcg: Move alloc_code_gen_buffer to tcg/region.c
  accel/tcg: Rename tcg_init to tcg_init_machine
  tcg: Create tcg_init
  accel/tcg: Merge tcg_exec_init into tcg_init_machine
  accel/tcg: Pass down max_cpus to tcg_init
  tcg: Introduce tcg_max_ctxs
  tcg: Move MAX_CODE_GEN_BUFFER_SIZE to tcg-target.h
  tcg: Replace region.end with region.total_size
  tcg: Tidy tcg_n_regions
  tcg: Tidy split_cross_256mb
  tcg: Allocate code_gen_buffer into struct tcg_region_state
  tcg: Return the map protection from alloc_code_gen_buffer
  tcg: Sink qemu_madvise call to common code
  tcg: Do not set guard pages in the rx buffer
  util/osdep: Add qemu_mprotect_rw
  tcg: Merge buffer protection and guard page protection
  tcg: When allocating for !splitwx, begin with PROT_NONE

 meson.build               |  12 +-
 accel/tcg/internal.h      |   2 +
 include/qemu/osdep.h      |   1 +
 include/sysemu/tcg.h      |   2 -
 include/tcg/tcg.h         |   3 +-
 tcg/aarch64/tcg-target.h  |   1 +
 tcg/arm/tcg-target.h      |   1 +
 tcg/i386/tcg-target.h     |   2 +
 tcg/internal.h            |  39 ++
 tcg/mips/tcg-target.h     |   6 +
 tcg/ppc/tcg-target.h      |   2 +
 tcg/riscv/tcg-target.h    |   1 +
 tcg/s390/tcg-target.h     |   3 +
 tcg/sparc/tcg-target.h    |   1 +
 tcg/tci/tcg-target.h      |   1 +
 accel/tcg/tcg-all.c       |  33 +-
 accel/tcg/translate-all.c | 436 +----------------
 bsd-user/main.c           |   1 -
 linux-user/main.c         |   1 -
 tcg/region.c              | 959 ++++++++++++++++++++++++++++++++++++++
 tcg/tcg.c                 | 610 ++----------------------
 util/osdep.c              |   9 +
 disas/meson.build         |   2 +
 fpu/meson.build           |   1 +
 tcg/meson.build           |  14 +
 25 files changed, 1104 insertions(+), 1039 deletions(-)
 create mode 100644 tcg/internal.h
 create mode 100644 tcg/region.c
 create mode 100644 fpu/meson.build
 create mode 100644 tcg/meson.build

-- 
2.25.1



^ permalink raw reply	[flat|nested] 43+ messages in thread

end of thread, other threads:[~2021-03-13 19:48 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-11  0:21 [PATCH 00/26] tcg: Workaround macOS 11.2 mprotect bug Richard Henderson
2021-03-11  0:21 ` [PATCH 01/26] meson: Split out tcg/meson.build Richard Henderson
2021-03-13 17:36   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 02/26] meson: Move disas/tci.c to disas/meson.build Richard Henderson
2021-03-13 17:36   ` Philippe Mathieu-Daudé
2021-03-13 18:46   ` Richard Henderson
2021-03-11  0:21 ` [PATCH 03/26] meson: Split out fpu/meson.build Richard Henderson
2021-03-13 17:37   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 04/26] tcg: Re-order tcg_region_init vs tcg_prologue_init Richard Henderson
2021-03-11  0:21 ` [PATCH 05/26] tcg: Remove error return from tcg_region_initial_alloc__locked Richard Henderson
2021-03-13 17:37   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 06/26] tcg: Split out tcg_region_initial_alloc Richard Henderson
2021-03-11  0:21 ` [PATCH 07/26] tcg: Split out tcg_region_prologue_set Richard Henderson
2021-03-11  0:21 ` [PATCH 08/26] tcg: Split out region.c Richard Henderson
2021-03-11  0:21 ` [PATCH 09/26] accel/tcg: Inline cpu_gen_init Richard Henderson
2021-03-13 17:38   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 10/26] accel/tcg: Move alloc_code_gen_buffer to tcg/region.c Richard Henderson
2021-03-13 18:48   ` Richard Henderson
2021-03-11  0:21 ` [PATCH 11/26] accel/tcg: Rename tcg_init to tcg_init_machine Richard Henderson
2021-03-13 17:39   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 12/26] tcg: Create tcg_init Richard Henderson
2021-03-13 19:27   ` Philippe Mathieu-Daudé
2021-03-13 19:28     ` Richard Henderson
2021-03-11  0:21 ` [PATCH 13/26] accel/tcg: Merge tcg_exec_init into tcg_init_machine Richard Henderson
2021-03-11  0:21 ` [PATCH 14/26] accel/tcg: Pass down max_cpus to tcg_init Richard Henderson
2021-03-13 17:45   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 15/26] tcg: Introduce tcg_max_ctxs Richard Henderson
2021-03-13 17:48   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 16/26] tcg: Move MAX_CODE_GEN_BUFFER_SIZE to tcg-target.h Richard Henderson
2021-03-11  0:42   ` BALATON Zoltan
2021-03-13 16:00     ` Richard Henderson
2021-03-11  0:21 ` [PATCH 17/26] tcg: Replace region.end with region.total_size Richard Henderson
2021-03-11  0:21 ` [PATCH 18/26] tcg: Tidy tcg_n_regions Richard Henderson
2021-03-11  0:21 ` [PATCH 19/26] tcg: Tidy split_cross_256mb Richard Henderson
2021-03-11  0:21 ` [PATCH 20/26] tcg: Allocate code_gen_buffer into struct tcg_region_state Richard Henderson
2021-03-11  0:21 ` [PATCH 21/26] tcg: Return the map protection from alloc_code_gen_buffer Richard Henderson
2021-03-11  0:21 ` [PATCH 22/26] tcg: Sink qemu_madvise call to common code Richard Henderson
2021-03-11  0:21 ` [PATCH 23/26] tcg: Do not set guard pages in the rx buffer Richard Henderson
2021-03-11  0:21 ` [PATCH 24/26] util/osdep: Add qemu_mprotect_rw Richard Henderson
2021-03-13 17:51   ` Philippe Mathieu-Daudé
2021-03-11  0:21 ` [PATCH 25/26] tcg: Merge buffer protection and guard page protection Richard Henderson
2021-03-11  0:21 ` [PATCH 26/26] tcg: When allocating for !splitwx, begin with PROT_NONE Richard Henderson
2021-03-11  0:52 ` [PATCH 00/26] tcg: Workaround macOS 11.2 mprotect bug no-reply

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.