qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/28] linux-user/i386: Properly align signal frame
@ 2024-05-15 15:08 Richard Henderson
  2024-05-15 15:08 ` [PATCH v3 01/28] target/i386: Add tcg/access.[ch] Richard Henderson
                   ` (28 more replies)
  0 siblings, 29 replies; 32+ messages in thread
From: Richard Henderson @ 2024-05-15 15:08 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, laurent

v2: https://lore.kernel.org/qemu-devel/20240409050302.1523277-1-richard.henderson@linaro.org/

Disconnect fpstate from sigframe, just like the kernel does.
Return the separate portions of the frame from get_sigframe.
Alter all of the target fpu routines to access memory that
has already been translated and sized.

Changes for v3:
  - Address review issues (bonzini).
  - Rebase.

Patches needing review:
  02-target-i386-Convert-do_fldt-do_fstt-to-X86Access.patch
  19-linux-user-i386-Fix-mregparm-3-for-signal-deliver.patch
  23-target-i386-Honor-xfeatures-in-xrstor_sigcontext.patch


r~


Richard Henderson (28):
  target/i386: Add tcg/access.[ch]
  target/i386: Convert do_fldt, do_fstt to X86Access
  target/i386: Convert helper_{fbld,fbst}_ST0 to X86Access
  target/i386: Convert do_fldenv to X86Access
  target/i386: Convert do_fstenv to X86Access
  target/i386: Convert do_fsave, do_frstor to X86Access
  target/i386: Convert do_xsave_{fpu,mxcr,sse} to X86Access
  target/i386: Convert do_xrstor_{fpu,mxcr,sse} to X86Access
  tagret/i386: Convert do_fxsave, do_fxrstor to X86Access
  target/i386: Convert do_xsave_* to X86Access
  target/i386: Convert do_xrstor_* to X86Access
  target/i386: Split out do_xsave_chk
  target/i386: Add rbfm argument to cpu_x86_{xsave,xrstor}
  target/i386: Add {hw,sw}_reserved to X86LegacyXSaveArea
  linux-user/i386: Drop xfeatures_size from sigcontext arithmetic
  linux-user/i386: Remove xfeatures from target_fpstate_fxsave
  linux-user/i386: Replace target_fpstate_fxsave with X86LegacyXSaveArea
  linux-user/i386: Split out struct target_fregs_state
  linux-user/i386: Fix -mregparm=3 for signal delivery
  linux-user/i386: Return boolean success from restore_sigcontext
  linux-user/i386: Return boolean success from xrstor_sigcontext
  linux-user/i386: Fix allocation and alignment of fp state
  target/i386: Honor xfeatures in xrstor_sigcontext
  target/i386: Convert do_xsave to X86Access
  target/i386: Convert do_xrstor to X86Access
  target/i386: Pass host pointer and size to cpu_x86_{fsave,frstor}
  target/i386: Pass host pointer and size to cpu_x86_{fxsave,fxrstor}
  target/i386: Pass host pointer and size to cpu_x86_{xsave,xrstor}

 target/i386/cpu.h                |  57 ++-
 target/i386/tcg/access.h         |  40 ++
 linux-user/i386/signal.c         | 671 ++++++++++++++++++-------------
 target/i386/tcg/access.c         | 169 ++++++++
 target/i386/tcg/fpu_helper.c     | 561 ++++++++++++++++----------
 tests/tcg/x86_64/test-1648.c     |  33 ++
 target/i386/tcg/meson.build      |   1 +
 tests/tcg/x86_64/Makefile.target |   1 +
 8 files changed, 1024 insertions(+), 509 deletions(-)
 create mode 100644 target/i386/tcg/access.h
 create mode 100644 target/i386/tcg/access.c
 create mode 100644 tests/tcg/x86_64/test-1648.c

-- 
2.34.1



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

end of thread, other threads:[~2024-06-05 19:40 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-15 15:08 [PATCH v3 00/28] linux-user/i386: Properly align signal frame Richard Henderson
2024-05-15 15:08 ` [PATCH v3 01/28] target/i386: Add tcg/access.[ch] Richard Henderson
2024-05-15 15:08 ` [PATCH v3 02/28] target/i386: Convert do_fldt, do_fstt to X86Access Richard Henderson
2024-05-15 15:08 ` [PATCH v3 03/28] target/i386: Convert helper_{fbld, fbst}_ST0 " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 04/28] target/i386: Convert do_fldenv " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 05/28] target/i386: Convert do_fstenv " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 06/28] target/i386: Convert do_fsave, do_frstor " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 07/28] target/i386: Convert do_xsave_{fpu, mxcr, sse} " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 08/28] target/i386: Convert do_xrstor_{fpu, " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 09/28] tagret/i386: Convert do_fxsave, do_fxrstor " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 10/28] target/i386: Convert do_xsave_* " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 11/28] target/i386: Convert do_xrstor_* " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 12/28] target/i386: Split out do_xsave_chk Richard Henderson
2024-05-15 15:08 ` [PATCH v3 13/28] target/i386: Add rbfm argument to cpu_x86_{xsave, xrstor} Richard Henderson
2024-05-15 15:08 ` [PATCH v3 14/28] target/i386: Add {hw, sw}_reserved to X86LegacyXSaveArea Richard Henderson
2024-05-15 15:08 ` [PATCH v3 15/28] linux-user/i386: Drop xfeatures_size from sigcontext arithmetic Richard Henderson
2024-05-15 15:08 ` [PATCH v3 16/28] linux-user/i386: Remove xfeatures from target_fpstate_fxsave Richard Henderson
2024-05-15 15:08 ` [PATCH v3 17/28] linux-user/i386: Replace target_fpstate_fxsave with X86LegacyXSaveArea Richard Henderson
2024-05-15 15:08 ` [PATCH v3 18/28] linux-user/i386: Split out struct target_fregs_state Richard Henderson
2024-05-15 15:08 ` [PATCH v3 19/28] linux-user/i386: Fix -mregparm=3 for signal delivery Richard Henderson
2024-05-15 15:08 ` [PATCH v3 20/28] linux-user/i386: Return boolean success from restore_sigcontext Richard Henderson
2024-05-15 15:08 ` [PATCH v3 21/28] linux-user/i386: Return boolean success from xrstor_sigcontext Richard Henderson
2024-05-15 15:08 ` [PATCH v3 22/28] linux-user/i386: Fix allocation and alignment of fp state Richard Henderson
2024-05-15 15:08 ` [PATCH v3 23/28] target/i386: Honor xfeatures in xrstor_sigcontext Richard Henderson
2024-05-15 15:08 ` [PATCH v3 24/28] target/i386: Convert do_xsave to X86Access Richard Henderson
2024-05-15 15:08 ` [PATCH v3 25/28] target/i386: Convert do_xrstor " Richard Henderson
2024-05-15 15:08 ` [PATCH v3 26/28] target/i386: Pass host pointer and size to cpu_x86_{fsave, frstor} Richard Henderson
2024-05-15 15:08 ` [PATCH v3 27/28] target/i386: Pass host pointer and size to cpu_x86_{fxsave, fxrstor} Richard Henderson
2024-05-15 15:08 ` [PATCH v3 28/28] target/i386: Pass host pointer and size to cpu_x86_{xsave, xrstor} Richard Henderson
2024-06-05 19:06 ` [PATCH v3 00/28] linux-user/i386: Properly align signal frame Philippe Mathieu-Daudé
2024-06-05 19:16   ` Pierrick Bouvier
2024-06-05 19:38     ` Richard Henderson

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).