qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 51628b: synchronize Linux headers to 4.0-rc3


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 51628b: synchronize Linux headers to 4.0-rc3
Date: Wed, 11 Mar 2015 09:30:08 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 51628b1898b6bc15306e5c831962f858c2b48eb5
      
https://github.com/qemu/qemu/commit/51628b1898b6bc15306e5c831962f858c2b48eb5
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M include/standard-headers/linux/virtio_net.h
    M linux-headers/asm-arm/kvm.h
    M linux-headers/asm-arm64/kvm.h
    M linux-headers/asm-s390/kvm.h
    M linux-headers/asm-x86/hyperv.h
    M linux-headers/linux/kvm.h

  Log Message:
  -----------
  synchronize Linux headers to 4.0-rc3

synchronize linux headers up to
commit 9eccca0843205f87c ("Linux 4.0-rc3")

Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 5172b780c5d2e37ae0a2b48813fda0e54ea15c38
      
https://github.com/qemu/qemu/commit/5172b780c5d2e37ae0a2b48813fda0e54ea15c38
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/cpu.h
    M target-s390x/kvm.c
    M target-s390x/misc_helper.c

  Log Message:
  -----------
  s390x: introduce defines for SIGP condition codes

This patch introduces defines for the SIGP condition codes and replaces all
occurrences of numeral condition codes with the new defines.

Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 6eb8f212d2686ed9b17077d554465df7ae06f805
      
https://github.com/qemu/qemu/commit/6eb8f212d2686ed9b17077d554465df7ae06f805
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: more details for SIGP handler with one destination vcpu

Whenever a sigp order is to be executed by a target vcpu, we use run_on_cpu().
As we have only one pointer to pass all data to these sigp handlers, let's
introduce the struct sigp_info and use it as a transport container.

All orders targeting a single vcpu are now  dispatched from a separate
handler. The destination vcpu is only valid for these orders and must not be
checked for SIGP SET ARCHITECTURE.

The sigp_info is filled with life in this new handler and used to pass the
information about the sigp order to the existing handlers. The cc is set
within these handlers.

Rename sigp_cpu_start() and sigp_cpu_restart() on the way to match the SIGP
order names (in order to avoid touching affected lines several times).

Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 22740e3fc0856b2b6e66c91056a7026f87f51482
      
https://github.com/qemu/qemu/commit/22740e3fc0856b2b6e66c91056a7026f87f51482
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: pass the SIGP instruction parameter to the SIGP handler

The parameter of the SIGP instruction will be neded in the future. Let's read it
out and store it in the struct sigp_info, so it can be passed to the sigp
handlers.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 36b5c84556f38421c43ee4ff213f7ab64fd66a51
      
https://github.com/qemu/qemu/commit/36b5c84556f38421c43ee4ff213f7ab64fd66a51
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: helper to set the SIGP status in SigpInfo

Whenever we set the SIGP status in the status register, we have to wipe out
the lower 4 bytes and keep the higher 4 bytes. Also the condition code will
always be set to STATUS_STORED.

Let's introduce the wrapper for SigpInfo, as this will avoid most duplicate
code in the future.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 56dba22b7dc1c41ff7dca6593080a99bcca74b5c
      
https://github.com/qemu/qemu/commit/56dba22b7dc1c41ff7dca6593080a99bcca74b5c
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c
    M trace-events

  Log Message:
  -----------
  s390x/kvm: trace all SIGP orders

This patch adds tracing code for all SIGP orders (including the destination
vcpu and the resulting condition code).

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 18ff949474cfbba892fdc34aa6ed7558afc78c5c
      
https://github.com/qemu/qemu/commit/18ff949474cfbba892fdc34aa6ed7558afc78c5c
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/cpu.c
    M target-s390x/cpu.h
    M target-s390x/kvm.c
    M target-s390x/machine.c

  Log Message:
  -----------
  s390x/kvm: implement handling of new SIGP orders

This patch adds handling code for the following SIGP orders:
- SIGP SET ARCHITECTURE
- SIGP SET PREFIX
- SIGP STOP
- SIGP STOP AND STORE STATUS
- SIGP STORE STATUS AT ADDRESS

SIGP STOP (AND STORE STATUS) are the only orders that can stay pending forever
(and may only be interrupted by resets), so special care has to be taken about
them. Their status also has to be tracked within QEMU. This patch takes
care of migrating this status (e.g. if migration happens during a SIGP STOP).

Due to the BQL, only one VCPU is currently able to execute SIGP handlers at a
time. According to the PoP, BUSY should be returned if another SIGP order is
currently being executed on a VCPU. This can only be implemented when the BQL
does not protect all handlers. For now, all SIGP orders on all VCPUs will be
serialized, which will be okay for the first shot.

Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 4f2b55d18413ba09f8a4367a670192e46e967fc0
      
https://github.com/qemu/qemu/commit/4f2b55d18413ba09f8a4367a670192e46e967fc0
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: SIGP START is only applicable when STOPPED

In preparation for other CPU states, SIGP START will only start a VCPU if it is
in the STOPPED state.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 3f10341ffbbf4271485c32ca96a75d99d1b6bf6d
      
https://github.com/qemu/qemu/commit/3f10341ffbbf4271485c32ca96a75d99d1b6bf6d
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/cpu.h
    M target-s390x/helper.c

  Log Message:
  -----------
  s390x: add function to deliver restart irqs

This patch adds a helper function to deliver restart irqs. To be able to be used
by kvm, the psw load/store methods have to perform special cc-code handling only
when running with tcg.

Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: e3b7b57807b5820e21555b711726e6abb1a4050f
      
https://github.com/qemu/qemu/commit/e3b7b57807b5820e21555b711726e6abb1a4050f
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: deliver SIGP RESTART directly if stopped

According to the PoP, a restart irq has to be delivered "without first honoring
any other pending interruptions", if a cpu is in the STOPPED state.

While it is hard to implement this case in kvm, it can easily be handled in 
qemu.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: f16d3f58748acff4c23f9149c3261844b4d595d5
      
https://github.com/qemu/qemu/commit/f16d3f58748acff4c23f9149c3261844b4d595d5
  Author: David Hildenbrand <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: enable the new SIGP handling in user space

All required SIGP handlers have been implemented in QEMU.

Let's enable the new sigp handling in user space if the kernel supports it.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: e3e300d24c4131060c6b3d3e20c890eb92f18597
      
https://github.com/qemu/qemu/commit/e3e300d24c4131060c6b3d3e20c890eb92f18597
  Author: Markus Armbruster <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M hw/s390x/s390-virtio-bus.c

  Log Message:
  -----------
  virtio-s390: s390_virtio_device_init() can't fail, simplify

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: f35dd5665142022ae9e8c2749db774da275549c2
      
https://github.com/qemu/qemu/commit/f35dd5665142022ae9e8c2749db774da275549c2
  Author: Markus Armbruster <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M hw/s390x/s390-virtio-bus.c
    M hw/s390x/s390-virtio-bus.h

  Log Message:
  -----------
  virtio-s390: Convert to realize()

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 5e5ced386a4ae74e406453dd5a7927936b1911aa
      
https://github.com/qemu/qemu/commit/5e5ced386a4ae74e406453dd5a7927936b1911aa
  Author: Markus Armbruster <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M hw/s390x/virtio-ccw.c
    M hw/s390x/virtio-ccw.h

  Log Message:
  -----------
  virtio-ccw: Convert to realize()

Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: a310b283e357b54533c8168a92e8f1068efdc4d1
      
https://github.com/qemu/qemu/commit/a310b283e357b54533c8168a92e8f1068efdc4d1
  Author: Dominik Dingel <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c
    M target-s390x/cpu.h
    M target-s390x/kvm.c

  Log Message:
  -----------
  s390x/kvm: passing max memory size to accelerator

With "KVM: s390: Allow userspace to limit guest memory size" KVM is able to
do some optimizations based on the guest memory limit.

The guest memory limit is computed by the initial definition and with the 
notion of
hotplugged memory.

Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Guenther Hutzl <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Dominik Dingel <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 2be9d2927cca76d8475f0083e9ecc87baf1b8222
      
https://github.com/qemu/qemu/commit/2be9d2927cca76d8475f0083e9ecc87baf1b8222
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  s390-ccw.img: Allow bigger ramdisk sizes or offsets

The s390-ccw bios creates the the virtqueue at 100MB. For
big ramdisks or offsets (via zipl) this gets overwritten.
As a quick band-aid, lets move the virtqueue into the bss
section, which is at 0x7f00000. As the bios code (text) is
at 0x7e00000 we can now handle ramdisk which are  ~27MB
bigger.

Long term we want to make the s390-ccw bios position
independent and load of at the end of memory.

Reported-by: Alexander Graf <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>
Acked-by: Cornelia Huck <address@hidden>
Message-Id: <address@hidden>


  Commit: 5c8d542004b7474560bc4cb017d597ea320bd4ac
      
https://github.com/qemu/qemu/commit/5c8d542004b7474560bc4cb017d597ea320bd4ac
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M pc-bios/s390-ccw/virtio.c

  Log Message:
  -----------
  s390-ccw.img: Reinitialize guessing on reboot

guessed_disk_nature is a static zero variable. As the QEMU ELF
loader does not zero the BSS section, lets do it explicitely here.

This fixes reboot for some corner cases (like FCP flash
devices with logical_block_size=512, physical_block_size=4096)

Signed-off-by: Christian Borntraeger <address@hidden>
Tested-by: Eugene (jno) Dvurechenski <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Message-Id: <address@hidden>


  Commit: 5dce07e1cb67aab265b16e39b0b9d812199a4d22
      
https://github.com/qemu/qemu/commit/5dce07e1cb67aab265b16e39b0b9d812199a4d22
  Author: Thomas Huth <address@hidden>
  Date:   2015-03-10 (Tue, 10 Mar 2015)

  Changed paths:
    M hw/core/loader.c
    M include/elf.h
    M include/hw/elf_ops.h

  Log Message:
  -----------
  elf-loader: Provide the possibility to relocate s390 ELF files

On s390, we would like to load our "BIOS" s390-ccw.img to the end of the
RAM. Therefor we need the possibility to relocate the ELF file so that
it can also run from different addresses. This patch adds the necessary
code to the QEMU ELF loader function.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Acked-by: Alexander Graf <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: d884c86dcd3b64406cf5ce2373374cee6b475ecb
      
https://github.com/qemu/qemu/commit/d884c86dcd3b64406cf5ce2373374cee6b475ecb
  Author: Thomas Huth <address@hidden>
  Date:   2015-03-11 (Wed, 11 Mar 2015)

  Changed paths:
    M hw/s390x/ipl.c
    M pc-bios/s390-ccw/Makefile

  Log Message:
  -----------
  s390/bios: Make the s390-ccw.img relocatable

The current bios sits at location 0x7e00000 in the guest RAM
and thus prevents loading of bigger ramdisks. By making the
image relocatable we can move it to the end of the RAM so that
it is getting out of the way.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Christian Borntraeger <address@hidden>
[Fixup build failure on 32 bit hosts]


  Commit: 2d5eeef1c0be68c30ccd60fd7267690d523f702a
      
https://github.com/qemu/qemu/commit/2d5eeef1c0be68c30ccd60fd7267690d523f702a
  Author: Christian Borntraeger <address@hidden>
  Date:   2015-03-11 (Wed, 11 Mar 2015)

  Changed paths:
    M pc-bios/s390-ccw.img

  Log Message:
  -----------
  s390-ccw: rebuild BIOS

rebuild bios to get latest changes:

s390/bios: Make the s390-ccw.img relocatable
s390-ccw.img: Reinitialize guessing on reboot
s390-ccw.img: Allow bigger ramdisk sizes or offsets

Signed-off-by: Christian Borntraeger <address@hidden>


  Commit: 165fa4091e97bfafbf394acb446623b92998175f
      
https://github.com/qemu/qemu/commit/165fa4091e97bfafbf394acb446623b92998175f
  Author: Peter Maydell <address@hidden>
  Date:   2015-03-11 (Wed, 11 Mar 2015)

  Changed paths:
    M hw/core/loader.c
    M hw/s390x/ipl.c
    M hw/s390x/s390-virtio-bus.c
    M hw/s390x/s390-virtio-bus.h
    M hw/s390x/s390-virtio-ccw.c
    M hw/s390x/virtio-ccw.c
    M hw/s390x/virtio-ccw.h
    M include/elf.h
    M include/hw/elf_ops.h
    M include/standard-headers/linux/virtio_net.h
    M linux-headers/asm-arm/kvm.h
    M linux-headers/asm-arm64/kvm.h
    M linux-headers/asm-s390/kvm.h
    M linux-headers/asm-x86/hyperv.h
    M linux-headers/linux/kvm.h
    M pc-bios/s390-ccw.img
    M pc-bios/s390-ccw/Makefile
    M pc-bios/s390-ccw/main.c
    M pc-bios/s390-ccw/s390-ccw.h
    M pc-bios/s390-ccw/virtio.c
    M target-s390x/cpu.c
    M target-s390x/cpu.h
    M target-s390x/helper.c
    M target-s390x/kvm.c
    M target-s390x/machine.c
    M target-s390x/misc_helper.c
    M trace-events

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/borntraeger/tags/s390x-20150310' into 
staging

s390x/kvm: Features and fixes for 2.3

- an extension to the elf loader to allow relocations
- make the ccw bios relocatable. This allows for bigger ramdisks
  or smaller guests
- Handle all slow SIGPs in QEMU (instead of kernel) for better
  compliance and correctness
- tell the KVM module the maximum guest size. This allows KVM
  to reduce the number or page table levels
- Several fixes/cleanups

# gpg: Signature made Wed Mar 11 10:17:13 2015 GMT using RSA key ID B5A61C7C
# gpg: Good signature from "Christian Borntraeger (IBM) <address@hidden>"

* remotes/borntraeger/tags/s390x-20150310:
  s390-ccw: rebuild BIOS
  s390/bios: Make the s390-ccw.img relocatable
  elf-loader: Provide the possibility to relocate s390 ELF files
  s390-ccw.img: Reinitialize guessing on reboot
  s390-ccw.img: Allow bigger ramdisk sizes or offsets
  s390x/kvm: passing max memory size to accelerator
  virtio-ccw: Convert to realize()
  virtio-s390: Convert to realize()
  virtio-s390: s390_virtio_device_init() can't fail, simplify
  s390x/kvm: enable the new SIGP handling in user space
  s390x/kvm: deliver SIGP RESTART directly if stopped
  s390x: add function to deliver restart irqs
  s390x/kvm: SIGP START is only applicable when STOPPED
  s390x/kvm: implement handling of new SIGP orders
  s390x/kvm: trace all SIGP orders
  s390x/kvm: helper to set the SIGP status in SigpInfo
  s390x/kvm: pass the SIGP instruction parameter to the SIGP handler
  s390x/kvm: more details for SIGP handler with one destination vcpu
  s390x: introduce defines for SIGP condition codes
  synchronize Linux headers to 4.0-rc3

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/9159eb9abc31...165fa4091e97

reply via email to

[Prev in Thread] Current Thread [Next in Thread]