1. 25 2月, 2016 11 次提交
    • B
      target-tricore: add illegal opcode trap generation · f678f671
      Bastian Koppelmann 提交于
      Reviewed-by: NRichard Henderson  <rth@twiddle.net>
      Signed-off-by: NBastian Koppelmann <kbastian@mail.uni-paderborn.de>
      Message-Id: <1455889426-1923-4-git-send-email-kbastian@mail.uni-paderborn.de>
      f678f671
    • B
      target-tricore: add context managment trap generation · 3292b447
      Bastian Koppelmann 提交于
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Signed-off-by: NBastian Koppelmann <kbastian@mail.uni-paderborn.de>
      Message-Id: <1455889426-1923-3-git-send-email-kbastian@mail.uni-paderborn.de>
      3292b447
    • B
      target-tricore: Add trap handling & SOVF/OVF traps · 518d7fd2
      Bastian Koppelmann 提交于
      Add the infrastructure needed to generate and handle traps and
      implement the generation of SOVF and OVF traps.
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Signed-off-by: NBastian Koppelmann <kbastian@mail.uni-paderborn.de>
      Message-Id: <1455889426-1923-2-git-send-email-kbastian@mail.uni-paderborn.de>
      518d7fd2
    • B
      target-tricore: Fix wrong precedences on psw_write · 5dc1fbae
      Bastian Koppelmann 提交于
      Wrong braces on the restore of the cached TCGv SV and V bit could lead to
      a wrong PSW. While at this it removes unnecessary braces for the restore
      of the cached TCGv AV and SAV bits.
      Signed-off-by: NBastian Koppelmann <kbastian@mail.uni-paderborn.de>
      5dc1fbae
    • B
      target-tricore: fix save_context_upper using env->PSW · 72373357
      Bastian Koppelmann 提交于
      If the cached bits for C, V, SV, AV, or SAV were set, they would
      not be saved during the context save since env->PSW was stored instead
      of properly reading them using psw_read().
      Reviewed-by: NRichard Henderson <rth@twiddle.net>
      Signed-off-by: NBastian Koppelmann <kbastian@mail.uni-paderborn.de>
      72373357
    • P
      Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.6-20160225' into staging · d159148b
      Peter Maydell 提交于
      ppc patch queue for 2016-02-25
      
      Hopefully final queue before qemu-2.6 soft freeze.  Currently
      accumulated patches for target-ppc, pseries machine type and related
      devices:
          * SLOF firmware update
              - Many new features, including virtio 1.0 non-legacy support
          * H_PAGE_INIT hypercall implementation
          * Small cleanups and bugfixes.
      
      # gpg: Signature made Thu 25 Feb 2016 03:00:56 GMT using RSA key ID 20D9B392
      # gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>"
      # gpg:                 aka "David Gibson (Red Hat) <dgibson@redhat.com>"
      # gpg:                 aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>"
      # gpg: WARNING: This key is not certified with sufficiently trusted signatures!
      # gpg:          It is not certain that the signature belongs to the owner.
      # Primary key fingerprint: 75F4 6586 AE61 A66C C44E  87DC 6C38 CACA 20D9 B392
      
      * remotes/dgibson/tags/ppc-for-2.6-20160225:
        ppc/kvm: Tell the user what might be wrong when using bad CPU types with kvm-hv
        ppc/kvm: Use error_report() instead of cpu_abort() for user-triggerable errors
        spapr: initialize local Error pointer
        hw/ppc/spapr: Implement the h_page_init hypercall
        pseries: Update SLOF firmware image to 20160223
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      d159148b
    • T
      ppc/kvm: Tell the user what might be wrong when using bad CPU types with kvm-hv · 388e47c7
      Thomas Huth 提交于
      Using a CPU type that does not match the host is not possible when using
      the kvm-hv kernel module - the PVR is checked in the kernel function
      kvm_arch_vcpu_ioctl_set_sregs_hv() and rejected with -EINVAL if it
      does not match the host.
      However, when the user tries to specify a non-matching CPU type, QEMU
      currently only reports "kvm_init_vcpu failed: Invalid argument", and
      this is of course not very helpful for the user to solve the problem.
      So this patch adds a more descriptive error message that tells the
      user to specify "-cpu host" instead.
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      [Removed melodramatic '!' :)]
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      388e47c7
    • T
      ppc/kvm: Use error_report() instead of cpu_abort() for user-triggerable errors · 072ed5f2
      Thomas Huth 提交于
      Setting the KVM_CAP_PPC_PAPR capability can fail if either the KVM
      kernel module does not support it, or if the specified vCPU type
      is not a 64-bit Book3-S CPU type. For example, the user can trigger
      it easily with "-M pseries -cpu G2leLS" when using the kvm-pr kernel
      module. So the error should not be reported with cpu_abort() since
      this function is rather meant for reporting programming errors than
      reporting user-triggerable errors (it prints out all CPU registers
      and then calls abort() to kills the program - two things that the
      normal user does not expect here) . So let's use error_report() with
      exit(1) here instead.
      A similar problem exists in the code that sets the KVM_CAP_PPC_EPR
      capability, so while we're at it, fix that, too.
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      072ed5f2
    • G
      spapr: initialize local Error pointer · 9897e462
      Greg Kurz 提交于
      This fixes a crash in the target QEMU during migration.
      
      Broken in commit c5f54f3e.
      Signed-off-by: NGreg Kurz <gkurz@linux.vnet.ibm.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      [reworded commit message]
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      9897e462
    • T
      hw/ppc/spapr: Implement the h_page_init hypercall · 3240dd9a
      Thomas Huth 提交于
      This hypercall either initializes a page with zeros, or copies
      another page.
      According to LoPAPR, the i-cache of the page should also be
      flushed if using H_ICACHE_INVALIDATE or H_ICACHE_SYNCHRONIZE,
      and the d-cache should be synchronized to the RAM if the
      H_ICACHE_SYNCHRONIZE flag is used. For this, two new functions
      are introduced, kvmppc_dcbst_range() and kvmppc_icbi()_range, which
      use the corresponding assembler instructions to flush the caches
      if running with KVM on Power. If the code runs with TCG instead,
      the code only uses tb_flush(), assuming that this will be
      enough for synchronization.
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      3240dd9a
    • A
      pseries: Update SLOF firmware image to 20160223 · 4f7ab0cd
      Alexey Kardashevskiy 提交于
      The main change is virtio 1.0 support.
      
      The complete changelog is:
        > dhcp: fix warning messages when calling strtoip()
        > virtio-scsi: enable virtio 1.0
        > virtio-scsi: use virtio_fill desc api
        > virtio-scsi: use idx during initialization
        > virtio-net: enable virtio 1.0
        > virtio-blk: enable virtio 1.0
        > virtio: 1.0 helper to read 16/32/64 bit value
        > virtio: add and enable 1.0 device setup
        > virtio: 1.0 guest features negotiation
        > virtio: update features set/get register accessor
        > virtio: make all virtio apis 1.0 aware
        > virtio: add 64-bit virtio helpers for 1.0
        > virtio: add virtio 1.0 related struct and defines
        > virtio: get rid of type variable in virtio_device
        > virtio-net: move setup-mac to the open routine
        > virtio-net: make net_hdr_size a variable
        > virtio-net: replace vq array with vq_{tx,rx}
        > virtio-net: use virtio_fill_desc
        > virtio-{net,blk,scsi,9p}: use status variable
        > virtio-blk: add helpers for filling descriptors
        > virtio-{blk,9p}: enable resetting the device
        > virtio: introduce helper for initializing virt queue
        > virtio: fix code style/design issues.
        > fix code style in byteorder.h
        > pci: add byte read/write helper routines
        > virtio-net: fix gcc warnings (-Wextra)
        > virtio-blk: fix gcc warnings (-Wextra)
        > readme: Add a note about coding style
        > dhcp: Remove duplicated strtoip()
        > ethernet: Fix gcc warnings
        > net-snk: Fix gcc warnings
        > net-snk: Fix coding style
        > net-snk: Fix memory leak in dhcp6_process_options()
        > net-snk: Fix memory leak in ip6_to_multicast_mac() / send_ipv6()
        > net-snk: Remove bad NEIGHBOUR_SOLICITATION code in send_ipv6()
        > Fix dma-alloc and dma-map-in functions on board-js2x
        > net-snk: Allow stateless autoconfig IPv6 addresses with IP_INIT_IPV6_MANUAL
        > net-snk: Simplify the ip6_is_multicast() function
        > net-snk: Move global variable definition out of the header file
        > net-snk: Prefer non-link-local unicast IPv6 addresses if possible
        > net-snk: Fix the check for link-local addresses when receiving RAs
        > net-snk: Remove junk at the end of IPv6 TFTP ACK and error packets
        > Fix format strings in usb-ohci.c
        > net-snk: Get rid of junk at the end of sent DHCPv6 packets
        > net-snk: Use transaction IDs in DHCPv4, too
        > net-snk: Make use of DHCPv6 transaction IDs
        > net-snk: Seed the pseudo-random number generator
        > libc: Add srand() call
        > libc: Fix the rand() function to return non-zero values
        > net-snk: Improve printed text when booting via network
        > Increase temporary buffer size of ibm,client-architecture-support call
        > Move archsupport.fs into board-qemu directory
        > boot: stop booting when we encounter HALT
        > fat-files: Fix bug with root-entries = 0 on certain FAT32 file systems
        > usb: print unhandled descriptor in debug mode
        > Improve stack usage with libnvram get_partition function
        > Improve stack usage in libnvram environment variable code
        > libc: Port vsnprintf back from skiboot
        > Move the code for rfill into a separate function
        > Rework wrapper for new_nvram_partition() and fix possible bug in there
        > Stack optimization in libusb: split up setup_new_device()
        > Check for stack overflow in paflof engine
        > Clean up pending packet variable in ipv4 code
        > Fix tracking of pending outgoing packets when handling ARP replies
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      4f7ab0cd
  2. 24 2月, 2016 10 次提交
  3. 23 2月, 2016 19 次提交