1. 21 10月, 2016 15 次提交
  2. 20 10月, 2016 2 次提交
    • P
      Merge remote-tracking branch 'remotes/berrange/tags/pull-qcrypto-2016-10-20-1' into staging · da158a86
      Peter Maydell 提交于
      Merge qcrypto 2016/10/20 v1
      
      # gpg: Signature made Thu 20 Oct 2016 12:58:41 BST
      # gpg:                using RSA key 0xBE86EBB415104FDF
      # gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>"
      # gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>"
      # Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF
      
      * remotes/berrange/tags/pull-qcrypto-2016-10-20-1:
        crypto: fix initialization of gcrypt threading
        crypto: fix initialization of crypto in tests
        qtest: fix make check complaint in crypto module
        crypto: add mode check in qcrypto_cipher_new() for cipher-builtin
        crypto: add CTR mode support
        crypto: extend mode as a parameter in qcrypto_cipher_supports()
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      da158a86
    • D
      crypto: fix initialization of gcrypt threading · 37316663
      Daniel P. Berrange 提交于
      The gcrypt threads implementation must be set before calling
      any other gcrypt APIs, especially gcry_check_version(),
      since that triggers initialization of the random pool. After
      that is initialized, changes to the threads impl won't be
      honoured by the random pool code. This means that gcrypt
      will think thread locking is needed and so try to acquire
      the random pool mutex, but this is NULL as no threads impl
      was set originally. This results in a crash in the random
      pool code.
      
      For the same reasons, we must set the gcrypt threads impl
      before calling gnutls_init, since that will also trigger
      gcry_check_version
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      37316663
  3. 19 10月, 2016 5 次提交
  4. 18 10月, 2016 18 次提交
    • P
      Merge remote-tracking branch 'remotes/awilliam/tags/vfio-updates-20161017.0' into staging · 1b0d3845
      Peter Maydell 提交于
      VFIO updates 2016-10-17
      
       - Convert to realize & improve error reporting (Eric Auger)
       - RTL quirk bug fix (Thorsten Kohfeldt)
       - Skip duplicate pre/post reset (Cao jin)
      
      # gpg: Signature made Mon 17 Oct 2016 20:42:44 BST
      # gpg:                using RSA key 0x239B9B6E3BB08B22
      # gpg: Good signature from "Alex Williamson <alex.williamson@redhat.com>"
      # gpg:                 aka "Alex Williamson <alex@shazbot.org>"
      # gpg:                 aka "Alex Williamson <alwillia@redhat.com>"
      # gpg:                 aka "Alex Williamson <alex.l.williamson@gmail.com>"
      # Primary key fingerprint: 42F6 C04E 540B D1A9 9E7B  8A90 239B 9B6E 3BB0 8B22
      
      * remotes/awilliam/tags/vfio-updates-20161017.0:
        vfio: fix duplicate function call
        vfio/pci: Fix vfio_rtl8168_quirk_data_read address offset
        vfio/pci: Handle host oversight
        vfio/pci: Remove vfio_populate_device returned value
        vfio/pci: Remove vfio_msix_early_setup returned value
        vfio/pci: Conversion to realize
        vfio/platform: Pass an error object to vfio_base_device_init
        vfio/platform: fix a wrong returned value in vfio_populate_device
        vfio/platform: Pass an error object to vfio_populate_device
        vfio: Pass an error object to vfio_get_device
        vfio: Pass an error object to vfio_get_group
        vfio: Pass an Error object to vfio_connect_container
        vfio/pci: Pass an error object to vfio_pci_igd_opregion_init
        vfio/pci: Pass an error object to vfio_add_capabilities
        vfio/pci: Pass an error object to vfio_intx_enable
        vfio/pci: Pass an error object to vfio_msix_early_setup
        vfio/pci: Pass an error object to vfio_populate_device
        vfio/pci: Pass an error object to vfio_populate_vga
        vfio/pci: Use local error object in vfio_initfn
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      1b0d3845
    • P
      Merge remote-tracking branch 'remotes/ehabkost/tags/machine-pull-request' into staging · f525c8a6
      Peter Maydell 提交于
      machine + memory backend queue, 2016-10-17
      
      # gpg: Signature made Mon 17 Oct 2016 18:54:57 BST
      # gpg:                using RSA key 0x2807936F984DC5A6
      # gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com>"
      # Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF  D1AA 2807 936F 984D C5A6
      
      * remotes/ehabkost/tags/machine-pull-request:
        hostmem-file: Register TYPE_MEMORY_BACKEND_FILE properties as class properties
        hostmem: Register TYPE_MEMORY_BACKEND properties as class properties
        pc: Register TYPE_PC_MACHINE properties as class properties
        machine: Register TYPE_MACHINE properties as class properties
        machine: Fix replacement of '_' by '-' in machine property names
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      f525c8a6
    • P
      Merge remote-tracking branch 'remotes/ehabkost/tags/x86-pull-request' into staging · e8ddc2ea
      Peter Maydell 提交于
      x86 queue, 2016-10-17
      
      # gpg: Signature made Mon 17 Oct 2016 18:51:07 BST
      # gpg:                using RSA key 0x2807936F984DC5A6
      # gpg: Good signature from "Eduardo Habkost <ehabkost@redhat.com>"
      # Primary key fingerprint: 5A32 2FD5 ABC4 D3DB ACCF  D1AA 2807 936F 984D C5A6
      
      * remotes/ehabkost/tags/x86-pull-request: (21 commits)
        target-i386: Don't use cpu->migratable when filtering features
        target-i386: Return runnability information on query-cpu-definitions
        target-i386: x86_cpu_load_features() function
        target-i386: Unset cannot_destroy_with_object_finalize_yet
        target-i386/kvm: cache the return value of kvm_enable_x2apic()
        intel_iommu: reject broken EIM
        intel_iommu: add OnOffAuto intr_eim as "eim" property
        intel_iommu: redo configuraton check in realize
        intel_iommu: pass whole remapped addresses to apic
        apic: add send_msi() to APICCommonClass
        apic: add global apic_get_class()
        target-i386: Move warning code outside x86_cpu_filter_features()
        qmp: Add runnability information to query-cpu-definitions
        target-i386: xsave: Add FP and SSE bits to x86_ext_save_areas
        target-i386: Register properties for feature aliases manually
        target-i386: Remove underscores from feat_names arrays
        target-i386: Make plus_features/minus_features QOM-based
        target-i386: Register aliases for feature names with underscores
        target-i386: Disable VME by default with TCG
        target-i386: List CPU models using subclass list
        ...
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      e8ddc2ea
    • P
      Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20161017' into staging · 2d02ac10
      Peter Maydell 提交于
      target-arm:
       * target-arm: kvm: use AddressSpace-specific listener
       * aspeed: add SMC controllers
       * hw/arm/boot: allow using a command line specified dtb without a kernel
       * hw/dma/pl080: Fix bad bit mask
       * hw/intc/arm_gic_kvm: Fix build on aarch64 with some compilers
       * hw/arm/virt: fix ACPI tables for ITS
       * tests: add a m25p80 test
       * tests: cleanup ptimer-test
       * pxa2xx: Auto-assign name for i2c bus in i2c_init_bus
       * target-arm: handle tagged addresses in A64 code
       * target-arm: Fix masking of PC lower bits when doing exception returns
       * target-arm: Implement dummy MDCCINT_EL1
       * target-arm: Add trace events for the generic timers
       * hw/intc/arm_gicv3: Fix ICC register tracepoints
       * hw/char/pl011: Add trace events
      
      # gpg: Signature made Mon 17 Oct 2016 19:39:42 BST
      # gpg:                using RSA key 0x3C2525ED14360CDE
      # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>"
      # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>"
      # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>"
      # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE
      
      * remotes/pmaydell/tags/pull-target-arm-20161017: (25 commits)
        hw/char/pl011: Add trace events
        hw/intc/arm_gicv3: Fix ICC register tracepoints
        target-arm: Add trace events for the generic timers
        target-arm: Implement dummy MDCCINT_EL1
        Fix masking of PC lower bits when doing exception returns
        target-arm: Comments added to identify cases in a switch
        target-arm: Code changes to implement overwrite of tag field on PC load
        target-arm: Infrastucture changes to enable handling of tagged address loading into PC
        pxa2xx: Auto-assign name for i2c bus in i2c_init_bus.
        tests: cleanup ptimer-test
        tests: add a m25p80 test
        hw/arm/virt: no ITS on older machine types
        hw/arm/virt-acpi-build: fix MADT generation
        hw/intc/arm_gic_kvm: Fix build on aarch64
        hw/dma/pl080: Fix bad bit mask (PL080_CONF_M1 | PL080_CONF_M1)
        hw/arm/boot: allow using a command line specified dtb without a kernel
        aspeed: add support for the SMC segment registers
        aspeed: create mapping regions for the maximum number of slaves
        aspeed: add support for the AST2500 SoC SMC controllers
        aspeed: extend the number of host SPI controllers
        ...
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      2d02ac10
    • P
      hw/char/pl011: Add trace events · 041ac056
      Peter Maydell 提交于
      Add some trace events for the pl011 UART model.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1476294876-12340-5-git-send-email-peter.maydell@linaro.org
      041ac056
    • P
      hw/intc/arm_gicv3: Fix ICC register tracepoints · 081b1b98
      Peter Maydell 提交于
      Fix some problems with the tracepoints for ICC register reads
      and writes:
       * tracepoints for ICC_BPR<n>, ICC_AP<n>R<x>, ICC_IGRPEN<n>,
         ICC_EIOR<n> were not printing the <n> that indicated whether
         the access was to the group 0 or 1 register
       * the ICC_IGREPEN1_EL3 read function was not actually calling
         the associated tracepoint
       * the ICC_BPR<n> write function was incorrectly calling the
         tracepoint for ICC_PMR writes
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Acked-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
      Message-id: 1476294876-12340-4-git-send-email-peter.maydell@linaro.org
      081b1b98
    • P
      target-arm: Add trace events for the generic timers · 194cbc49
      Peter Maydell 提交于
      Add some useful trace events for the ARM generic timers (notably
      the various register writes and the resulting IRQ line state).
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
      Message-id: 1476294876-12340-3-git-send-email-peter.maydell@linaro.org
      194cbc49
    • P
      target-arm: Implement dummy MDCCINT_EL1 · 5dbdc434
      Peter Maydell 提交于
      MDCCINT_EL1 is part of the DCC debugger communication
      channel between the CPU and an attached external debugger.
      QEMU doesn't implement this, but since Linux may try
      to access this register we need to provide at least
      a dummy implementation.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
      Message-id: 1476294876-12340-2-git-send-email-peter.maydell@linaro.org
      5dbdc434
    • P
      Fix masking of PC lower bits when doing exception returns · fb0e8e79
      Peter Maydell 提交于
      In commit 9b6a3ea7 store_reg() was changed to mask
      both bits 0 and 1 of the new PC value when in ARM mode.
      Unfortunately this broke the exception return code paths
      when doing a return from ARM mode to Thumb mode: in some
      of these we write a new CPSR including new Thumb mode
      bit via gen_helper_cpsr_write_eret(), and then use store_reg()
      to write the new PC. In this case if the new CPSR specified
      Thumb mode then masking bit 1 of the PC is incorrect
      (these code paths correspond to the v8 ARM ARM pseudocode
      function AArch32.ExceptionReturn(), which always aligns the
      new PC appropriately for the new instruction set state).
      
      Instead of using store_reg() in exception-return code paths,
      call a new store_pc_exc_ret() which stores the raw new PC
      value to env->regs[15], and then mask it appropriately in
      the subsequent helper_cpsr_write_eret() where the new
      env->thumb state is available.
      
      This fixes a bug introduced by 9b6a3ea7 which caused
      crashes/hangs or otherwise bad behaviour for Linux when
      userspace was using Thumb.
      Reported-by: NJerome Forissier <jerome.forissier@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1476113163-24578-1-git-send-email-peter.maydell@linaro.org
      fb0e8e79
    • T
      target-arm: Comments added to identify cases in a switch · 957956b3
      Thomas Hanson 提交于
      3 cases in a switch in disas_exc() require reference to the
      ARM ARM spec in order to determine what case they're handling.
      Signed-off-by: NThomas Hanson <thomas.hanson@linaro.org>
      Message-id: 1476301853-15774-5-git-send-email-thomas.hanson@linaro.org
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      957956b3
    • T
      target-arm: Code changes to implement overwrite of tag field on PC load · 6feecb8b
      Thomas Hanson 提交于
      For BR, BLR and RET instructions, if tagged addresses are enabled, the
      tag field in the address must be cleared out prior to loading the
      address into the PC.  Depending on the current EL, it will be set to
      either all 0's or all 1's.
      Signed-off-by: NThomas Hanson <thomas.hanson@linaro.org>
      Message-id: 1476301853-15774-3-git-send-email-thomas.hanson@linaro.org
      [PMM: remove unnecessary gen_a64_set_pc_reg() wrapper,
       rename gen_a64_set_pc_var() to gen_a64_set_pc(), fix stray
       misindentation]
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      6feecb8b
    • T
      target-arm: Infrastucture changes to enable handling of tagged address loading into PC · 86fb3fa4
      Thomas Hanson 提交于
      When capturing the current CPU state for the TB, extract the TBI0 and TBI1
      values from the correct TCR for the current EL and then add them to the TB
      flags field.
      
      Then, at the start of code generation for the block, copy the TBI fields
      into the DisasContext structure.
      Signed-off-by: NThomas Hanson <thomas.hanson@linaro.org>
      Message-id: 1476301853-15774-2-git-send-email-thomas.hanson@linaro.org
      [PMM: drop useless 'extern' keyword on function prototypes;
       provide CONFIG_USER_ONLY trivial versions of arm_regime_tbi[01]()]
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      86fb3fa4
    • V
      pxa2xx: Auto-assign name for i2c bus in i2c_init_bus. · 08426da7
      Vijay Kumar B 提交于
      If a name is provided, the same name is assigned to both the I2C
      controllers. Leaving it NULL, causes names to be automatically
      assigned with an ID suffix, giving unique names to each
      controller. This helps us to uniquely identify each controller in the
      device tree, for example when adding an I2C device.
      Signed-off-by: NVijay Kumar B. <vijaykumar@zilogic.com>
      Reviewed-by: NDeepak S. <deepak@zilogic.com>
      Message-id: 1476351885-8905-1-git-send-email-vijaykumar@zilogic.com
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      08426da7
    • P
      tests: cleanup ptimer-test · 24b94625
      Paolo Bonzini 提交于
      1) ptimer-test is not a qtest---it runs the ptimer.c code directly in the
      ptimer-test process
      
      2) ptimer-test has its own stubs file, so there is no need to add more
      stubs to stubs/vmstate.c
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NDmitry Osipenko <digetx@gmail.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      24b94625
    • C
      tests: add a m25p80 test · 7a2334f7
      Cédric Le Goater 提交于
      This test uses the palmetto platform and the Aspeed SPI controller to
      test the m25p80 flash module device model. The flash model is defined
      by the platform (n25q256a) and it would be nice to find way to control
      it, using a property probably.
      Signed-off-by: NCédric Le Goater <clg@kaod.org>
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1475787271-28794-1-git-send-email-clg@kaod.org
      Brainstormed-with: Greg Kurz <groug@kaod.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      7a2334f7
    • A
      hw/arm/virt: no ITS on older machine types · 2231f69b
      Andrew Jones 提交于
      We should avoid exposing new hardware (through DT and ACPI) on older
      machine types. This patch keeps 2.7 and older from changing, despite
      the introduction of ITS support for 2.8.
      Signed-off-by: NAndrew Jones <drjones@redhat.com>
      Reviewed-by: NEric Auger <eric.auger@redhat.com>
      Message-id: 1476117341-32690-3-git-send-email-drjones@redhat.com
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      2231f69b
    • A
      hw/arm/virt-acpi-build: fix MADT generation · 13cda487
      Andrew Jones 提交于
      We can't return early from build_* functions, as build_header is
      only called at the end.
      Signed-off-by: NAndrew Jones <drjones@redhat.com>
      Reviewed-by: NEric Auger <eric.auger@redhat.com>
      Message-id: 1476117341-32690-2-git-send-email-drjones@redhat.com
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      13cda487
    • C
      hw/intc/arm_gic_kvm: Fix build on aarch64 · bad07da2
      Christopher Covington 提交于
      Remove unused debugging code to fix native building on aarch64. Without
      this change, the following -Werr output inhibits make from completing.
      
        qemu/hw/intc/arm_gic_kvm.c:38:18: error: debug_gic_kvm defined but not used [-Werror=unused-const-variable=]
         static const int debug_gic_kvm = 0;
                          ^~~~~~~~~~~~~
        cc1: all warnings being treated as errors
        qemu/rules.mak:60: recipe for target 'hw/intc/arm_gic_kvm.o' failed
        make[1]: *** [hw/intc/arm_gic_kvm.o] Error 1
        Makefile:205: recipe for target 'subdir-aarch64-softmmu' failed
      Signed-off-by: NChristopher Covington <cov@codeaurora.org>
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 20161011163202.19720-1-cov@codeaurora.org
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      bad07da2