Skip to content

Commits

Permalink
qom-cpu-featur…
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Mar 4, 2014

  1. cpu: Factor out cpu_generic_init()

    All targets using it gain the ability to set -cpu name,key=value,...
    options via the default TYPE_CPU CPUClass::parse_features() implementation.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    b3f8260 View commit details
    Browse the repository at this point in the history
  2. cpu: Implement CPUClass::parse_features() for the rest of CPUs

    CPUs who do not provide their own implementation of feature parsing
    will treat each option as a QOM property and set it to the supplied
    value.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    9ffe7ef View commit details
    Browse the repository at this point in the history
  3. target-sparc: Defer SPARCCPU feature inference to QOM realize

    Gets it out of cpu_sparc_register() and aligns with target-arm.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    f2ebadb View commit details
    Browse the repository at this point in the history
  4. target-sparc: Implement CPUClass::parse_features() for SPARCCPU

    Factor cpu_model parsing out of cpu_sparc_find_by_name() by passing
    cpu_sparc_find_by_name() the name portion only and calling
    CPUClass::parse_features() from cpu_sparc_register() afterwards.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    afe9a05 View commit details
    Browse the repository at this point in the history
  5. target-sparc: Use error_report() for CPU error reporting

    Replace non-debug fprintf() with error_report().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    410bc59 View commit details
    Browse the repository at this point in the history
  6. cpu: Introduce CPUClass::parse_features() hook

    Adapt the X86CPU implementation to suit the generic hook.
    This involves a cleanup of error handling to cope with NULL errp.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 4, 2014
    Copy the full SHA
    ae55333 View commit details
    Browse the repository at this point in the history

Commits on Mar 3, 2014

  1. target-i386: Enable x2apic by default on KVM

    When on KVM mode, enable x2apic by default on all CPU models.
    
    Normally we try to keep the CPU model definitions as close as the real
    CPUs as possible, but x2apic can be emulated by KVM without host CPU
    support for x2apic, and it improves performance by reducing APIC access
    overhead. x2apic emulation is available on KVM since 2009 (Linux
    2.6.32-rc1), there's no reason for not enabling x2apic by default when
    running KVM.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Acked-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    98c6de2 View commit details
    Browse the repository at this point in the history
  2. target-i386: Introduce x86_cpu_compat_disable_kvm_features()

    Instead of the feature-specific disable_kvm_pv_eoi() function, create a
    more general function that can be used to disable other feature bits in
    machine-type compat code.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Acked-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    2353022 View commit details
    Browse the repository at this point in the history
  3. target-i386: Make kvm_default_features an array

    We will later make the KVM-specific code affect other feature words,
    too.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Acked-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    f4c566b View commit details
    Browse the repository at this point in the history
  4. target-i386: Don't declare variables in the middle of blocks

    Some of my recent changes introduced variable declarations in the middle
    of code blocks.
    
    Fix the code so that it compiles without warnings when using
    -Wdeclaration-after-statement.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    99610b7 View commit details
    Browse the repository at this point in the history
  5. target-i386: Rename x86_def_t to X86CPUDefinition

    As the new X86CPU subclass code is going to change lots of the code
    invoving x86_def_t, let's rename the struct to match coding style first.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    58cd9da View commit details
    Browse the repository at this point in the history
  6. target-i386: Call x86_cpu_load_def() earlier

    As we will initialize the X86CPU fields on instance_init eventually,
    move the code that initializes the X86CPU data based on the CPU model
    name closer to the object_new() call.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    8fa51c3 View commit details
    Browse the repository at this point in the history
  7. target-i386: Rename cpu_x86_register() to x86_cpu_load_def()

    There isn't any kind of "registration" involved in cpu_x86_register()
    anymore: it is simply looking up a CPU model name and loading the model
    definition data into the X86CPU object. Rename it to x86_cpu_load_def()
    to reflect what it does.
    
    Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
    Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    ehabkost authored and afaerber committed Mar 3, 2014
    Copy the full SHA
    957a09e View commit details
    Browse the repository at this point in the history
  8. cpu: Turn cpu_has_work() into a CPUClass hook

    Default to false.
    
    Tidy variable naming and inline cast uses while at it.
    
    Tested-by: Jia Liu <proljc@gmail.com> (or32)
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    afaerber committed Mar 3, 2014
    Copy the full SHA
    52c4963 View commit details
    Browse the repository at this point in the history

Commits on Feb 28, 2014

  1. modules: Fix building with --enable-modules

    Compiling util/modules.c with modules enabled fails now.
    
    Fix it by including qemu-common.h before #ifdef testing in module.c.
    
    Signed-off-by: Fam Zheng <famz@redhat.com>
    Message-id: 1393453893-12125-1-git-send-email-famz@redhat.com
    Reviewed-by: Hu Tao <hutao@cn.fujitsu.com>
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    Fam Zheng authored and pm215 committed Feb 28, 2014
    Copy the full SHA
    d844a7b View commit details
    Browse the repository at this point in the history

Commits on Feb 27, 2014

  1. Merge remote-tracking branch 'remotes/kvm/uq/master' into staging

    * remotes/kvm/uq/master:
      KVM: Use return value for error print
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 27, 2014
    Copy the full SHA
    9fbee91 View commit details
    Browse the repository at this point in the history
  2. Merge remote-tracking branch 'remotes/awilliam/tags/vfio-pci-for-qemu…

    …-20140226.0' into staging
    
    Updates include:
     - Coverify fixes for vfio & pci-assign (Markus)
     - VFIO blacklisting support for known brokwn PCI option ROMs (Bandan)
    
    # gpg: Signature made Wed 26 Feb 2014 18:15:28 GMT using RSA key ID 3BB08B22
    # gpg: Can't check signature: public key not found
    
    * remotes/awilliam/tags/vfio-pci-for-qemu-20140226.0:
      vfio: blacklist loading of unstable roms
      qdev-monitor: set DeviceState opts before calling realize
      pci-assign: Fix potential read beyond buffer on -EBUSY
      vfio: Fix overrun after readlink() fills buffer completely
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 27, 2014
    Copy the full SHA
    73795ce View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2014

  1. Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-2…

    …0140226' into staging
    
    target-arm queue:
     * fixes for various Coverity-spotted bugs
     * support new KVM device control API for VGIC
     * support KVM VGIC save/restore/migration
     * more AArch64 system mode foundations
     * support ARMv8 CRC instructions for A32/T32
     * PL330 minor fixes and cleanup
    
    # gpg: Signature made Wed 26 Feb 2014 17:51:32 GMT using RSA key ID 14360CDE
    # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>"
    
    * remotes/pmaydell/tags/pull-target-arm-20140226: (45 commits)
      dma/pl330: implement dmaadnh instruction
      dma/pl330: Fix buffer depth
      dma/pl330: Add event debugging printfs
      dma/pl330: Rename parent_obj
      dma/pl330: printf format type sweep.
      dma/pl330: Fix misleading type
      dma/pl330: Delete overly verbose debug printf
      target-arm: Add support for AArch32 ARMv8 CRC32 instructions
      include/qemu/crc32c.h: Rename include guards to match filename
      target-arm: Add utility function for checking AA32/64 state of an EL
      target-arm: Implement AArch64 view of CPACR
      target-arm: A64: Implement MSR (immediate) instructions
      target-arm: Store AIF bits in env->pstate for AArch32
      target-arm: A64: Implement WFI
      target-arm: Get MMU index information correct for A64 code
      target-arm: Implement AArch64 OSLAR_EL1 sysreg as WI
      target-arm: Implement AArch64 dummy breakpoint and watchpoint registers
      target-arm: Implement AArch64 ID and feature registers
      target-arm: Implement AArch64 generic timers
      target-arm: Implement AArch64 MPIDR
      ...
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 26, 2014
    Copy the full SHA
    2ce5868 View commit details
    Browse the repository at this point in the history
  2. Merge remote-tracking branch 'remotes/juanquintela/tags/migration/201…

    …40225' into staging
    
    migration/next for 20140225
    
    # gpg: Signature made Tue 25 Feb 2014 14:04:31 GMT using RSA key ID 5872D723
    # gpg: Can't check signature: public key not found
    
    * remotes/juanquintela/tags/migration/20140225:
      rdma: rename 'x-rdma' => 'rdma'
      Fix two XBZRLE corruption issues
      Fix vmstate_info_int32_le comparison/assign
      qemu_file: use fwrite() correctly
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 26, 2014
    Copy the full SHA
    6f6831f View commit details
    Browse the repository at this point in the history
  3. Merge remote-tracking branch 'remotes/stefanha/tags/net-pull-request'…

    … into staging
    
    Net patches
    
    # gpg: Signature made Tue 25 Feb 2014 13:32:33 GMT using RSA key ID 81AB73C8
    # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>"
    # gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>"
    # 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: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8
    
    * remotes/stefanha/tags/net-pull-request:
      virtio-net: use qemu_get_queue() where possible
      vhost_net: use offload API instead of bypassing it
      net: remove implicit peer from offload API
      net: Disable netmap backend when not supported
      net: add offloading support to netmap backend
      net: make tap offloading callbacks static
      net: virtio-net and vmxnet3 use offloading API
      net: TAP uses NetClientInfo offloading callbacks
      net: extend NetClientInfo for offloading
      net: change vnet-hdr TAP prototypes
      opencores_eth: flush queue whenever can_receive can go from false to true
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 26, 2014
    Copy the full SHA
    bc3fbad View commit details
    Browse the repository at this point in the history
  4. Merge remote-tracking branch 'remotes/kraxel/tags/pull-audio-3' into …

    …staging
    
    hda-audio: qom cleanups
    
    # gpg: Signature made Mon 24 Feb 2014 12:19:48 GMT using RSA key ID D3E87138
    # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
    # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
    # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
    
    * remotes/kraxel/tags/pull-audio-3:
      hda-audio: qom cleanups
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pm215 committed Feb 26, 2014
    Copy the full SHA
    28c05ed View commit details
    Browse the repository at this point in the history
  5. vfio: blacklist loading of unstable roms

    Certain cards such as the Broadcom BCM57810 have rom quirks
    that exhibit unstable system behavior duing device assignment. In
    the particular case of 57810, rom execution hangs and if a FLR
    follows, the device becomes inoperable until a power cycle. This
    change blacklists loading of rom for such cards unless the user
    specifies a romfile or rombar=1 on the cmd line
    
    Signed-off-by: Bandan Das <bsd@redhat.com>
    Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
    whitebrandy authored and awilliam committed Feb 26, 2014
    Copy the full SHA
    4b94302 View commit details
    Browse the repository at this point in the history
  6. qdev-monitor: set DeviceState opts before calling realize

    Setting opts before the realize property is set allows the
    following patch to make decisions based on whether the user
    specified "rombar". This also avoids having to create a new
    tristate property especially for this purpose
    
    Reviewed-by: Andreas Färber <afaerber@suse.de>
    Signed-off-by: Bandan Das <bsd@redhat.com>
    Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
    whitebrandy authored and awilliam committed Feb 26, 2014
    Copy the full SHA
    52aa17c View commit details
    Browse the repository at this point in the history
  7. pci-assign: Fix potential read beyond buffer on -EBUSY

    readlink() doesn't write a terminating null byte.
    assign_failed_examine() passes the unterminated string to strrchr().
    Oops.  Terminate it.
    
    Spotted by Coverity.
    
    Signed-off-by: Markus Armbruster <armbru@redhat.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
    Markus Armbruster authored and awilliam committed Feb 26, 2014
    Copy the full SHA
    82d0794 View commit details
    Browse the repository at this point in the history
  8. vfio: Fix overrun after readlink() fills buffer completely

    readlink() returns the number of bytes written to the buffer, and it
    doesn't write a terminating null byte.  vfio_init() writes it itself.
    Overruns the buffer when readlink() filled it completely.
    
    Fix by treating readlink() filling the buffer completely as error,
    like we do in pci-assign.c's assign_failed_examine().
    
    Spotted by Coverity.
    
    Signed-off-by: Markus Armbruster <armbru@redhat.com>
    Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
    Markus Armbruster authored and awilliam committed Feb 26, 2014
    Copy the full SHA
    13665a2 View commit details
    Browse the repository at this point in the history
  9. dma/pl330: implement dmaadnh instruction

    Implement the missing DMAADNH instruction. This is a minor variant
    of the DMAADDH instruction, so factor out to a common implementation
    for both (dmaadxh).
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Message-id: 73ab13532a7cae53441da89b46c279b5f50785e3.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    c04018e View commit details
    Browse the repository at this point in the history
  10. dma/pl330: Fix buffer depth

    This is the product of the data-width and the depth arguments, I.e the
    depth of the FIFO is in terms of data entries and not bytes (which is
    what the original implementation was suggesting). Fix.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: c34de31031511538ccdb3164b48ee8a6a973ebd4.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    a5ae7e3 View commit details
    Browse the repository at this point in the history
  11. dma/pl330: Add event debugging printfs

    These are helpful to anyone trying to debug event sequencing.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: e82a0ad804db3de4f46839e55a9d287735ef870d.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    432a0a1 View commit details
    Browse the repository at this point in the history
  12. dma/pl330: Rename parent_obj

    As per current QOM conventions.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: abb137347ea1ee9c31487b544f3d5435fb17f6a4.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    1c8be73 View commit details
    Browse the repository at this point in the history
  13. dma/pl330: printf format type sweep.

    Use PRI formats as appropriate rather than raw %x and %d. This fixes
    debug printfery on some host platforms. Fix types of debug only
    variables as appropriate.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: dbb5f5fd048b2d4a3cb5c6357577d11211a7a585.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    c3143ba View commit details
    Browse the repository at this point in the history
  14. dma/pl330: Fix misleading type

    This type really should just be a regular int as no usages rely on it's
    32 bitness (it's only meaningful as a bit position and not a bit mask).
    This also fixes a printf which uses the variable with a regular %d.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: 2a99d31f377aee371476d9da8fd0d1b7efa30f63.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    024c6e2 View commit details
    Browse the repository at this point in the history
  15. dma/pl330: Delete overly verbose debug printf

    When using event synchronisation, this particular debug printf floods.
    Just delete it.
    
    Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: dd94d19493f97c47497b9d8caf74ca43e70d58fd.1393372019.git.peter.crosthwaite@xilinx.com
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    pete128 authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    63a3190 View commit details
    Browse the repository at this point in the history
  16. target-arm: Add support for AArch32 ARMv8 CRC32 instructions

    Add support for AArch32 CRC32 and CRC32C instructions added in ARMv8
    and add a CPU feature flag to enable these instructions.
    
    The CRC32-C implementation used is the built-in qemu implementation
    and The CRC-32 implementation is from zlib. This requires adding zlib
    to LIBS to ensure it is linked for the linux-user binary.
    
    Signed-off-by: Will Newton <will.newton@linaro.org>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: 1393411566-24104-3-git-send-email-will.newton@linaro.org
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    Will Newton authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    eb0ecd5 View commit details
    Browse the repository at this point in the history
  17. include/qemu/crc32c.h: Rename include guards to match filename

    Signed-off-by: Will Newton <will.newton@linaro.org>
    Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
    Message-id: 1393411566-24104-2-git-send-email-will.newton@linaro.org
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    Will Newton authored and pm215 committed Feb 26, 2014
    Copy the full SHA
    0956ff5 View commit details
    Browse the repository at this point in the history
  18. target-arm: Add utility function for checking AA32/64 state of an EL

    There are various situations where we need to behave differently
    depending on whether a given exception level is in AArch64 or
    AArch32 state. The state of the current exception level is stored
    in env->aarch64, but there's no equivalent guest-visible architected
    state bits for the status of the exception levels "above" the
    current one which may still affect execution. At the moment we
    only support EL1 (ie no EL2 or EL3) and insist that AArch64
    capable CPUs run with EL1 in AArch64 state, but these may change
    in the future, so abstract out the "what state is this?" check
    into a utility function which can be enhanced later if necessary.
    
    Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
    Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
    pm215 committed Feb 26, 2014
    Copy the full SHA
    1f79ee3 View commit details
    Browse the repository at this point in the history
Older