[Qemu-devel] [PULL 00/48] ppc-for-2.10 queue 20170426

David Gibson posted 48 patches 6 years, 11 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170426070034.10727-1-david@gibson.dropbear.id.au
Test checkpatch failed
Test docker passed
Test s390x passed
MAINTAINERS                       |   3 -
default-configs/ppc64-softmmu.mak |   4 +
hw/intc/Makefile.objs             |   1 +
hw/intc/xics.c                    |  22 +-
hw/intc/xics_pnv.c                | 192 +++++++++++++
hw/intc/xics_spapr.c              |  25 +-
hw/ipmi/ipmi_bmc_sim.c            | 196 ++++++++++++-
hw/ppc/Makefile.objs              |   2 +-
hw/ppc/pnv.c                      | 411 ++++++++++++++++++++++++---
hw/ppc/pnv_bmc.c                  | 122 ++++++++
hw/ppc/pnv_core.c                 |  27 +-
hw/ppc/pnv_lpc.c                  | 106 ++++++-
hw/ppc/pnv_occ.c                  | 136 +++++++++
hw/ppc/pnv_psi.c                  | 571 ++++++++++++++++++++++++++++++++++++++
hw/ppc/spapr.c                    | 371 +++++++++++++++----------
hw/ppc/spapr_cpu_core.c           |  17 +-
hw/ppc/spapr_events.c             |   2 +-
hw/ppc/spapr_hcall.c              | 174 +++++++++++-
hw/ppc/spapr_iommu.c              |   8 +-
hw/ppc/spapr_pci.c                |   8 +-
hw/ppc/spapr_rtc.c                |  41 +--
include/hw/ipmi/ipmi.h            |   4 +
include/hw/ppc/pnv.h              |  57 +++-
include/hw/ppc/pnv_lpc.h          |   8 +
include/hw/ppc/pnv_occ.h          |  38 +++
include/hw/ppc/pnv_psi.h          |  67 +++++
include/hw/ppc/pnv_xscom.h        |   6 +
include/hw/ppc/spapr.h            |  30 +-
include/hw/ppc/spapr_ovec.h       |   8 +
include/hw/ppc/xics.h             |  19 +-
include/sysemu/kvm.h              |   1 +
qemu-options.hx                   |  15 +-
target/ppc/arch_dump.c            |   2 +-
target/ppc/cpu-qom.h              |   1 +
target/ppc/cpu.h                  |   5 +
target/ppc/helper.h               |   1 +
target/ppc/kvm.c                  | 144 +++++++++-
target/ppc/kvm_ppc.h              |  40 ++-
target/ppc/misc_helper.c          |   8 +
target/ppc/translate_init.c       | 410 ++++++++++++++-------------
40 files changed, 2808 insertions(+), 495 deletions(-)
create mode 100644 hw/intc/xics_pnv.c
create mode 100644 hw/ppc/pnv_bmc.c
create mode 100644 hw/ppc/pnv_occ.c
create mode 100644 hw/ppc/pnv_psi.c
create mode 100644 include/hw/ppc/pnv_occ.h
create mode 100644 include/hw/ppc/pnv_psi.h
[Qemu-devel] [PULL 00/48] ppc-for-2.10 queue 20170426
Posted by David Gibson 6 years, 11 months ago
The following changes since commit fe491fa85c4634453b340b18046aae2eaf8147db:

  Merge remote-tracking branch 'remotes/agraf/tags/signed-s390-for-upstream' into staging (2017-04-25 14:48:55 +0100)

are available in the git repository at:

  git://github.com/dgibson/qemu.git tags/ppc-for-2.10-20170426

for you to fetch changes up to df02d2ca8b23ba1fff137090a65731c68cf1393d:

  MAINTAINERS: Remove myself from e500 (2017-04-26 12:41:56 +1000)

----------------------------------------------------------------
ppc patch queue 2017-04-26

Here's a respind of my first pull request for qemu-2.10, consisting of
assorted patches which have accumulated while qemu-2.9 stabilized.
Highlights are:
    * Rework / cleanup of the XICS interrupt controller
    * Substantial improvement to the 'powernv' machine type
        - Includes an MMIO XICS version
    * POWER9 support improvements
        - POWER9 guests with KVM
        - Partial support for POWER9 guests with TCG
    * IOMMU and VFIO improvements
    * Assorted minor changes

There are several IPMI patches here that aren't usually in my area of
maintenance, but there isn't a regular maintainer and these patches
are for the benefit of the powernv machine type.

This pull request supersedes my 2017-04-26 pull request.  This new set
fixes a bug in one of the aforementioned IPMI patches which caused
clang sanitizer failures (and may have crashed on some libc / host
versions).

----------------------------------------------------------------
Alexey Kardashevskiy (4):
      target-ppc: kvm: make use of KVM_CREATE_SPAPR_TCE_64
      target-ppc/kvm: Enable in-kernel TCE acceleration for multi-tce
      spapr_pci: Warn when RAM page size is not enabled in IOMMU page mask
      spapr_pci: Removed unused include

Anton Blanchard (1):
      target/ppc: Fix size of struct PPCElfPrstatus

Benjamin Herrenschmidt (2):
      ppc/pnv: Add OCC model stub with interrupt support
      ppc/pnv: Add support for POWER8+ LPC Controller

Bernhard Kaindl (1):
      e500,book3s: mfspr 259: Register mapped/aliased SPRG3 user read

Bharata B Rao (1):
      spapr-cpu-core: Release ICPState object during CPU unrealization

Cédric Le Goater (25):
      ppc/spapr: QOM'ify sPAPRRTCState
      ppc/xics: introduce an 'intc' backlink under PowerPCCPU
      spapr: move the IRQ server number mapping under the machine
      spapr: allocate the ICPState object from under sPAPRCPUCore
      ppc/xics: add a realize() handler to ICPStateClass
      ppc/pnv: add a PnvICPState object
      ppc/pnv: extend the machine with a XICSFabric interface
      ppc/pnv: extend the machine with a InterruptStatsProvider interface
      ppc/pnv: create the ICP object under PnvCore
      ppc/pnv: add a helper to calculate MMIO addresses registers
      ppc/pnv: add memory regions for the ICP registers
      ppc/pnv: Add cut down PSI bridge model and hookup external interrupt
      ppc: add IPMI support
      ipmi: use a file to load SDRs
      ipmi: provide support for FRUs
      ipmi: introduce an ipmi_bmc_sdr_find() API
      ipmi: introduce an ipmi_bmc_gen_event() API
      spapr: remove the 'nr_servers' field from the machine
      ppc/pnv: enable only one LPC bus
      ppc/pnv: scan ISA bus to populate device tree
      ppc/pnv: populate device tree for RTC devices
      ppc/pnv: populate device tree for serial devices
      ppc/pnv: populate device tree for IPMI BT devices
      ppc/pnv: add initial IPMI sensors for the BMC simulator
      ppc/pnv: generate an OEM SEL event on shutdown

David Gibson (2):
      pseries: Add pseries-2.10 machine type
      target/ppc: Style fixes

Sam Bobroff (6):
      target/ppc: Improve accuracy of guest HTM availability on P8s
      spapr: Add ibm,processor-radix-AP-encodings to the device tree
      target-ppc: support KVM_CAP_PPC_MMU_RADIX, KVM_CAP_PPC_MMU_HASH_V3
      spapr: move spapr_populate_pa_features()
      spapr: Enable ISA 3.0 MMU mode selection via CAS
      spapr: Workaround for broken radix guests

Scott Wood (1):
      MAINTAINERS: Remove myself from e500

Suraj Jitindar Singh (4):
      target/ppc: Add new H-CALL shells for in memory table translation
      target/ppc: Implement H_REGISTER_PROCESS_TABLE H_CALL
      target/ppc: Add ibm,processor-radix-AP-encodings for TCG
      target/ppc: Flush TLB on write to PIDR

Thomas Huth (1):
      hw/ppc/pnv: Classify the "PowerNV Chip" devices as CPU devices

 MAINTAINERS                       |   3 -
 default-configs/ppc64-softmmu.mak |   4 +
 hw/intc/Makefile.objs             |   1 +
 hw/intc/xics.c                    |  22 +-
 hw/intc/xics_pnv.c                | 192 +++++++++++++
 hw/intc/xics_spapr.c              |  25 +-
 hw/ipmi/ipmi_bmc_sim.c            | 196 ++++++++++++-
 hw/ppc/Makefile.objs              |   2 +-
 hw/ppc/pnv.c                      | 411 ++++++++++++++++++++++++---
 hw/ppc/pnv_bmc.c                  | 122 ++++++++
 hw/ppc/pnv_core.c                 |  27 +-
 hw/ppc/pnv_lpc.c                  | 106 ++++++-
 hw/ppc/pnv_occ.c                  | 136 +++++++++
 hw/ppc/pnv_psi.c                  | 571 ++++++++++++++++++++++++++++++++++++++
 hw/ppc/spapr.c                    | 371 +++++++++++++++----------
 hw/ppc/spapr_cpu_core.c           |  17 +-
 hw/ppc/spapr_events.c             |   2 +-
 hw/ppc/spapr_hcall.c              | 174 +++++++++++-
 hw/ppc/spapr_iommu.c              |   8 +-
 hw/ppc/spapr_pci.c                |   8 +-
 hw/ppc/spapr_rtc.c                |  41 +--
 include/hw/ipmi/ipmi.h            |   4 +
 include/hw/ppc/pnv.h              |  57 +++-
 include/hw/ppc/pnv_lpc.h          |   8 +
 include/hw/ppc/pnv_occ.h          |  38 +++
 include/hw/ppc/pnv_psi.h          |  67 +++++
 include/hw/ppc/pnv_xscom.h        |   6 +
 include/hw/ppc/spapr.h            |  30 +-
 include/hw/ppc/spapr_ovec.h       |   8 +
 include/hw/ppc/xics.h             |  19 +-
 include/sysemu/kvm.h              |   1 +
 qemu-options.hx                   |  15 +-
 target/ppc/arch_dump.c            |   2 +-
 target/ppc/cpu-qom.h              |   1 +
 target/ppc/cpu.h                  |   5 +
 target/ppc/helper.h               |   1 +
 target/ppc/kvm.c                  | 144 +++++++++-
 target/ppc/kvm_ppc.h              |  40 ++-
 target/ppc/misc_helper.c          |   8 +
 target/ppc/translate_init.c       | 410 ++++++++++++++-------------
 40 files changed, 2808 insertions(+), 495 deletions(-)
 create mode 100644 hw/intc/xics_pnv.c
 create mode 100644 hw/ppc/pnv_bmc.c
 create mode 100644 hw/ppc/pnv_occ.c
 create mode 100644 hw/ppc/pnv_psi.c
 create mode 100644 include/hw/ppc/pnv_occ.h
 create mode 100644 include/hw/ppc/pnv_psi.h

Re: [Qemu-devel] [PULL 00/48] ppc-for-2.10 queue 20170426
Posted by no-reply@patchew.org 6 years, 11 months ago
Hi,

This series seems to have some coding style problems. See output below for
more information:

Message-id: 20170426070034.10727-1-david@gibson.dropbear.id.au
Subject: [Qemu-devel] [PULL 00/48] ppc-for-2.10 queue 20170426
Type: series

=== TEST SCRIPT BEGIN ===
#!/bin/bash

BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0

# Useful git options
git config --local diff.renamelimit 0
git config --local diff.renames True

commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
    echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
    if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
        failed=1
        echo
    fi
    n=$((n+1))
done

exit $failed
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 - [tag update]      patchew/1493179907-22516-1-git-send-email-thuth@redhat.com -> patchew/1493179907-22516-1-git-send-email-thuth@redhat.com
 - [tag update]      patchew/20170426073247.7441-2-quintela@redhat.com -> patchew/20170426073247.7441-2-quintela@redhat.com
Switched to a new branch 'test'
c14ea42 MAINTAINERS: Remove myself from e500
cda1bcc target/ppc: Style fixes
2687a22 e500, book3s: mfspr 259: Register mapped/aliased SPRG3 user read
4d80bea target/ppc: Flush TLB on write to PIDR
803a452 spapr-cpu-core: Release ICPState object during CPU unrealization
dad1411 ppc/pnv: generate an OEM SEL event on shutdown
81fc8dc ppc/pnv: add initial IPMI sensors for the BMC simulator
59b6269 ppc/pnv: populate device tree for IPMI BT devices
9631be0 ppc/pnv: populate device tree for serial devices
0aa29fe ppc/pnv: populate device tree for RTC devices
38cf1ba ppc/pnv: scan ISA bus to populate device tree
77a98a6 ppc/pnv: enable only one LPC bus
a4448e0 ppc/pnv: Add support for POWER8+ LPC Controller
052c6f8 spapr: remove the 'nr_servers' field from the machine
930053d target/ppc: Fix size of struct PPCElfPrstatus
75df6b3 ipmi: introduce an ipmi_bmc_gen_event() API
235eb1b ipmi: introduce an ipmi_bmc_sdr_find() API
6c4b8b9 ipmi: provide support for FRUs
375940e ipmi: use a file to load SDRs
5d70630 ppc: add IPMI support
8e07169 ppc/pnv: Add OCC model stub with interrupt support
8f049fd ppc/pnv: Add cut down PSI bridge model and hookup external interrupt
8b50fc4 ppc/pnv: add memory regions for the ICP registers
afea407 ppc/pnv: add a helper to calculate MMIO addresses registers
053cc96 ppc/pnv: create the ICP object under PnvCore
77454c6 ppc/pnv: extend the machine with a InterruptStatsProvider interface
27496fd ppc/pnv: extend the machine with a XICSFabric interface
cb60b41 ppc/pnv: add a PnvICPState object
b3e42b8 ppc/xics: add a realize() handler to ICPStateClass
43fa3d7 spapr: allocate the ICPState object from under sPAPRCPUCore
55519e0 spapr: move the IRQ server number mapping under the machine
59bca08 ppc/xics: introduce an 'intc' backlink under PowerPCCPU
caae2a9 target/ppc: Add ibm, processor-radix-AP-encodings for TCG
4469965 spapr_pci: Removed unused include
dfa9faf spapr_pci: Warn when RAM page size is not enabled in IOMMU page mask
05faf4f target-ppc/kvm: Enable in-kernel TCE acceleration for multi-tce
808e8c1 spapr: Workaround for broken radix guests
7c423a7 spapr: Enable ISA 3.0 MMU mode selection via CAS
17d2c76 spapr: move spapr_populate_pa_features()
a9df275 target/ppc: Implement H_REGISTER_PROCESS_TABLE H_CALL
b3a9436 target/ppc: Add new H-CALL shells for in memory table translation
29faef3 target-ppc: support KVM_CAP_PPC_MMU_RADIX, KVM_CAP_PPC_MMU_HASH_V3
b8e28f8 spapr: Add ibm, processor-radix-AP-encodings to the device tree
e8e32b8 target-ppc: kvm: make use of KVM_CREATE_SPAPR_TCE_64
b2f1c56 hw/ppc/pnv: Classify the "PowerNV Chip" devices as CPU devices
4d69a70 ppc/spapr: QOM'ify sPAPRRTCState
d7091e1 pseries: Add pseries-2.10 machine type
1bc859f target/ppc: Improve accuracy of guest HTM availability on P8s

=== OUTPUT BEGIN ===
Checking PATCH 1/48: target/ppc: Improve accuracy of guest HTM availability on P8s...
Checking PATCH 2/48: pseries: Add pseries-2.10 machine type...
Checking PATCH 3/48: ppc/spapr: QOM'ify sPAPRRTCState...
Checking PATCH 4/48: hw/ppc/pnv: Classify the "PowerNV Chip" devices as CPU devices...
Checking PATCH 5/48: target-ppc: kvm: make use of KVM_CREATE_SPAPR_TCE_64...
Checking PATCH 6/48: spapr: Add ibm, processor-radix-AP-encodings to the device tree...
Checking PATCH 7/48: target-ppc: support KVM_CAP_PPC_MMU_RADIX, KVM_CAP_PPC_MMU_HASH_V3...
Checking PATCH 8/48: target/ppc: Add new H-CALL shells for in memory table translation...
Checking PATCH 9/48: target/ppc: Implement H_REGISTER_PROCESS_TABLE H_CALL...
Checking PATCH 10/48: spapr: move spapr_populate_pa_features()...
Checking PATCH 11/48: spapr: Enable ISA 3.0 MMU mode selection via CAS...
Checking PATCH 12/48: spapr: Workaround for broken radix guests...
Checking PATCH 13/48: target-ppc/kvm: Enable in-kernel TCE acceleration for multi-tce...
Checking PATCH 14/48: spapr_pci: Warn when RAM page size is not enabled in IOMMU page mask...
Checking PATCH 15/48: spapr_pci: Removed unused include...
Checking PATCH 16/48: target/ppc: Add ibm, processor-radix-AP-encodings for TCG...
Checking PATCH 17/48: ppc/xics: introduce an 'intc' backlink under PowerPCCPU...
Checking PATCH 18/48: spapr: move the IRQ server number mapping under the machine...
Checking PATCH 19/48: spapr: allocate the ICPState object from under sPAPRCPUCore...
Checking PATCH 20/48: ppc/xics: add a realize() handler to ICPStateClass...
Checking PATCH 21/48: ppc/pnv: add a PnvICPState object...
Checking PATCH 22/48: ppc/pnv: extend the machine with a XICSFabric interface...
Checking PATCH 23/48: ppc/pnv: extend the machine with a InterruptStatsProvider interface...
Checking PATCH 24/48: ppc/pnv: create the ICP object under PnvCore...
Checking PATCH 25/48: ppc/pnv: add a helper to calculate MMIO addresses registers...
Checking PATCH 26/48: ppc/pnv: add memory regions for the ICP registers...
Checking PATCH 27/48: ppc/pnv: Add cut down PSI bridge model and hookup external interrupt...
Checking PATCH 28/48: ppc/pnv: Add OCC model stub with interrupt support...
Checking PATCH 29/48: ppc: add IPMI support...
Checking PATCH 30/48: ipmi: use a file to load SDRs...
Checking PATCH 31/48: ipmi: provide support for FRUs...
Checking PATCH 32/48: ipmi: introduce an ipmi_bmc_sdr_find() API...
Checking PATCH 33/48: ipmi: introduce an ipmi_bmc_gen_event() API...
Checking PATCH 34/48: target/ppc: Fix size of struct PPCElfPrstatus...
Checking PATCH 35/48: spapr: remove the 'nr_servers' field from the machine...
Checking PATCH 36/48: ppc/pnv: Add support for POWER8+ LPC Controller...
Checking PATCH 37/48: ppc/pnv: enable only one LPC bus...
Checking PATCH 38/48: ppc/pnv: scan ISA bus to populate device tree...
Checking PATCH 39/48: ppc/pnv: populate device tree for RTC devices...
Checking PATCH 40/48: ppc/pnv: populate device tree for serial devices...
Checking PATCH 41/48: ppc/pnv: populate device tree for IPMI BT devices...
Checking PATCH 42/48: ppc/pnv: add initial IPMI sensors for the BMC simulator...
Checking PATCH 43/48: ppc/pnv: generate an OEM SEL event on shutdown...
Checking PATCH 44/48: spapr-cpu-core: Release ICPState object during CPU unrealization...
Checking PATCH 45/48: target/ppc: Flush TLB on write to PIDR...
Checking PATCH 46/48: e500, book3s: mfspr 259: Register mapped/aliased SPRG3 user read...
ERROR: space prohibited between function name and open parenthesis '('
#51: FILE: target/ppc/translate_init.c:1643:
+static void gen_spr_usprg3 (CPUPPCState *env)

total: 1 errors, 0 warnings, 28 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Checking PATCH 47/48: target/ppc: Style fixes...
Checking PATCH 48/48: MAINTAINERS: Remove myself from e500...
=== OUTPUT END ===

Test command exited with code: 1


---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@freelists.org
Re: [Qemu-devel] [PULL 00/48] ppc-for-2.10 queue 20170426
Posted by Peter Maydell 6 years, 11 months ago
On 26 April 2017 at 07:59, David Gibson <david@gibson.dropbear.id.au> wrote:
> The following changes since commit fe491fa85c4634453b340b18046aae2eaf8147db:
>
>   Merge remote-tracking branch 'remotes/agraf/tags/signed-s390-for-upstream' into staging (2017-04-25 14:48:55 +0100)
>
> are available in the git repository at:
>
>   git://github.com/dgibson/qemu.git tags/ppc-for-2.10-20170426
>
> for you to fetch changes up to df02d2ca8b23ba1fff137090a65731c68cf1393d:
>
>   MAINTAINERS: Remove myself from e500 (2017-04-26 12:41:56 +1000)
>
> ----------------------------------------------------------------
> ppc patch queue 2017-04-26
>
> Here's a respind of my first pull request for qemu-2.10, consisting of
> assorted patches which have accumulated while qemu-2.9 stabilized.
> Highlights are:
>     * Rework / cleanup of the XICS interrupt controller
>     * Substantial improvement to the 'powernv' machine type
>         - Includes an MMIO XICS version
>     * POWER9 support improvements
>         - POWER9 guests with KVM
>         - Partial support for POWER9 guests with TCG
>     * IOMMU and VFIO improvements
>     * Assorted minor changes
>
> There are several IPMI patches here that aren't usually in my area of
> maintenance, but there isn't a regular maintainer and these patches
> are for the benefit of the powernv machine type.
>
> This pull request supersedes my 2017-04-26 pull request.  This new set
> fixes a bug in one of the aforementioned IPMI patches which caused
> clang sanitizer failures (and may have crashed on some libc / host
> versions).

Applied, thanks.

-- PMM