qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 99ea31: target/ppc: Fix GDB SPR regnum indexi


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 99ea31: target/ppc: Fix GDB SPR regnum indexing
Date: Wed, 13 Mar 2024 08:11:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 99ea316e2a6180a8318f47a25c4a13d80ecf8ba4
      
https://github.com/qemu/qemu/commit/99ea316e2a6180a8318f47a25c4a13d80ecf8ba4
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/gdbstub.c

  Log Message:
  -----------
  target/ppc: Fix GDB SPR regnum indexing

Fix an off by one bug.

Fixes: 1b53948ff8f70 ("target/ppc: Use GDBFeature for dynamic XML")
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 678b6f1af75ef42f510495a81fe8562e872e9daf
      
https://github.com/qemu/qemu/commit/678b6f1af75ef42f510495a81fe8562e872e9daf
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/helper_regs.c

  Log Message:
  -----------
  target/ppc: Prevent supervisor from modifying MSR[ME]

Prevent guest state modifying the MSR[ME] bit. Per ISA:

  An attempt to modify MSR[ME] in privileged but non-hypervisor state
  is ignored (i.e., the bit is not changed).

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 5e97fd48d7c5429ec9ec83b7f7169462d4a9d2e8
      
https://github.com/qemu/qemu/commit/5e97fd48d7c5429ec9ec83b7f7169462d4a9d2e8
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c

  Log Message:
  -----------
  spapr: set MSR[ME] and MSR[FP] on client entry

The initial MSR state for the OpenFirmware binding specifies
MSR[ME] and MSR[FP] are set.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 8f054d9ee8255434f0fe59955e82a13b45482a27
      
https://github.com/qemu/qemu/commit/8f054d9ee8255434f0fe59955e82a13b45482a27
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_cpu_core.c
    M target/ppc/cpu-models.c
    M target/ppc/cpu_init.c
    M target/ppc/kvm.c

  Log Message:
  -----------
  ppc: Drop support for POWER9 and POWER10 DD1 chips

The POWER9 DD1 and POWER10 DD1 chips are not public and are no longer of
any use in QEMU. Remove them.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 4b8732fce9cec7703b49543d612b6e654e0452dd
      
https://github.com/qemu/qemu/commit/4b8732fce9cec7703b49543d612b6e654e0452dd
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/cpu_init.c

  Log Message:
  -----------
  target/ppc: POWER10 does not have transactional memory

POWER10 hardware implements a degenerate transactional memory facility
in POWER8/9 PCR compatibility modes to permit migration from older
CPUs, but POWER10 / ISA v3.1 mode does not support it so the CPU model
should not support it.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: a5a5778622d8104b7184ba61bd16d5968195dce1
      
https://github.com/qemu/qemu/commit/a5a5778622d8104b7184ba61bd16d5968195dce1
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/pnv.c
    M hw/ppc/spapr.c

  Log Message:
  -----------
  ppc/spapr|pnv: Remove SAO from pa-features

SAO is a page table attribute that strengthens the memory ordering of
accesses. QEMU with MTTCG does not implement this, so clear it in
ibm,pa-features. This is an obscure feature that has been removed from
POWER10 ISA v3.1, there isn't much concern with removing it.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 17aa684ff7941f44af57cbb1c7b46bf5dc4f4fe2
      
https://github.com/qemu/qemu/commit/17aa684ff7941f44af57cbb1c7b46bf5dc4f4fe2
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  ppc/spapr: Remove copy-paste from pa-features

TCG does not support copy/paste instructions. Remove it from
ibm,pa-features. This has never been implemented under TCG or
practically usable under KVM, so it won't be missed.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 8b0e3fb835511fe65cfb0df79fc17df2fede4805
      
https://github.com/qemu/qemu/commit/8b0e3fb835511fe65cfb0df79fc17df2fede4805
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  ppc/spapr: Adjust ibm,pa-features for POWER9

"MMR" and "SPR SO" are not implemented in POWER9, so clear those bits.
HTM is not set by default, and only later if the cap is set, so remove
the comment that suggests otherwise.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: d83d350cb2f9edbdb4eccc6454c82202a09483c8
      
https://github.com/qemu/qemu/commit/d83d350cb2f9edbdb4eccc6454c82202a09483c8
  Author: Benjamin Gray <bgray@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c

  Log Message:
  -----------
  ppc/spapr: Add pa-features for POWER10 machines

Add POWER10 pa-features entry.

Notably DEXCR and [P]HASHST/[P]HASHCHK instruction support is
advertised. Each DEXCR aspect is allocated a bit in the device tree,
using the 68--71 byte range (inclusive). The functionality of the
[P]HASHST/[P]HASHCHK instructions is separately declared in byte 72,
bit 0 (BE).

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
[npiggin: reword title and changelog, adjust a few bits]
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: ce2b8536826101ec7b597e745ea31d392170458c
      
https://github.com/qemu/qemu/commit/ce2b8536826101ec7b597e745ea31d392170458c
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/pnv.c

  Log Message:
  -----------
  ppc/pnv: Permit ibm,pa-features set per machine variant

This allows different pa-features for powernv8/9/10.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 24a9d20cdeec61564856ddcb27542128f9617c93
      
https://github.com/qemu/qemu/commit/24a9d20cdeec61564856ddcb27542128f9617c93
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/pnv.c
    M hw/ppc/spapr.c

  Log Message:
  -----------
  ppc/pnv: Set POWER9, POWER10 ibm,pa-features bits

Copy the pa-features arrays from spapr, adjusting slightly as
described in comments.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: fc7820ff61462f812d58a5eda5de08960e1c5da7
      
https://github.com/qemu/qemu/commit/fc7820ff61462f812d58a5eda5de08960e1c5da7
  Author: Cédric Le Goater <clg@kaod.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Remove myself as reviewer from PPC

PPC maintainership has been a side activity for the last 2 years and
it is time to let go some of it now that Nick has taken over.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 0cac0f1b96444dbe152f1a3bc561bab4da2bb387
      
https://github.com/qemu/qemu/commit/0cac0f1b96444dbe152f1a3bc561bab4da2bb387
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M docs/about/deprecated.rst

  Log Message:
  -----------
  docs: Deprecate the pseries-2.12 machines

pSeries machines before 3.0 have complex migration back
compatibility code we'd like to get ride of. The last
one is 2.12, which is 6 years old. We just deprecated up
to the 2.11 machine in commit 1392617d35 ("spapr: Tag
pseries-2.1 - 2.11 machines as deprecated").
Take to opportunity to also deprecate the 2.12 machines.

Acked-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 623d9065b68d4fc4fc420aaacac5eadf8d0d265f
      
https://github.com/qemu/qemu/commit/623d9065b68d4fc4fc420aaacac5eadf8d0d265f
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M MAINTAINERS
    A docs/system/ppc/amigang.rst
    M docs/system/target-ppc.rst

  Log Message:
  -----------
  docs/system/ppc: Document running Linux on AmigaNG machines

Documentation on how to run Linux on the amigaone, pegasos2 and
sam460ex machines is currently buried in the depths of the qemu-devel
mailing list and in the source code. Let's collect the information in
the QEMU handbook for a one stop solution.

Tested-by: Bernhard Beschow <shentey@gmail.com>
Reviewed-by: Bernhard Beschow <shentey@gmail.com>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Co-authored-by: Bernhard Beschow <shentey@gmail.com>
Signed-off-by: Bernhard Beschow <shentey@gmail.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: a9bd40d9375451c0990d5ae0154b166f745bc458
      
https://github.com/qemu/qemu/commit/a9bd40d9375451c0990d5ae0154b166f745bc458
  Author: Chinmay Rath <rathc@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/insn32.decode
    M target/ppc/translate.c
    M target/ppc/translate/fixedpoint-impl.c.inc

  Log Message:
  -----------
  target/ppc: Move add and subf type fixed-point arithmetic instructions to 
decodetree

This patch moves the below instructions to decodetree specification:

        {add, subf}[c,e,me,ze][o][.]       : XO-form
        addic[.], subfic                   : D-form
        addex                              : Z23-form

This patch introduces XO form instructions into decode tree
specification, for which all the four variations([o][.]) have been
handled with a single pattern. The changes were verified by validating
that the tcg ops generated by those instructions remain the same, which
were captured with the '-d in_asm,op' flag.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Chinmay Rath <rathc@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 0b8893236ef11dd26be9290156ea34cb122e4dbe
      
https://github.com/qemu/qemu/commit/0b8893236ef11dd26be9290156ea34cb122e4dbe
  Author: Madhavan Srinivasan <maddy@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/cpu.h
    M target/ppc/cpu_init.c

  Log Message:
  -----------
  target/ppc: Add power10 pmu SPRs

Currently in tcg mode, when reading from power10 pmu spr like MMCR3,
qemu logs this message (when starting qemu with -d guest_errors)

        Trying to read invalid spr 754 (0x2f2) at 0000000030056bb0

This is becuase, no read/write call-backs are registered for
these SPRs. Add support to register generic read/write
functions to these power10 pmu sprs to fix it.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 9940412ae4ae2d4971959c13311ba8d822974452
      
https://github.com/qemu/qemu/commit/9940412ae4ae2d4971959c13311ba8d822974452
  Author: Caleb Schlossin <calebs@linux.vnet.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/pnv.c
    M hw/ppc/pnv_core.c
    M include/hw/ppc/pnv_chip.h
    M include/hw/ppc/pnv_core.h
    M target/ppc/misc_helper.c

  Log Message:
  -----------
  ppc/pnv: Improve pervasive topology calculation for big-core

Big (SMT8) cores have a complicated function to map the core, thread ID
to pervasive topology (PIR). Fix this for power8, power9, and power10.

Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Caleb Schlossin <calebs@linux.vnet.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: bc30c1c6632c33eb9a27680b2de673d8b22a65b3
      
https://github.com/qemu/qemu/commit/bc30c1c6632c33eb9a27680b2de673d8b22a65b3
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Use env_cpu for cpu_abort in excp_helper

Use the env_cpu function to get the CPUState for cpu_abort. These are
only needed in case of fatal errors so this allows to avoid casting
and storing CPUState in a local variable wnen not needed.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: ab452503932a8a5841ba394abc797715089c2f11
      
https://github.com/qemu/qemu/commit/ab452503932a8a5841ba394abc797715089c2f11
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/cpu.h
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Readability improvements in exception handlers

Improve readability by shortening some long comments, removing
comments that state the obvious and dropping some empty lines so they
don't distract when reading the code.

Acked-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: d54b82a481df62f0146ea20ea9244af810820b0e
      
https://github.com/qemu/qemu/commit/d54b82a481df62f0146ea20ea9244af810820b0e
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/translate.c

  Log Message:
  -----------
  target/ppc: Add gen_exception_err_nip() function

Add gen_exception_err_nip() that does the same as gen_exception_err()
but takes the nip as a parameter to allow specifying it instead of
using the current instruction address then change gen_exception_err()
to use it.

The gen_exception() and gen_exception_nip() functions are similar so
remove code duplication from those too while at it.

Suggested-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: f6c2d68bac33c291ed967aa0f5245c4fc54c75ee
      
https://github.com/qemu/qemu/commit/f6c2d68bac33c291ed967aa0f5245c4fc54c75ee
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Clean up ifdefs in excp_helper.c, part 1

Use #ifdef, #ifndef for brevity and add comments to #endif that are
more than a few lines apart for clarity.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 754920c7e6fa5b8b3cf8e1858299e1a2e3b315a8
      
https://github.com/qemu/qemu/commit/754920c7e6fa5b8b3cf8e1858299e1a2e3b315a8
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Clean up ifdefs in excp_helper.c, part 2

Remove check for !defined(CONFIG_USER_ONLY) as this is already within
an #ifndef CONFIG_USER_ONLY block.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 5ca958cf82058643dfc45dd74a066f4911d651bc
      
https://github.com/qemu/qemu/commit/5ca958cf82058643dfc45dd74a066f4911d651bc
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Clean up ifdefs in excp_helper.c, part 3

Concatenate #if blocks that are ending then beginning on the next line
again.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 868cb6bac51376a38b18f432a047242fed840998
      
https://github.com/qemu/qemu/commit/868cb6bac51376a38b18f432a047242fed840998
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Remove interrupt handler wrapper functions

These wrappers call out to handle POWER7 and newer in separate
functions but reduce to the generic case when TARGET_PPC64 is not
defined. It is easy enough to include the switch in the beginning of
the generic functions to branch out to the specific functions and get
rid of these wrappers. This avoids one indirection and entirely
compiles out the switch without TARGET_PPC64.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 6026fdbdbdf5f30edc906de0ae287e95c1b6892b
      
https://github.com/qemu/qemu/commit/6026fdbdbdf5f30edc906de0ae287e95c1b6892b
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_hcall.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: register nested-hv api hcalls only for cap-nested-hv

Since cap-nested-hv is an optional capability, it makes sense to register
api specfic hcalls only when respective capability is enabled. This
requires to introduce a new API to unregister hypercalls to maintain
sanity across guest reboot since caps are re-applied across reboots and
re-registeration of hypercalls would hit assert otherwise.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: c2813a35700a53d660d9b7f7b4810e1cef167ede
      
https://github.com/qemu/qemu/commit/c2813a35700a53d660d9b7f7b4810e1cef167ede
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: move nested part of spapr_get_pate into spapr_nested.c

Most of the nested code has already been moved to spapr_nested.c
This logic inside spapr_get_pate is related to nested guests and
better suited for spapr_nested.c, hence moving there.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 1331d0acc76662bd423cb06db23cf0083da695e0
      
https://github.com/qemu/qemu/commit/1331d0acc76662bd423cb06db23cf0083da695e0
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Introduce SpaprMachineStateNested to store related info.

Currently, nested_ptcr is being used by existing nested-hv API to store
nested guest related info. This need to be organised to extend support
for the nested PAPR API which would need to store additional info
related to nested guests in next series of patches.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 21a8d22f58b7e8eb70f5cf48ba119d7865a37fc0
      
https://github.com/qemu/qemu/commit/21a8d22f58b7e8eb70f5cf48ba119d7865a37fc0
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: keep nested-hv related code restricted to its API.

spapr_exit_nested and spapr_get_pate_nested_hv contains code which
is specific to nested-hv API. Isolating code flows based on API
helps extending it to be used with different API as well.

Suggested-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 195bd175fc8d498f1c056a72c06ba511d554ad75
      
https://github.com/qemu/qemu/commit/195bd175fc8d498f1c056a72c06ba511d554ad75
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    A docs/devel/nested-papr.txt

  Log Message:
  -----------
  spapr: nested: Document Nested PAPR API

Adding initial documentation about Nested PAPR API to describe the set
of APIs and its usage. Also talks about the Guest State Buffer elements
and it's format which is used between L0/L1 to communicate L2 state.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 71c33ef000b690f0b5c40b6f2a2898575b2bf3f9
      
https://github.com/qemu/qemu/commit/71c33ef000b690f0b5c40b6f2a2898575b2bf3f9
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Introduce H_GUEST_[GET|SET]_CAPABILITIES hcalls.

Introduce the nested PAPR hcalls:
 - H_GUEST_GET_CAPABILITIES which is used to query the capabilities
   of the API and the L2 guests it provides.
 - H_GUEST_SET_CAPABILITIES which is used to set the Guest API
   capabilities that the Host Partition supports and may use.

[amachhiw: support for p9 compat mode and return register bug fixes]

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Amit Machhiwal <amachhiw@linux.vnet.ibm.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: f5605626024f0a694de14fba48568533084ce4fd
      
https://github.com/qemu/qemu/commit/f5605626024f0a694de14fba48568533084ce4fd
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Introduce H_GUEST_[CREATE|DELETE] hcalls.

Introduce the nested PAPR hcalls:
    - H_GUEST_CREATE which is used to create and allocate resources for
nested guest being created.
    - H_GUEST_DELETE which is used to delete and deallocate resources
for the nested guest being deleted. It also supports deleting all nested
guests at once using a deleteAll flag.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: c6664be07774d338288f0e5c690a09762c2c91e3
      
https://github.com/qemu/qemu/commit/c6664be07774d338288f0e5c690a09762c2c91e3
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Introduce H_GUEST_CREATE_VCPU hcall.

Introduce the nested PAPR hcall H_GUEST_CREATE_VCPU which is used to
create and initialize the specified VCPU resource for the previously
created guest. Each guest can have multiple VCPUs upto max 2048.
All VCPUs for a guest gets deallocated on guest delete.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: bb23bccebc7f99aa200fa27ff5c2056627951ae4
      
https://github.com/qemu/qemu/commit/bb23bccebc7f99aa200fa27ff5c2056627951ae4
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr_nested.h
    M target/ppc/cpu.h

  Log Message:
  -----------
  spapr: nested: Extend nested_ppc_state for nested PAPR API

Currently, nested_ppc_state stores a certain set of registers and works
with nested_[load|save]_state() for state transfer as reqd for nested-hv API.
Extending these with additional registers state as reqd for nested PAPR API.

Acked-by: Nicholas Piggin <npiggin@gmail.com>
Suggested-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 4a575f9a0567f72df4addba23a857eefc2488258
      
https://github.com/qemu/qemu/commit/4a575f9a0567f72df4addba23a857eefc2488258
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Initialize the GSB elements lookup table.

Nested PAPR API provides a standard Guest State Buffer (GSB) format
with unique IDs for each guest state element for which get/set state is
supported by the API. Some of the elements are read-only and/or guest-wide.
Introducing additional required GSB elements and helper routines for state
exchange of each of the nested guest state elements for which get/set state
should be supported by the API.

[amachhiw: set the PCR whenever logical PVR is set]

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Shivaprasad G Bhat <sbhat@linux.ibm.com>
Signed-off-by: Amit Machhiwal <amachhiw@linux.vnet.ibm.com>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 64c43909b29765f415c4bfe3e38f113252894277
      
https://github.com/qemu/qemu/commit/64c43909b29765f415c4bfe3e38f113252894277
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Introduce H_GUEST_[GET|SET]_STATE hcalls.

Introduce the nested PAPR hcalls:
    - H_GUEST_GET_STATE which is used to get state of a nested guest or
      a guest VCPU. The value field for each element in the request is
      destination to be updated to reflect current state on success.
    - H_GUEST_SET_STATE which is used to modify the state of a guest or
      a guest VCPU. On success, guest (or its VCPU) state shall be
      updated as per the value field for the requested element(s).

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 98823ce03ad5f3fe6f8a43d747168452ecc6cc8b
      
https://github.com/qemu/qemu/commit/98823ce03ad5f3fe6f8a43d747168452ecc6cc8b
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr_nested.h

  Log Message:
  -----------
  spapr: nested: Use correct source for parttbl info for nested PAPR API.

For nested PAPR API, we use SpaprMachineStateNestedGuest struct to store
partition table info, use the same in spapr_get_pate_nested() via
helper.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 497711070905393a4614e87c3fe4a4445c369bce
      
https://github.com/qemu/qemu/commit/497711070905393a4614e87c3fe4a4445c369bce
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/ppc.c
    M hw/ppc/spapr_nested.c
    M target/ppc/cpu.h

  Log Message:
  -----------
  spapr: nested: Introduce H_GUEST_RUN_VCPU hcall.

The H_GUEST_RUN_VCPU hcall is used to start execution of a Guest VCPU.
The Hypervisor will update the state of the Guest VCPU based on the
input buffer, restore the saved Guest VCPU state, and start its
execution.

The Guest VCPU can stop running for numerous reasons including HCALLs,
hypervisor exceptions, or an outstanding Host Partition Interrupt.
The reason that the Guest VCPU stopped running is communicated through
R4 and the output buffer will be filled in with any relevant state.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: e1617b845104032f0aaad9b91dcda56c7c437998
      
https://github.com/qemu/qemu/commit/e1617b845104032f0aaad9b91dcda56c7c437998
  Author: Harsh Prateek Bora <harshpb@linux.ibm.com>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M hw/ppc/spapr.c
    M hw/ppc/spapr_caps.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/spapr.h

  Log Message:
  -----------
  spapr: nested: Introduce cap-nested-papr for Nested PAPR API

Introduce a SPAPR capability cap-nested-papr which enables nested PAPR
API for nested guests. This new API is to enable support for KVM on PowerVM
and the support in Linux kernel has already merged upstream.

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>


  Commit: 081340d1ddfe27e80f653d707c278edf06a9a803
      
https://github.com/qemu/qemu/commit/081340d1ddfe27e80f653d707c278edf06a9a803
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M docs/devel/tracing.rst
    M meson.build
    M scripts/tracetool.py

  Log Message:
  -----------
  tracetool: remove redundant --target-type / --target-name args

The --target-type and --target-name args are used to construct
the default probe prefix if '--probe-prefix' is not given. The
meson.build will always pass '--probe-prefix', so the other args
are effectively redundant.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Message-id: 20240108171356.1037059-2-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: 2b608e16ca00017509fa2a211b7b49aacdedb760
      
https://github.com/qemu/qemu/commit/2b608e16ca00017509fa2a211b7b49aacdedb760
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2024-03-12 (Tue, 12 Mar 2024)

  Changed paths:
    M meson.build

  Log Message:
  -----------
  meson: generate .stp files for tools too

The qemu-img, qemu-io, qemu-nbd, qemu-storage-daemon tools all have
support for systemtap tracing built-in, so should be given corresponding
.stp files to define their probes.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-id: 20240108171356.1037059-3-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: bab9dabe7df6a52209b2646da5479ffb629ab8f5
      
https://github.com/qemu/qemu/commit/bab9dabe7df6a52209b2646da5479ffb629ab8f5
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M docs/devel/tracing.rst
    M meson.build
    M scripts/tracetool.py

  Log Message:
  -----------
  Merge tag 'tracing-pull-request' of https://gitlab.com/stefanha/qemu into 
staging

Pull request

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmXwpoYACgkQnKSrs4Gr
# c8gE0wf/c0hNDKoV01N8IwfJdmIBySNeCYRQiwcR84iiPoGGAwYdKuLa7wHaQKiO
# iM0EV/ltJiiOGCHxlffVqLBzJurJHsHG6m429KBLRBXWc6gVzhCN9TjD8DwHxiTU
# qzczoev8NJ2y5mrxzPPPjMxSSJEe3Ynas6ngeHeYBUtu0PRNp79zceWdtS0sPzia
# sCI8EH/oCZQgVcwI/UkIOXjzbKK1lZWa2805//KIqvG27i9zHzLJ0l5eeLtbpZpy
# LnFGRyQGGf+jEKAJuT6598q6T+jCkLCMN6zpyKWGvcYleNvBnlw6+N8Il8zV7KSc
# TE5BNk+C7I9aimrRyaz3WrFCZW5DbQ==
# =q9Im
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 12 Mar 2024 19:01:26 GMT
# gpg:                using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" [full]
# gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>" [full]
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8

* tag 'tracing-pull-request' of https://gitlab.com/stefanha/qemu:
  meson: generate .stp files for tools too
  tracetool: remove redundant --target-type / --target-name args

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 51e31f21407190df9bd048a539267534cea7dd66
      
https://github.com/qemu/qemu/commit/51e31f21407190df9bd048a539267534cea7dd66
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2024-03-13 (Wed, 13 Mar 2024)

  Changed paths:
    M MAINTAINERS
    M docs/about/deprecated.rst
    A docs/devel/nested-papr.txt
    A docs/system/ppc/amigang.rst
    M docs/system/target-ppc.rst
    M hw/ppc/pnv.c
    M hw/ppc/pnv_core.c
    M hw/ppc/ppc.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_caps.c
    M hw/ppc/spapr_cpu_core.c
    M hw/ppc/spapr_hcall.c
    M hw/ppc/spapr_nested.c
    M include/hw/ppc/pnv_chip.h
    M include/hw/ppc/pnv_core.h
    M include/hw/ppc/spapr.h
    M include/hw/ppc/spapr_nested.h
    M target/ppc/cpu-models.c
    M target/ppc/cpu.h
    M target/ppc/cpu_init.c
    M target/ppc/excp_helper.c
    M target/ppc/gdbstub.c
    M target/ppc/helper_regs.c
    M target/ppc/insn32.decode
    M target/ppc/kvm.c
    M target/ppc/misc_helper.c
    M target/ppc/translate.c
    M target/ppc/translate/fixedpoint-impl.c.inc

  Log Message:
  -----------
  Merge tag 'pull-ppc-for-9.0-2-20240313' of https://gitlab.com/npiggin/qemu 
into staging

* PAPR nested hypervisor host implementation for spapr TCG
* excp_helper.c code cleanups and improvements
* Move more ops to decodetree
* Deprecate pseries-2.12 machines and P9 and P10 DD1.0 CPUs
* Document running Linux on AmigaNG
* Update dt feature advertising POWER CPUs.
* Add P10 PMU SPRs
* Improve pnv topology calculation for SMT8 CPUs.
* Various bug fixes.

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEETkN92lZhb0MpsKeVZ7MCdqhiHK4FAmXwiT8ACgkQZ7MCdqhi
# HK7C/w//XxEO2bQTFPLFDTrP/voq7pcX8XeQNVyXCkXYjvsbu05oQow50k+Y5UAE
# US4MFjt8jFz0vuIKuKyoA3kG41zDSOzoX4TQXMM+tyTWbuFF3KAyfizb1xE6SYAN
# xJEGvmiXv/EgoSBD7BTKQp1tMPdIGZLwSdYiA0lmOo7YaMCgYAXaujW5hnNjQecT
# 873sN+10pHtQY++mINtD9Nfb6AcDGMWw0b+bykqIXhNRkI8IGOS4WF4vAuMBrwfe
# UM00wDnNRb86Dk14bv2XVNDr6/i0VRtUMwM4yiptrQ1TQx18LZaPSQFYjQfPaan7
# LwN4QkMFnBX54yJ7Npvjvu8BCBF47kwOVu4CIAFJ4sIm0WfTmozDpPttwcZ5w7Ve
# iXDOB9ECAB4pQ2rCgbSNG8MYUZgoHHOuThqolOP0Vh9NHRRJxpdw6CyAbmCGftc0
# lvRDPFiKp8xmCNJ/j3XzoUdHoG7NMwpUmHv9ruGU18SdQ8hyJN9AcQGWYrB4v0RV
# /hs2RAbwntG7ahkcwd8uy5aFw88Wph/uGXPXc49EWj7i49vHeIV2y5+gtthMywje
# qqjFXkistXuF+JHVnyoYmqqCyXaHX5CEwtawMv4EQeaJs76bLhMeMTKKl9rRp8qB
# DtbIZphO8iMsocrBnje48sA5HR0PM+H4HTjw10i8R0fLlWitaIY=
# =XnY5
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 12 Mar 2024 16:56:31 GMT
# gpg:                using RSA key 4E437DDA56616F4329B0A79567B30276A8621CAE
# gpg: Good signature from "Nicholas Piggin <npiggin@gmail.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 4E43 7DDA 5661 6F43 29B0  A795 67B3 0276 A862 1CAE

* tag 'pull-ppc-for-9.0-2-20240313' of https://gitlab.com/npiggin/qemu: (38 
commits)
  spapr: nested: Introduce cap-nested-papr for Nested PAPR API
  spapr: nested: Introduce H_GUEST_RUN_VCPU hcall.
  spapr: nested: Use correct source for parttbl info for nested PAPR API.
  spapr: nested: Introduce H_GUEST_[GET|SET]_STATE hcalls.
  spapr: nested: Initialize the GSB elements lookup table.
  spapr: nested: Extend nested_ppc_state for nested PAPR API
  spapr: nested: Introduce H_GUEST_CREATE_VCPU hcall.
  spapr: nested: Introduce H_GUEST_[CREATE|DELETE] hcalls.
  spapr: nested: Introduce H_GUEST_[GET|SET]_CAPABILITIES hcalls.
  spapr: nested: Document Nested PAPR API
  spapr: nested: keep nested-hv related code restricted to its API.
  spapr: nested: Introduce SpaprMachineStateNested to store related info.
  spapr: nested: move nested part of spapr_get_pate into spapr_nested.c
  spapr: nested: register nested-hv api hcalls only for cap-nested-hv
  target/ppc: Remove interrupt handler wrapper functions
  target/ppc: Clean up ifdefs in excp_helper.c, part 3
  target/ppc: Clean up ifdefs in excp_helper.c, part 2
  target/ppc: Clean up ifdefs in excp_helper.c, part 1
  target/ppc: Add gen_exception_err_nip() function
  target/ppc: Readability improvements in exception handlers
  ...

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/a1932d7cd650...51e31f214071

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications



reply via email to

[Prev in Thread] Current Thread [Next in Thread]