Re: [Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-02-01 Thread Peter Maydell
On 31 January 2016 at 23:57, David Gibson  wrote:
> Turns out the answer is because the test for support of #pragma GCC
> diagnostic turns off -Werror on clang builds for me.  So I wonder
> what's different about your setup that -Werror is working with clang.

On OSX warnings are just warnings but part of my test process involves
grepping the log output for 'warning'. On x86 clang I configure with
--extra-cflags=-Werror, to work around the pragma diagnostic check.
(None of the spurious diagnostics we use the pragma to suppress are in
practice a problem on my build.)

thanks
-- PMM



Re: [Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-01-31 Thread David Gibson
On Sat, Jan 30, 2016 at 11:29:43PM +1100, David Gibson wrote:
> On Fri, Jan 29, 2016 at 02:48:23PM +, Peter Maydell wrote:
> > On 29 January 2016 at 05:06, David Gibson  
> > wrote:
> > > The following changes since commit 
> > > 357e81c7e880f868833edf9f53cce1f3b09ea8ec:
> > >
> > >   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160128' into 
> > > staging (2016-01-28 11:46:34 +)
> > >
> > > are available in the git repository at:
> > >
> > >   git://github.com/dgibson/qemu.git tags/ppc-for-2.6-20160129
> > >
> > > for you to fetch changes up to 1699679e699276c0538008f6ca74cd04e6c68b42:
> > >
> > >   target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro 
> > > (2016-01-29 14:01:52 +1100)
> > >
> > > 
> > > ppc patch queue for 2016-01-29
> > >
> > > Currently accumulated patches for target-ppc, pseries machine type and
> > > related devices.
> > >   * Cleanup of error handling code in spapr
> > >   * A number of fixes for Macintosh devices for the benefit of MacOS 9 
> > > and X
> > >   * Remove some abuses of the RTAS memory access functions in spapr
> > >   * Fixes for the gdbstub (and monitor debug) for VMX and VSX extensions.
> > >   * Fix pseries machine hotplug memory under TCG
> > >   * Clean up and extend handling of multiple page sizes with 64-bit hash 
> > > MMUs
> > >
> > 
> > Hi. Unfortunately this generates errors when built with clang:
> > 
> > /home/petmay01/linaro/qemu-for-merges/target-ppc/mmu_helper.c:660:20:
> > error: unused function 'ppc4xx_tlb_invalidate_virt'
> > [-Werror,-Wunused-function]
> > static inline void ppc4xx_tlb_invalidate_virt(CPUPPCState *env,
> >^
> > 1 error generated.
> > 
> > The function does appear from a quick grep to be entirely unused...
> > 
> > (GCC doesn't complain about this because it doesn't warn about unused
> > static inline functions in a .c file, but clang does.)
> 
> Dammit.  Sorry.
> 
> Now.. why didn't travis pick that up :/.

Turns out the answer is because the test for support of #pragma GCC
diagnostic turns off -Werror on clang builds for me.  So I wonder
what's different about your setup that -Werror is working with clang.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


signature.asc
Description: PGP signature


Re: [Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-01-30 Thread David Gibson
On Fri, Jan 29, 2016 at 02:48:23PM +, Peter Maydell wrote:
> On 29 January 2016 at 05:06, David Gibson  wrote:
> > The following changes since commit 357e81c7e880f868833edf9f53cce1f3b09ea8ec:
> >
> >   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160128' into 
> > staging (2016-01-28 11:46:34 +)
> >
> > are available in the git repository at:
> >
> >   git://github.com/dgibson/qemu.git tags/ppc-for-2.6-20160129
> >
> > for you to fetch changes up to 1699679e699276c0538008f6ca74cd04e6c68b42:
> >
> >   target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro 
> > (2016-01-29 14:01:52 +1100)
> >
> > 
> > ppc patch queue for 2016-01-29
> >
> > Currently accumulated patches for target-ppc, pseries machine type and
> > related devices.
> >   * Cleanup of error handling code in spapr
> >   * A number of fixes for Macintosh devices for the benefit of MacOS 9 and X
> >   * Remove some abuses of the RTAS memory access functions in spapr
> >   * Fixes for the gdbstub (and monitor debug) for VMX and VSX extensions.
> >   * Fix pseries machine hotplug memory under TCG
> >   * Clean up and extend handling of multiple page sizes with 64-bit hash 
> > MMUs
> >
> 
> Hi. Unfortunately this generates errors when built with clang:
> 
> /home/petmay01/linaro/qemu-for-merges/target-ppc/mmu_helper.c:660:20:
> error: unused function 'ppc4xx_tlb_invalidate_virt'
> [-Werror,-Wunused-function]
> static inline void ppc4xx_tlb_invalidate_virt(CPUPPCState *env,
>^
> 1 error generated.
> 
> The function does appear from a quick grep to be entirely unused...
> 
> (GCC doesn't complain about this because it doesn't warn about unused
> static inline functions in a .c file, but clang does.)

Dammit.  Sorry.

Now.. why didn't travis pick that up :/.

-- 
David Gibson| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson


signature.asc
Description: PGP signature


Re: [Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-01-29 Thread Peter Maydell
On 29 January 2016 at 05:06, David Gibson  wrote:
> The following changes since commit 357e81c7e880f868833edf9f53cce1f3b09ea8ec:
>
>   Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160128' into 
> staging (2016-01-28 11:46:34 +)
>
> are available in the git repository at:
>
>   git://github.com/dgibson/qemu.git tags/ppc-for-2.6-20160129
>
> for you to fetch changes up to 1699679e699276c0538008f6ca74cd04e6c68b42:
>
>   target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro 
> (2016-01-29 14:01:52 +1100)
>
> 
> ppc patch queue for 2016-01-29
>
> Currently accumulated patches for target-ppc, pseries machine type and
> related devices.
>   * Cleanup of error handling code in spapr
>   * A number of fixes for Macintosh devices for the benefit of MacOS 9 and X
>   * Remove some abuses of the RTAS memory access functions in spapr
>   * Fixes for the gdbstub (and monitor debug) for VMX and VSX extensions.
>   * Fix pseries machine hotplug memory under TCG
>   * Clean up and extend handling of multiple page sizes with 64-bit hash MMUs
>

Hi. Unfortunately this generates errors when built with clang:

/home/petmay01/linaro/qemu-for-merges/target-ppc/mmu_helper.c:660:20:
error: unused function 'ppc4xx_tlb_invalidate_virt'
[-Werror,-Wunused-function]
static inline void ppc4xx_tlb_invalidate_virt(CPUPPCState *env,
   ^
1 error generated.

The function does appear from a quick grep to be entirely unused...

(GCC doesn't complain about this because it doesn't warn about unused
static inline functions in a .c file, but clang does.)

thanks
-- PMM



[Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-01-28 Thread David Gibson
The following changes since commit 357e81c7e880f868833edf9f53cce1f3b09ea8ec:

  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160128' into 
staging (2016-01-28 11:46:34 +)

are available in the git repository at:

  git://github.com/dgibson/qemu.git tags/ppc-for-2.6-20160129

for you to fetch changes up to 1699679e699276c0538008f6ca74cd04e6c68b42:

  target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro 
(2016-01-29 14:01:52 +1100)


ppc patch queue for 2016-01-29

Currently accumulated patches for target-ppc, pseries machine type and
related devices.
  * Cleanup of error handling code in spapr
  * A number of fixes for Macintosh devices for the benefit of MacOS 9 and X
  * Remove some abuses of the RTAS memory access functions in spapr
  * Fixes for the gdbstub (and monitor debug) for VMX and VSX extensions.
  * Fix pseries machine hotplug memory under TCG
  * Clean up and extend handling of multiple page sizes with 64-bit hash MMUs


Alyssa Milburn (1):
  cuda.c: return error for unknown commands

Anton Blanchard (1):
  target-ppc: gdbstub: Add VSX support

Benjamin Herrenschmidt (1):
  target-ppc: Use sensible POWER8/POWER8E versions

Bharata B Rao (1):
  spapr: Don't create ibm,dynamic-reconfiguration-memory w/o DR LMBs

David Gibson (22):
  spapr: Small fixes to rtas_ibm_get_system_parameter, remove rtas_st_buffer
  spapr: Remove rtas_st_buffer_direct()
  spapr: Remove abuse of rtas_ld() in h_client_architecture_support
  ppc: Clean up error handling in ppc_set_compat()
  pseries: Clean up error handling of spapr_cpu_init()
  pseries: Clean up error handling in spapr_validate_node_memory()
  pseries: Clean up error handling in spapr_vga_init()
  pseries: Clean up error handling in spapr_rtas_register()
  pseries: Clean up error handling in xics_system_init()
  pseries: Clean up error reporting in ppc_spapr_init()
  pseries: Clean up error reporting in htab migration functions
  pseries: Allow TCG h_enter to work with hotplugged memory
  target-ppc: Remove unused kvmppc_read_segment_page_sizes() stub
  target-ppc: Convert mmu-hash{32,64}.[ch] from CPUPPCState to PowerPCCPU
  target-ppc: Rework ppc_store_slb
  target-ppc: Rework SLB page size lookup
  target-ppc: Use actual page size encodings from HPTE
  target-ppc: Remove unused mmu models from ppc_tlb_invalidate_one
  target-ppc: Split 44x tlbiva from ppc_tlb_invalidate_one()
  target-ppc: Add new TLB invalidate by HPTE call for hash64 MMUs
  target-ppc: Helper to determine page size information from hpte alone
  target-ppc: Allow more page sizes for POWER7 & POWER8 in TCG

Greg Kurz (6):
  target-ppc: kvm: fix floating point registers sync on little-endian hosts
  target-ppc: rename and export maybe_bswap_register()
  target-ppc: gdbstub: fix float registers for little-endian guests
  target-ppc: gdbstub: introduce avr_need_swap()
  target-ppc: gdbstub: fix altivec registers for little-endian guests
  target-ppc: gdbstub: fix spe registers for little-endian guests

James Clarke (1):
  target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro

Mark Cave-Ayland (5):
  target-ppc: use cpu_write_xer() helper in cpu_post_load
  macio: use the existing IDEDMA aiocb to hold the active DMA aiocb
  macio: add dma_active to VMStateDescription
  mac_dbdma: add DBDMA controller state to VMStateDescription
  cuda: add missing fields to VMStateDescription

Programmingkid (1):
  uninorth.c: add support for UniNorth kMacRISCPCIAddressSelect (0x48) 
register

 configure   |   6 +-
 gdb-xml/power-vsx.xml   |  44 +++
 hw/ide/macio.c  |  23 +-
 hw/ide/macio.c.orig | 634 
 hw/misc/macio/cuda.c|  12 +-
 hw/misc/macio/mac_dbdma.c   |  40 ++-
 hw/pci-host/uninorth.c  |   9 +
 hw/ppc/mac.h|   1 -
 hw/ppc/spapr.c  | 112 
 hw/ppc/spapr_hcall.c| 145 --
 hw/ppc/spapr_rtas.c |  50 ++--
 include/hw/ppc/spapr.h  |  36 +--
 target-ppc/cpu-models.c |  12 +-
 target-ppc/cpu-models.h |   4 +-
 target-ppc/cpu.h|  35 ++-
 target-ppc/gdbstub.c|  10 +-
 target-ppc/helper.h |   1 +
 target-ppc/kvm.c|  14 +-
 target-ppc/kvm_ppc.h|   5 -
 target-ppc/machine.c|  22 +-
 target-ppc/mmu-hash32.c |  68 +++--
 target-ppc/mmu-hash32.h |  30 ++-
 target-ppc/mmu-hash64.c | 270 +--
 target-ppc/mmu-hash64.h |  30 ++-
 target-ppc/mmu_helper.c |  59 ++---
 target-ppc/translate.c  |   2 +-
 target-ppc/translate_init.c | 129 +++--
 27 files changed, 1382 insertions(+), 421 deletions(-)
 create mode 100644 gdb-xml/power-vsx.xml

[Qemu-devel] [PULL 00/39] ppc-for-2.6 queue 20160129

2016-01-28 Thread David Gibson
The following changes since commit 357e81c7e880f868833edf9f53cce1f3b09ea8ec:

  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20160128' into 
staging (2016-01-28 11:46:34 +)

are available in the git repository at:

  git://github.com/dgibson/qemu.git tags/ppc-for-2.6-20160129

for you to fetch changes up to 1699679e699276c0538008f6ca74cd04e6c68b42:

  target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro 
(2016-01-29 14:01:52 +1100)

This is similar to the 2016-01-25 pull request which was dropped due
to a build bug on 32-bit hosts.  In addition to fixing that bug, I've
added in the page size cleanup and one other small cleanup patch.



ppc patch queue for 2016-01-29

Currently accumulated patches for target-ppc, pseries machine type and
related devices.
  * Cleanup of error handling code in spapr
  * A number of fixes for Macintosh devices for the benefit of MacOS 9 and X
  * Remove some abuses of the RTAS memory access functions in spapr
  * Fixes for the gdbstub (and monitor debug) for VMX and VSX extensions.
  * Fix pseries machine hotplug memory under TCG
  * Clean up and extend handling of multiple page sizes with 64-bit hash MMUs


Alyssa Milburn (1):
  cuda.c: return error for unknown commands

Anton Blanchard (1):
  target-ppc: gdbstub: Add VSX support

Benjamin Herrenschmidt (1):
  target-ppc: Use sensible POWER8/POWER8E versions

Bharata B Rao (1):
  spapr: Don't create ibm,dynamic-reconfiguration-memory w/o DR LMBs

David Gibson (22):
  spapr: Small fixes to rtas_ibm_get_system_parameter, remove rtas_st_buffer
  spapr: Remove rtas_st_buffer_direct()
  spapr: Remove abuse of rtas_ld() in h_client_architecture_support
  ppc: Clean up error handling in ppc_set_compat()
  pseries: Clean up error handling of spapr_cpu_init()
  pseries: Clean up error handling in spapr_validate_node_memory()
  pseries: Clean up error handling in spapr_vga_init()
  pseries: Clean up error handling in spapr_rtas_register()
  pseries: Clean up error handling in xics_system_init()
  pseries: Clean up error reporting in ppc_spapr_init()
  pseries: Clean up error reporting in htab migration functions
  pseries: Allow TCG h_enter to work with hotplugged memory
  target-ppc: Remove unused kvmppc_read_segment_page_sizes() stub
  target-ppc: Convert mmu-hash{32,64}.[ch] from CPUPPCState to PowerPCCPU
  target-ppc: Rework ppc_store_slb
  target-ppc: Rework SLB page size lookup
  target-ppc: Use actual page size encodings from HPTE
  target-ppc: Remove unused mmu models from ppc_tlb_invalidate_one
  target-ppc: Split 44x tlbiva from ppc_tlb_invalidate_one()
  target-ppc: Add new TLB invalidate by HPTE call for hash64 MMUs
  target-ppc: Helper to determine page size information from hpte alone
  target-ppc: Allow more page sizes for POWER7 & POWER8 in TCG

Greg Kurz (6):
  target-ppc: kvm: fix floating point registers sync on little-endian hosts
  target-ppc: rename and export maybe_bswap_register()
  target-ppc: gdbstub: fix float registers for little-endian guests
  target-ppc: gdbstub: introduce avr_need_swap()
  target-ppc: gdbstub: fix altivec registers for little-endian guests
  target-ppc: gdbstub: fix spe registers for little-endian guests

James Clarke (1):
  target-ppc: Make every FPSCR_ macro have a corresponding FP_ macro

Mark Cave-Ayland (5):
  target-ppc: use cpu_write_xer() helper in cpu_post_load
  macio: use the existing IDEDMA aiocb to hold the active DMA aiocb
  macio: add dma_active to VMStateDescription
  mac_dbdma: add DBDMA controller state to VMStateDescription
  cuda: add missing fields to VMStateDescription

Programmingkid (1):
  uninorth.c: add support for UniNorth kMacRISCPCIAddressSelect (0x48) 
register

 configure   |   6 +-
 gdb-xml/power-vsx.xml   |  44 +++
 hw/ide/macio.c  |  23 +-
 hw/ide/macio.c.orig | 634 
 hw/misc/macio/cuda.c|  12 +-
 hw/misc/macio/mac_dbdma.c   |  40 ++-
 hw/pci-host/uninorth.c  |   9 +
 hw/ppc/mac.h|   1 -
 hw/ppc/spapr.c  | 112 
 hw/ppc/spapr_hcall.c| 145 --
 hw/ppc/spapr_rtas.c |  50 ++--
 include/hw/ppc/spapr.h  |  36 +--
 target-ppc/cpu-models.c |  12 +-
 target-ppc/cpu-models.h |   4 +-
 target-ppc/cpu.h|  35 ++-
 target-ppc/gdbstub.c|  10 +-
 target-ppc/helper.h |   1 +
 target-ppc/kvm.c|  14 +-
 target-ppc/kvm_ppc.h|   5 -
 target-ppc/machine.c|  22 +-
 target-ppc/mmu-hash32.c |  68 +++--
 target-ppc/mmu-hash32.h |  30 ++-
 target-ppc/mmu-hash64.c | 270 +--
 target-ppc/mmu-hash64.h |  30 ++-