[Qemu-devel] [PULL 00/43] ppc-for-2.9 queue 20170222

David Gibson posted 43 patches 8 years, 8 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170222063348.32176-1-david@gibson.dropbear.id.au
Test checkpatch failed
Test docker passed
Test s390x passed
fpu/softfloat.c                     | 108 ++++++++++++-
hw/acpi/cpu.c                       |   2 +-
hw/core/machine.c                   |  31 ++++
hw/i386/pc.c                        | 126 +++++++--------
hw/net/spapr_llan.c                 |  18 ++-
hw/pci-host/prep.c                  |  11 +-
hw/ppc/mac_newworld.c               |  15 +-
hw/ppc/pnv.c                        |   6 +-
hw/ppc/ppc405_uc.c                  |   6 +-
hw/ppc/ppc4xx_pci.c                 |  13 +-
hw/ppc/spapr.c                      | 255 ++++++++++++++++++++++++-----
hw/ppc/spapr_cpu_core.c             | 137 +---------------
hw/ppc/spapr_ovec.c                 |  19 +--
hw/ppc/trace-events                 |  12 ++
include/fpu/softfloat.h             |   5 +
include/hw/boards.h                 |  16 +-
include/hw/i386/pc.h                |   1 -
include/hw/ppc/spapr.h              |   1 -
include/hw/ppc/spapr_cpu_core.h     |   6 -
linux-user/main.c                   |   3 +-
monitor.c                           |   4 +-
target/ppc/cpu-qom.h                |   5 +-
target/ppc/cpu.h                    |  20 ++-
target/ppc/fpu_helper.c             | 312 ++++++++++++++++++++++++++++++++++--
target/ppc/helper.h                 |  11 ++
target/ppc/internal.h               |   3 +
target/ppc/kvm.c                    |  32 +++-
target/ppc/kvm_ppc.h                |   7 +
target/ppc/mmu-hash64.c             |  44 ++++-
target/ppc/mmu_helper.c             |   4 +-
target/ppc/translate.c              | 153 ++++++++++++++++++
target/ppc/translate/vsx-impl.inc.c |  11 ++
target/ppc/translate/vsx-ops.inc.c  |  21 +++
target/ppc/translate_init.c         |  27 +++-
vl.c                                |   2 +-
35 files changed, 1093 insertions(+), 354 deletions(-)
[Qemu-devel] [PULL 00/43] ppc-for-2.9 queue 20170222
Posted by David Gibson 8 years, 8 months ago
The following changes since commit 796b288f7be875045670f963ce99991b3c8e96ac:

  Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2017-02-21 15:48:22 +0000)

are available in the git repository at:

  git://github.com/dgibson/qemu.git tags/ppc-for-2.9-20170222

for you to fetch changes up to fb6971c110387cf597b58c411658e3d15cc6c6fb:

  hw/ppc/ppc405_uc.c: Avoid integer overflows (2017-02-22 14:28:53 +1100)

NOTE: This pull request hasn't passed the full set of tests I usually
run, because there seem to be problems with those on current master
anyway: some of "make check" seems to wedge, and a number of travis
builds timed out.  AFAICT this series doesn't cause any failures that
aren't already present in upstream.

----------------------------------------------------------------
ppc patch queue for 2017-02-22

This pull request has:
   * Yet more POWER9 instruction implementations
   * Some extensions to the softfloat code which are necesssary for
     some of those instructions
   * Some preliminary patches in preparation for POWER9 softmmu
     implementation
   * Igor Mammedov's cleanups to unify hotplug cpu handling across
     architectures
   * Assorted bugfixes

The softfloat and cpu hotplug changes aren't entirely ppc specific (in
fact the hotplug stuff contains some pc specific patches).  However
they're included here because ppc is one of the main beneficiaries,
and the series depend on some ppc specific patches.

----------------------------------------------------------------
Alex Zuepke (1):
      target-ppc: fix Book-E TLB matching

Balamuruhan S (2):
      target-ppc: implement load atomic instruction
      target-ppc: implement store atomic instruction

Bharata B Rao (7):
      target-ppc: Add xsmaxcdp and xsmincdp instructions
      target-ppc: Add xsmaxjdp and xsminjdp instructions
      softfloat: Add round-to-odd rounding mode
      softfloat: Add float128_to_uint64_round_to_zero()
      softfloat: Add float128_to_uint32_round_to_zero()
      target-ppc: Implement round to odd variants of quad FP instructions
      target-ppc: Add xscvqpudz and xscvqpuwz instructions

Igor Mammedov (11):
      spapr: cpu core: separate child threads destruction from machine state operations
      spapr: move spapr_core_[foo]plug() callbacks close to machine code in spapr.c
      spapr: make cpu core unplug follow expected hotunplug call flow
      machine: move possible_cpus to MachineState
      pc: move pcms->possible_cpus init out of pc_cpus_init()
      pc: calculate topology only once when possible_cpus is initialised
      pc: pass apic_id to pc_find_cpu_slot() directly so lookup could be done without CPU object
      change CPUArchId.cpu type to Object*
      spapr: reuse machine->possible_cpus instead of cores[]
      machine: unify [pc_|spapr_]query_hotpluggable_cpus() callbacks
      machine: replace query_hotpluggable_cpus() callback with has_hotpluggable_cpus flag

Jose Ricardo Ziviani (4):
      ppc: implement xsrqpi[x] instruction
      ppc: implement xsrqpxp instruction
      ppc: implement xssqrtqp instruction
      ppc: implement xssubqp instruction

Laurent Vivier (3):
      mac99: replace debug printf with trace points
      ppc4xx: replace debug printf with trace points
      spapr: replace debug printf with trace points

Nikunj A Dadhania (4):
      target-ppc: generate exception for copy/paste
      target-ppc: add slbieg instruction
      target-ppc: add slbsync implementation
      target-ppc: add wait instruction

Peter Maydell (1):
      hw/ppc/ppc405_uc.c: Avoid integer overflows

Sam Bobroff (3):
      spapr: fix off-by-one error in spapr_ovec_populate_dt()
      target-ppc, tcg: fix usermode segfault with pthread_create()
      hw/net/spapr_llan: 6 byte mac address device tree entry

Suraj Jitindar Singh (4):
      target/ppc: Fix LPCR DPFD mask define
      target/ppc/POWER9: Add ISAv3.00 MMU definition
      target/ppc/POWER9: Adapt LPCR handling for POWER9
      target/ppc/POWER9: Direct all instr and data storage interrupts to the hypv

Thomas Huth (3):
      hw/ppc/pnv: Remove superfluous "qemu" prefix from error strings
      hw/pci-host/prep: Do not use hw_error() in realize function
      hw/ppc/spapr: Check for valid page size when hot plugging memory

 fpu/softfloat.c                     | 108 ++++++++++++-
 hw/acpi/cpu.c                       |   2 +-
 hw/core/machine.c                   |  31 ++++
 hw/i386/pc.c                        | 126 +++++++--------
 hw/net/spapr_llan.c                 |  18 ++-
 hw/pci-host/prep.c                  |  11 +-
 hw/ppc/mac_newworld.c               |  15 +-
 hw/ppc/pnv.c                        |   6 +-
 hw/ppc/ppc405_uc.c                  |   6 +-
 hw/ppc/ppc4xx_pci.c                 |  13 +-
 hw/ppc/spapr.c                      | 255 ++++++++++++++++++++++++-----
 hw/ppc/spapr_cpu_core.c             | 137 +---------------
 hw/ppc/spapr_ovec.c                 |  19 +--
 hw/ppc/trace-events                 |  12 ++
 include/fpu/softfloat.h             |   5 +
 include/hw/boards.h                 |  16 +-
 include/hw/i386/pc.h                |   1 -
 include/hw/ppc/spapr.h              |   1 -
 include/hw/ppc/spapr_cpu_core.h     |   6 -
 linux-user/main.c                   |   3 +-
 monitor.c                           |   4 +-
 target/ppc/cpu-qom.h                |   5 +-
 target/ppc/cpu.h                    |  20 ++-
 target/ppc/fpu_helper.c             | 312 ++++++++++++++++++++++++++++++++++--
 target/ppc/helper.h                 |  11 ++
 target/ppc/internal.h               |   3 +
 target/ppc/kvm.c                    |  32 +++-
 target/ppc/kvm_ppc.h                |   7 +
 target/ppc/mmu-hash64.c             |  44 ++++-
 target/ppc/mmu_helper.c             |   4 +-
 target/ppc/translate.c              | 153 ++++++++++++++++++
 target/ppc/translate/vsx-impl.inc.c |  11 ++
 target/ppc/translate/vsx-ops.inc.c  |  21 +++
 target/ppc/translate_init.c         |  27 +++-
 vl.c                                |   2 +-
 35 files changed, 1093 insertions(+), 354 deletions(-)

Re: [Qemu-devel] [PULL 00/43] ppc-for-2.9 queue 20170222
Posted by no-reply@patchew.org 8 years, 8 months ago
Hi,

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

Type: series
Subject: [Qemu-devel] [PULL 00/43] ppc-for-2.9 queue 20170222
Message-id: 20170222063348.32176-1-david@gibson.dropbear.id.au

=== 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
 * [new tag]         patchew/20170222063348.32176-1-david@gibson.dropbear.id.au -> patchew/20170222063348.32176-1-david@gibson.dropbear.id.au
Switched to a new branch 'test'
62d6f06 hw/ppc/ppc405_uc.c: Avoid integer overflows
ec98e40 hw/ppc/spapr: Check for valid page size when hot plugging memory
10a38a7 target-ppc: fix Book-E TLB matching
1f52e11 hw/net/spapr_llan: 6 byte mac address device tree entry
80ad17a machine: replace query_hotpluggable_cpus() callback with has_hotpluggable_cpus flag
7bd7baf machine: unify [pc_|spapr_]query_hotpluggable_cpus() callbacks
d340fb4 spapr: reuse machine->possible_cpus instead of cores[]
67a1cc8 change CPUArchId.cpu type to Object*
fb052cc pc: pass apic_id to pc_find_cpu_slot() directly so lookup could be done without CPU object
4152831 pc: calculate topology only once when possible_cpus is initialised
23a237d pc: move pcms->possible_cpus init out of pc_cpus_init()
d15edca machine: move possible_cpus to MachineState
1bf84e1 hw/pci-host/prep: Do not use hw_error() in realize function
fa8a3dd target/ppc/POWER9: Direct all instr and data storage interrupts to the hypv
a7b4f90 target/ppc/POWER9: Adapt LPCR handling for POWER9
2be712b target/ppc/POWER9: Add ISAv3.00 MMU definition
746707a target/ppc: Fix LPCR DPFD mask define
aa25681 target-ppc: Add xscvqpudz and xscvqpuwz instructions
5716d68 target-ppc: Implement round to odd variants of quad FP instructions
d105058 softfloat: Add float128_to_uint32_round_to_zero()
c1ac9ad softfloat: Add float128_to_uint64_round_to_zero()
b4735f4 softfloat: Add round-to-odd rounding mode
42ce5b8 spapr: replace debug printf with trace points
c4ce322 ppc4xx: replace debug printf with trace points
b477c51 mac99: replace debug printf with trace points
27c4372 target-ppc, tcg: fix usermode segfault with pthread_create()
dc64bab target-ppc: add wait instruction
0dc563d target-ppc: add slbsync implementation
ca87bf1 target-ppc: add slbieg instruction
fee213a target-ppc: generate exception for copy/paste
b2fe78d target-ppc: implement store atomic instruction
ece9f14 target-ppc: implement load atomic instruction
0c8feed spapr: fix off-by-one error in spapr_ovec_populate_dt()
2d57efc target-ppc: Add xsmaxjdp and xsminjdp instructions
de589f4 target-ppc: Add xsmaxcdp and xsmincdp instructions
c1d37ae hw/ppc/pnv: Remove superfluous "qemu" prefix from error strings
ed94562 ppc: implement xssubqp instruction
f79e29f ppc: implement xssqrtqp instruction
836021e ppc: implement xsrqpxp instruction
981bb34 ppc: implement xsrqpi[x] instruction
d11e917 spapr: make cpu core unplug follow expected hotunplug call flow
98cbd73 spapr: move spapr_core_[foo]plug() callbacks close to machine code in spapr.c
bcfc8b5 spapr: cpu core: separate child threads destruction from machine state operations

=== OUTPUT BEGIN ===
Checking PATCH 1/43: spapr: cpu core: separate child threads destruction from machine state operations...
Checking PATCH 2/43: spapr: move spapr_core_[foo]plug() callbacks close to machine code in spapr.c...
Checking PATCH 3/43: spapr: make cpu core unplug follow expected hotunplug call flow...
Checking PATCH 4/43: ppc: implement xsrqpi[x] instruction...
ERROR: Macros with complex values should be enclosed in parenthesis
#125: FILE: target/ppc/translate/vsx-ops.inc.c:106:
+#define GEN_VSX_Z23FORM_300(name, opc2, opc3, opc4, inval) \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x00, opc4 | 0x0, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x08, opc4 | 0x0, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x10, opc4 | 0x0, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x18, opc4 | 0x0, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x00, opc4 | 0x1, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x08, opc4 | 0x1, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x10, opc4 | 0x1, inval), \
+GEN_VSX_XFORM_300_EO(name, opc2, opc3 | 0x18, opc4 | 0x1, inval)

total: 1 errors, 0 warnings, 102 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 5/43: ppc: implement xsrqpxp instruction...
Checking PATCH 6/43: ppc: implement xssqrtqp instruction...
Checking PATCH 7/43: ppc: implement xssubqp instruction...
Checking PATCH 8/43: hw/ppc/pnv: Remove superfluous "qemu" prefix from error strings...
Checking PATCH 9/43: target-ppc: Add xsmaxcdp and xsmincdp instructions...
Checking PATCH 10/43: target-ppc: Add xsmaxjdp and xsminjdp instructions...
Checking PATCH 11/43: spapr: fix off-by-one error in spapr_ovec_populate_dt()...
Checking PATCH 12/43: target-ppc: implement load atomic instruction...
Checking PATCH 13/43: target-ppc: implement store atomic instruction...
Checking PATCH 14/43: target-ppc: generate exception for copy/paste...
Checking PATCH 15/43: target-ppc: add slbieg instruction...
Checking PATCH 16/43: target-ppc: add slbsync implementation...
Checking PATCH 17/43: target-ppc: add wait instruction...
Checking PATCH 18/43: target-ppc, tcg: fix usermode segfault with pthread_create()...
Checking PATCH 19/43: mac99: replace debug printf with trace points...
Checking PATCH 20/43: ppc4xx: replace debug printf with trace points...
Checking PATCH 21/43: spapr: replace debug printf with trace points...
Checking PATCH 22/43: softfloat: Add round-to-odd rounding mode...
Checking PATCH 23/43: softfloat: Add float128_to_uint64_round_to_zero()...
Checking PATCH 24/43: softfloat: Add float128_to_uint32_round_to_zero()...
Checking PATCH 25/43: target-ppc: Implement round to odd variants of quad FP instructions...
Checking PATCH 26/43: target-ppc: Add xscvqpudz and xscvqpuwz instructions...
Checking PATCH 27/43: target/ppc: Fix LPCR DPFD mask define...
Checking PATCH 28/43: target/ppc/POWER9: Add ISAv3.00 MMU definition...
Checking PATCH 29/43: target/ppc/POWER9: Adapt LPCR handling for POWER9...
Checking PATCH 30/43: target/ppc/POWER9: Direct all instr and data storage interrupts to the hypv...
Checking PATCH 31/43: hw/pci-host/prep: Do not use hw_error() in realize function...
Checking PATCH 32/43: machine: move possible_cpus to MachineState...
Checking PATCH 33/43: pc: move pcms->possible_cpus init out of pc_cpus_init()...
Checking PATCH 34/43: pc: calculate topology only once when possible_cpus is initialised...
Checking PATCH 35/43: pc: pass apic_id to pc_find_cpu_slot() directly so lookup could be done without CPU object...
Checking PATCH 36/43: change CPUArchId.cpu type to Object*...
Checking PATCH 37/43: spapr: reuse machine->possible_cpus instead of cores[]...
ERROR: do not use C99 // comments
#266: FILE: hw/ppc/spapr.c:2826:
+        cpu_item->vcpus_count = smp_threads; // TODO: ??? generalize

total: 1 errors, 0 warnings, 258 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 38/43: machine: unify [pc_|spapr_]query_hotpluggable_cpus() callbacks...
Checking PATCH 39/43: machine: replace query_hotpluggable_cpus() callback with has_hotpluggable_cpus flag...
Checking PATCH 40/43: hw/net/spapr_llan: 6 byte mac address device tree entry...
Checking PATCH 41/43: target-ppc: fix Book-E TLB matching...
Checking PATCH 42/43: hw/ppc/spapr: Check for valid page size when hot plugging memory...
Checking PATCH 43/43: hw/ppc/ppc405_uc.c: Avoid integer overflows...
=== 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/43] ppc-for-2.9 queue 20170222
Posted by Peter Maydell 8 years, 8 months ago
On 22 February 2017 at 06:33, David Gibson <david@gibson.dropbear.id.au> wrote:
> The following changes since commit 796b288f7be875045670f963ce99991b3c8e96ac:
>
>   Merge remote-tracking branch 'remotes/cody/tags/block-pull-request' into staging (2017-02-21 15:48:22 +0000)
>
> are available in the git repository at:
>
>   git://github.com/dgibson/qemu.git tags/ppc-for-2.9-20170222
>
> for you to fetch changes up to fb6971c110387cf597b58c411658e3d15cc6c6fb:
>
>   hw/ppc/ppc405_uc.c: Avoid integer overflows (2017-02-22 14:28:53 +1100)
>
> NOTE: This pull request hasn't passed the full set of tests I usually
> run, because there seem to be problems with those on current master
> anyway: some of "make check" seems to wedge, and a number of travis
> builds timed out.  AFAICT this series doesn't cause any failures that
> aren't already present in upstream.
>
> ----------------------------------------------------------------
> ppc patch queue for 2017-02-22
>
> This pull request has:
>    * Yet more POWER9 instruction implementations
>    * Some extensions to the softfloat code which are necesssary for
>      some of those instructions
>    * Some preliminary patches in preparation for POWER9 softmmu
>      implementation
>    * Igor Mammedov's cleanups to unify hotplug cpu handling across
>      architectures
>    * Assorted bugfixes
>
> The softfloat and cpu hotplug changes aren't entirely ppc specific (in
> fact the hotplug stuff contains some pc specific patches).  However
> they're included here because ppc is one of the main beneficiaries,
> and the series depend on some ppc specific patches.
>
> ----------------------------------------------------------------

Applied, thanks.

-- PMM