On 10/4/25 12:53 AM, Andrew Cooper wrote:
This is the combined MSR cleanup and FRED series.  Some patches of both v2's
have already been committed.

I have moved the MSR_IMM patch out.  It's not strictly needed for FRED, and
really needs to go behind Jan's patch to use mergable sections for
altinstructions which is definitely not making 4.21 at this point.

I almost got access to a piece of real hardware in time, but that fell through
at the last minute.

In terms of timing, I know we're getting very tight for 4.21, but there has
been an awful lot of disruption with travel and holidays recently.  Half the
patches are already acked/reviewed, but can't easily go in due to logical
dependencies (I suspect patches 15-17 could be committed right away as they're
pretty independent.)

Therefore I'd like to ask Oleksii whether the nominal release ack still
stands.

If you're asking about patch 15-17, then it could be still merged now:
 Release-Acked-by: Oleksii Kurochko<[email protected]>


https://gitlab.com/xen-project/hardware/xen-staging/-/pipelines/2079705485

Btw, is it expected that some tests failed?

Thanks.

~ Oleksii


Andrew Cooper (22):
   x86/msr: Change rdmsr() to have normal API
   x86/msr: Change wrmsr() to take a single parameter
   x86/fsgsbase: Split out __{rd,wr}gs_shadow() helpers
   x86/fsgsbase: Update fs/gs helpers to use wrmsrns()
   x86/fsgsbase: Improve code generation in read_registers()
   x86/boot: Use RSTORSSP to establish SSP
   x86/traps: Alter switch_stack_and_jump() for FRED mode
   x86/traps: Skip Supervisor Shadow Stack tokens in FRED mode
   x86/traps: Make an IDT-specific #DB helper
   x86/traps: Make an IDT-specific #PF helper
   x86/fsgsbase: Make gskern accesses safe under FRED
   x86/traps: Introduce FRED entrypoints
   x86/traps: Enable FRED when requested
   x86/pv: Deduplicate is_canonical_address() in do_set_segment_base()
   x86/entry: Alter how IRET faults are recognised
   x86/entry: Drop the pre exception table infrastructure
   x86/entry: Rework the comment about SYSCALL and DF
   x86/pv: Adjust GS handling for FRED mode
   x86/pv: Guest exception handling in FRED mode
   x86/pv: ERETU error handling
   x86/pv: System call handling in FRED mode
   x86: Clamp reserved bits in eflags more aggressively

  xen/arch/x86/acpi/cpufreq/powernow.c    |  12 +-
  xen/arch/x86/boot/x86_64.S              |  23 +-
  xen/arch/x86/cpu/amd.c                  |   8 +-
  xen/arch/x86/cpu/common.c               |  20 +-
  xen/arch/x86/cpu/intel.c                |  30 +-
  xen/arch/x86/domain.c                   |  34 +-
  xen/arch/x86/extable.c                  |  14 -
  xen/arch/x86/genapic/x2apic.c           |   5 +-
  xen/arch/x86/hvm/domain.c               |   4 +-
  xen/arch/x86/hvm/vmx/vmcs.c             |  32 +-
  xen/arch/x86/hvm/vmx/vmx.c              |   4 +-
  xen/arch/x86/include/asm/asm_defns.h    |  76 +++-
  xen/arch/x86/include/asm/current.h      |   9 +-
  xen/arch/x86/include/asm/domain.h       |   2 +
  xen/arch/x86/include/asm/fsgsbase.h     |  66 +--
  xen/arch/x86/include/asm/hypercall.h    |   2 -
  xen/arch/x86/include/asm/msr.h          |  48 ++-
  xen/arch/x86/include/asm/prot-key.h     |   6 +-
  xen/arch/x86/include/asm/traps.h        |   2 +
  xen/arch/x86/include/asm/uaccess.h      |   2 -
  xen/arch/x86/include/asm/x86-defns.h    |   7 +
  xen/arch/x86/mm.c                       |  12 +-
  xen/arch/x86/nmi.c                      |  18 +-
  xen/arch/x86/oprofile/op_model_athlon.c |   2 +-
  xen/arch/x86/pv/dom0_build.c            |   2 +-
  xen/arch/x86/pv/domain.c                |  22 +-
  xen/arch/x86/pv/iret.c                  |   8 +-
  xen/arch/x86/pv/misc-hypercalls.c       |  42 +-
  xen/arch/x86/pv/traps.c                 |  39 ++
  xen/arch/x86/setup.c                    |  33 +-
  xen/arch/x86/traps-setup.c              |  83 +++-
  xen/arch/x86/traps.c                    | 519 ++++++++++++++++++++++--
  xen/arch/x86/tsx.c                      |  27 +-
  xen/arch/x86/x86_64/Makefile            |   1 +
  xen/arch/x86/x86_64/compat/entry.S      |   3 +-
  xen/arch/x86/x86_64/entry-fred.S        |  57 +++
  xen/arch/x86/x86_64/entry.S             |  46 ++-
  xen/arch/x86/xen.lds.S                  |   5 -
  38 files changed, 1076 insertions(+), 249 deletions(-)
  create mode 100644 xen/arch/x86/x86_64/entry-fred.S

Reply via email to