All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL v5 00/33] Misc patches for 2017-06-01
@ 2017-06-07 15:28 Paolo Bonzini
  2017-06-07 15:28 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini
  0 siblings, 1 reply; 16+ messages in thread
From: Paolo Bonzini @ 2017-06-07 15:28 UTC (permalink / raw)
  To: qemu-devel

The following changes since commit 65dfad62a176f5265f801683be64149c5ad55f7d:

  Merge remote-tracking branch 'remotes/xtensa/tags/20170606-xtensa' into staging (2017-06-06 17:00:12 +0100)

are available in the git repository at:

  git://github.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to a316ae656514501478594ee6043b098c045046fc:

  docs: create config/, devel/ and spin/ subdirectories (2017-06-07 17:25:31 +0200)

----------------------------------------------------------------
* virtio-scsi use-after-free fix (Fam)
* vhost-user-scsi support (Felipe)
* SMM fixes and improvements for TCG (myself, Mihail)
* irqchip and AddressSpaceDispatch cleanups and fixes (Peter)
* Coverity fix (Stefano)
* NBD cleanups and fixes (Vladimir, Eric, myself)
* RTC accuracy improvements and code cleanups (Guangrong+Yunfang)
* socket error reporting improvement (Daniel)
* GDB XML description for SSE registers (Abdallah)
* kvmclock update fix (Denis)
* SMM memory savings (Gonglei)
* -cpu 486 fix (myself)
* various bugfixes (Roman, Peter, myself, Thomas)
* rtc-test improvement (Guangrong)
* migration throttling fix (Felipe)
* create docs/ subdirectories (myself)

----------------------------------------------------------------
Abdallah Bouassida (1):
      target/i386: Add GDB XML description for SSE registers

Daniel P. Berrange (1):
      sockets: improve error reporting if UNIX socket path is too long

Denis Plotnikov (1):
      kvmclock: update system_time_msr address forcibly

Eric Blake (1):
      nbd: Fully initialize client in case of failed negotiation

Fam Zheng (1):
      virtio-scsi: Unset hotplug handler when unrealize

Felipe Franciosi (3):
      vhost-user-scsi: Introduce vhost-user-scsi host device
      vhost-user-scsi: Introduce a vhost-user-scsi sample application
      cpus: reset throttle_thread_scheduled after sleep

Gonglei (1):
      kvm: don't register smram_listener when smm is off

Mihail Abakumov (1):
      i386: fix read/write cr with icount option

Paolo Bonzini (6):
      target/i386: enable A20 automatically in system management mode
      target/i386: use multiple CPU AddressSpaces
      linuxboot_dma: compile for i486
      edu: fix memory leak on msi_broken platforms
      nbd: make it thread-safe, fix qcow2 over nbd
      docs: create config/, devel/ and spin/ subdirectories

Peter Xu (4):
      kvm: irqchip: trace changes on msi add/remove
      msix: trace control bit write op
      kvm: irqchip: skip update msi when disabled
      exec: simplify phys_page_find() params

Roman Pen (1):
      i386/kvm: do not zero out segment flags if segment is unusable or not present

Stefano Stabellini (1):
      Check the return value of fcntl in qemu_set_cloexec

Tai Yunfang (1):
      mc146818rtc: precisely count the clock for periodic timer

Vladimir Sementsov-Ogievskiy (5):
      nbd: strict nbd_wr_syncv
      nbd: read_sync and friends: return 0 on success
      nbd: add errp parameter to nbd_wr_syncv()
      nbd: add errp to read_sync, write_sync and drop_sync
      nbd/client.c: use errp instead of LOG

Xiao Guangrong (5):
      mc146818rtc: update periodic timer only if it is needed
      mc146818rtc: ensure LOST_TICK_POLICY_SLEW is only enabled on TARGET_I386
      mc146818rtc: drop unnecessary '#ifdef TARGET_I386'
      mc146818rtc: embrace all x86 specific code
      qtest: add rtc periodic timer test

 .gitignore                                 |   1 +
 Makefile                                   |   3 +
 Makefile.objs                              |   4 +
 block/nbd-client.c                         |  41 +-
 configure                                  |   4 +-
 contrib/libvhost-user/libvhost-user.h      |  11 +-
 contrib/vhost-user-scsi/Makefile.objs      |   1 +
 contrib/vhost-user-scsi/vhost-user-scsi.c  | 886 +++++++++++++++++++++++++++++
 cpus.c                                     |   2 +-
 default-configs/pci.mak                    |   1 +
 default-configs/s390x-softmmu.mak          |   1 +
 docs/{ => config}/ich9-ehci-uhci.cfg       |   0
 docs/{ => config}/mach-virt-graphical.cfg  |   0
 docs/{ => config}/mach-virt-serial.cfg     |   0
 docs/{ => config}/q35-emulated.cfg         |   0
 docs/{ => config}/q35-virtio-graphical.cfg |   0
 docs/{ => config}/q35-virtio-serial.cfg    |   0
 docs/{ => devel}/atomics.txt               |   0
 docs/{ => devel}/bitmaps.md                |   0
 docs/{ => devel}/blkdebug.txt              |   0
 docs/{ => devel}/blkverify.txt             |   0
 docs/{ => devel}/build-system.txt          |   0
 docs/{ => devel}/lockcnt.txt               |   0
 docs/{ => devel}/memory.txt                |   0
 docs/{ => devel}/migration.txt             |   0
 docs/{ => devel}/multi-thread-tcg.txt      |   0
 docs/{ => devel}/multiple-iothreads.txt    |   0
 docs/{ => devel}/qapi-code-gen.txt         |   0
 docs/{ => devel}/rcu.txt                   |   0
 docs/{ => devel}/tracing.txt               |   0
 docs/{ => devel}/virtio-migration.txt      |   0
 docs/{ => devel}/writing-qmp-commands.txt  |   0
 docs/{ => spin}/aio_notify.promela         |   0
 docs/{ => spin}/aio_notify_accept.promela  |   0
 docs/{ => spin}/aio_notify_bug.promela     |   0
 docs/{ => spin}/tcg-exclusive.promela      |   0
 docs/{ => spin}/win32-qemu-event.promela   |   0
 exec.c                                     |  13 +-
 gdb-xml/i386-32bit-sse.xml                 |  52 ++
 gdb-xml/i386-32bit.xml                     |  14 +
 gdb-xml/i386-64bit-sse.xml                 |  60 ++
 gdb-xml/i386-64bit.xml                     |  14 +
 hw/i386/kvm/clock.c                        |   3 +
 hw/misc/edu.c                              |  12 +-
 hw/pci/msix.c                              |  11 +-
 hw/pci/trace-events                        |   3 +
 hw/scsi/Makefile.objs                      |   1 +
 hw/scsi/vhost-scsi-common.c                |   1 -
 hw/scsi/vhost-user-scsi.c                  | 194 +++++++
 hw/scsi/virtio-scsi.c                      |   3 +
 hw/timer/mc146818rtc.c                     | 203 ++++---
 hw/virtio/virtio-pci.c                     |  58 ++
 hw/virtio/virtio-pci.h                     |  11 +
 include/block/nbd.h                        |   8 +-
 include/hw/timer/mc146818rtc_regs.h        |  20 +
 include/hw/virtio/vhost-user-scsi.h        |  35 ++
 include/hw/virtio/virtio-scsi.h            |   2 +
 kvm-all.c                                  |   8 +-
 nbd/client.c                               | 125 ++--
 nbd/common.c                               |  23 +-
 nbd/nbd-internal.h                         |  40 +-
 nbd/server.c                               | 100 ++--
 pc-bios/linuxboot_dma.bin                  | Bin 1536 -> 1536 bytes
 pc-bios/optionrom/Makefile                 |   1 +
 qemu-nbd.c                                 |   5 +-
 target/i386/arch_memory_mapping.c          |  18 +-
 target/i386/cpu.c                          |  23 +-
 target/i386/cpu.h                          |  20 +-
 target/i386/helper.c                       |  96 ++--
 target/i386/kvm.c                          |  36 +-
 target/i386/machine.c                      |   4 -
 target/i386/smm_helper.c                   |  18 -
 target/i386/translate.c                    |  12 +
 tests/qemu-iotests/083.out                 |   2 +
 tests/rtc-test.c                           |  49 ++
 trace-events                               |   3 +-
 util/oslib-posix.c                         |   4 +-
 util/qemu-sockets.c                        |  68 ++-
 78 files changed, 1936 insertions(+), 392 deletions(-)
 create mode 100644 contrib/vhost-user-scsi/Makefile.objs
 create mode 100644 contrib/vhost-user-scsi/vhost-user-scsi.c
 rename docs/{ => config}/ich9-ehci-uhci.cfg (100%)
 rename docs/{ => config}/mach-virt-graphical.cfg (100%)
 rename docs/{ => config}/mach-virt-serial.cfg (100%)
 rename docs/{ => config}/q35-emulated.cfg (100%)
 rename docs/{ => config}/q35-virtio-graphical.cfg (100%)
 rename docs/{ => config}/q35-virtio-serial.cfg (100%)
 rename docs/{ => devel}/atomics.txt (100%)
 rename docs/{ => devel}/bitmaps.md (100%)
 rename docs/{ => devel}/blkdebug.txt (100%)
 rename docs/{ => devel}/blkverify.txt (100%)
 rename docs/{ => devel}/build-system.txt (100%)
 rename docs/{ => devel}/lockcnt.txt (100%)
 rename docs/{ => devel}/memory.txt (100%)
 rename docs/{ => devel}/migration.txt (100%)
 rename docs/{ => devel}/multi-thread-tcg.txt (100%)
 rename docs/{ => devel}/multiple-iothreads.txt (100%)
 rename docs/{ => devel}/qapi-code-gen.txt (100%)
 rename docs/{ => devel}/rcu.txt (100%)
 rename docs/{ => devel}/tracing.txt (100%)
 rename docs/{ => devel}/virtio-migration.txt (100%)
 rename docs/{ => devel}/writing-qmp-commands.txt (100%)
 rename docs/{ => spin}/aio_notify.promela (100%)
 rename docs/{ => spin}/aio_notify_accept.promela (100%)
 rename docs/{ => spin}/aio_notify_bug.promela (100%)
 rename docs/{ => spin}/tcg-exclusive.promela (100%)
 rename docs/{ => spin}/win32-qemu-event.promela (100%)
 create mode 100644 gdb-xml/i386-32bit-sse.xml
 create mode 100644 gdb-xml/i386-32bit.xml
 create mode 100644 gdb-xml/i386-64bit-sse.xml
 create mode 100644 gdb-xml/i386-64bit.xml
 create mode 100644 hw/scsi/vhost-user-scsi.c
 create mode 100644 include/hw/virtio/vhost-user-scsi.h
-- 
2.13.0

^ permalink raw reply	[flat|nested] 16+ messages in thread
* [Qemu-devel] [PULL v4 00/33] Misc patches for 2017-06-01
@ 2017-06-07 13:55 Paolo Bonzini
  2017-06-07 13:55 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini
  0 siblings, 1 reply; 16+ messages in thread
From: Paolo Bonzini @ 2017-06-07 13:55 UTC (permalink / raw)
  To: qemu-devel

The following changes since commit 65dfad62a176f5265f801683be64149c5ad55f7d:

  Merge remote-tracking branch 'remotes/xtensa/tags/20170606-xtensa' into staging (2017-06-06 17:00:12 +0100)

are available in the git repository at:

  git://github.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to 1f09d49f581f313d374edd2a14f0ce9a825d9556:

  docs: create config/, devel/ and spin/ subdirectories (2017-06-07 15:39:06 +0200)

----------------------------------------------------------------
* virtio-scsi use-after-free fix (Fam)
* vhost-user-scsi support (Felipe)
* SMM fixes and improvements for TCG (myself, Mihail)
* irqchip and AddressSpaceDispatch cleanups and fixes (Peter)
* Coverity fix (Stefano)
* NBD cleanups and fixes (Vladimir, Eric, myself)
* RTC accuracy improvements and code cleanups (Guangrong+Yunfang)
* socket error reporting improvement (Daniel)
* GDB XML description for SSE registers (Abdallah)
* kvmclock update fix (Denis)
* SMM memory savings (Gonglei)
* -cpu 486 fix (myself)
* various bugfixes (Roman, Peter, myself, Thomas)
* rtc-test improvement (Guangrong)
* migration throttling fix (Felipe)
* create docs/ subdirectories (myself)

----------------------------------------------------------------
Abdallah Bouassida (1):
      target/i386: Add GDB XML description for SSE registers

Daniel P. Berrange (1):
      sockets: improve error reporting if UNIX socket path is too long

Denis Plotnikov (1):
      kvmclock: update system_time_msr address forcibly

Eric Blake (1):
      nbd: Fully initialize client in case of failed negotiation

Fam Zheng (1):
      virtio-scsi: Unset hotplug handler when unrealize

Felipe Franciosi (3):
      vhost-user-scsi: Introduce vhost-user-scsi host device
      vhost-user-scsi: Introduce a vhost-user-scsi sample application
      cpus: reset throttle_thread_scheduled after sleep

Gonglei (1):
      kvm: don't register smram_listener when smm is off

Mihail Abakumov (1):
      i386: fix read/write cr with icount option

Paolo Bonzini (6):
      target/i386: enable A20 automatically in system management mode
      target/i386: use multiple CPU AddressSpaces
      linuxboot_dma: compile for i486
      edu: fix memory leak on msi_broken platforms
      nbd: make it thread-safe, fix qcow2 over nbd
      docs: create config/, devel/ and spin/ subdirectories

Peter Xu (4):
      kvm: irqchip: trace changes on msi add/remove
      msix: trace control bit write op
      kvm: irqchip: skip update msi when disabled
      exec: simplify phys_page_find() params

Roman Pen (1):
      i386/kvm: do not zero out segment flags if segment is unusable or not present

Stefano Stabellini (1):
      Check the return value of fcntl in qemu_set_cloexec

Tai Yunfang (1):
      mc146818rtc: precisely count the clock for periodic timer

Vladimir Sementsov-Ogievskiy (5):
      nbd: strict nbd_wr_syncv
      nbd: read_sync and friends: return 0 on success
      nbd: add errp parameter to nbd_wr_syncv()
      nbd: add errp to read_sync, write_sync and drop_sync
      nbd/client.c: use errp instead of LOG

Xiao Guangrong (5):
      mc146818rtc: update periodic timer only if it is needed
      mc146818rtc: ensure LOST_TICK_POLICY_SLEW is only enabled on TARGET_I386
      mc146818rtc: drop unnecessary '#ifdef TARGET_I386'
      mc146818rtc: embrace all x86 specific code
      qtest: add rtc periodic timer test

 .gitignore                                 |   1 +
 Makefile                                   |   3 +
 Makefile.objs                              |   4 +
 block/nbd-client.c                         |  41 +-
 configure                                  |   4 +-
 contrib/libvhost-user/libvhost-user.h      |  11 +-
 contrib/vhost-user-scsi/Makefile.objs      |   1 +
 contrib/vhost-user-scsi/vhost-user-scsi.c  | 886 +++++++++++++++++++++++++++++
 cpus.c                                     |   2 +-
 default-configs/pci.mak                    |   1 +
 default-configs/s390x-softmmu.mak          |   1 +
 docs/{ => config}/ich9-ehci-uhci.cfg       |   0
 docs/{ => config}/mach-virt-graphical.cfg  |   0
 docs/{ => config}/mach-virt-serial.cfg     |   0
 docs/{ => config}/q35-emulated.cfg         |   0
 docs/{ => config}/q35-virtio-graphical.cfg |   0
 docs/{ => config}/q35-virtio-serial.cfg    |   0
 docs/{ => devel}/atomics.txt               |   0
 docs/{ => devel}/bitmaps.md                |   0
 docs/{ => devel}/blkdebug.txt              |   0
 docs/{ => devel}/blkverify.txt             |   0
 docs/{ => devel}/build-system.txt          |   0
 docs/{ => devel}/lockcnt.txt               |   0
 docs/{ => devel}/memory.txt                |   0
 docs/{ => devel}/migration.txt             |   0
 docs/{ => devel}/multi-thread-tcg.txt      |   0
 docs/{ => devel}/multiple-iothreads.txt    |   0
 docs/{ => devel}/qapi-code-gen.txt         |   0
 docs/{ => devel}/rcu.txt                   |   0
 docs/{ => devel}/tracing.txt               |   0
 docs/{ => devel}/virtio-migration.txt      |   0
 docs/{ => devel}/writing-qmp-commands.txt  |   0
 docs/{ => spin}/aio_notify.promela         |   0
 docs/{ => spin}/aio_notify_accept.promela  |   0
 docs/{ => spin}/aio_notify_bug.promela     |   0
 docs/{ => spin}/tcg-exclusive.promela      |   0
 docs/{ => spin}/win32-qemu-event.promela   |   0
 exec.c                                     |  13 +-
 gdb-xml/i386-32bit-sse.xml                 |  52 ++
 gdb-xml/i386-32bit.xml                     |  14 +
 gdb-xml/i386-64bit-sse.xml                 |  60 ++
 gdb-xml/i386-64bit.xml                     |  14 +
 hw/i386/kvm/clock.c                        |   3 +
 hw/misc/edu.c                              |  12 +-
 hw/pci/msix.c                              |  11 +-
 hw/pci/trace-events                        |   3 +
 hw/scsi/Makefile.objs                      |   1 +
 hw/scsi/vhost-scsi-common.c                |   1 -
 hw/scsi/vhost-user-scsi.c                  | 210 +++++++
 hw/scsi/virtio-scsi.c                      |   3 +
 hw/timer/mc146818rtc.c                     | 203 ++++---
 hw/virtio/virtio-pci.c                     |  58 ++
 hw/virtio/virtio-pci.h                     |  11 +
 include/block/nbd.h                        |   8 +-
 include/hw/timer/mc146818rtc_regs.h        |  20 +
 include/hw/virtio/vhost-user-scsi.h        |  35 ++
 include/hw/virtio/virtio-scsi.h            |   2 +
 kvm-all.c                                  |   8 +-
 nbd/client.c                               | 125 ++--
 nbd/common.c                               |  23 +-
 nbd/nbd-internal.h                         |  40 +-
 nbd/server.c                               | 100 ++--
 pc-bios/linuxboot_dma.bin                  | Bin 1536 -> 1536 bytes
 pc-bios/optionrom/Makefile                 |   1 +
 qemu-nbd.c                                 |   5 +-
 target/i386/arch_memory_mapping.c          |  18 +-
 target/i386/cpu.c                          |  23 +-
 target/i386/cpu.h                          |  20 +-
 target/i386/helper.c                       |  96 ++--
 target/i386/kvm.c                          |  36 +-
 target/i386/machine.c                      |   4 -
 target/i386/smm_helper.c                   |  18 -
 target/i386/translate.c                    |  12 +
 tests/qemu-iotests/083.out                 |   2 +
 tests/rtc-test.c                           |  49 ++
 trace-events                               |   3 +-
 util/oslib-posix.c                         |   4 +-
 util/qemu-sockets.c                        |  68 ++-
 78 files changed, 1952 insertions(+), 392 deletions(-)
 create mode 100644 contrib/vhost-user-scsi/Makefile.objs
 create mode 100644 contrib/vhost-user-scsi/vhost-user-scsi.c
 rename docs/{ => config}/ich9-ehci-uhci.cfg (100%)
 rename docs/{ => config}/mach-virt-graphical.cfg (100%)
 rename docs/{ => config}/mach-virt-serial.cfg (100%)
 rename docs/{ => config}/q35-emulated.cfg (100%)
 rename docs/{ => config}/q35-virtio-graphical.cfg (100%)
 rename docs/{ => config}/q35-virtio-serial.cfg (100%)
 rename docs/{ => devel}/atomics.txt (100%)
 rename docs/{ => devel}/bitmaps.md (100%)
 rename docs/{ => devel}/blkdebug.txt (100%)
 rename docs/{ => devel}/blkverify.txt (100%)
 rename docs/{ => devel}/build-system.txt (100%)
 rename docs/{ => devel}/lockcnt.txt (100%)
 rename docs/{ => devel}/memory.txt (100%)
 rename docs/{ => devel}/migration.txt (100%)
 rename docs/{ => devel}/multi-thread-tcg.txt (100%)
 rename docs/{ => devel}/multiple-iothreads.txt (100%)
 rename docs/{ => devel}/qapi-code-gen.txt (100%)
 rename docs/{ => devel}/rcu.txt (100%)
 rename docs/{ => devel}/tracing.txt (100%)
 rename docs/{ => devel}/virtio-migration.txt (100%)
 rename docs/{ => devel}/writing-qmp-commands.txt (100%)
 rename docs/{ => spin}/aio_notify.promela (100%)
 rename docs/{ => spin}/aio_notify_accept.promela (100%)
 rename docs/{ => spin}/aio_notify_bug.promela (100%)
 rename docs/{ => spin}/tcg-exclusive.promela (100%)
 rename docs/{ => spin}/win32-qemu-event.promela (100%)
 create mode 100644 gdb-xml/i386-32bit-sse.xml
 create mode 100644 gdb-xml/i386-32bit.xml
 create mode 100644 gdb-xml/i386-64bit-sse.xml
 create mode 100644 gdb-xml/i386-64bit.xml
 create mode 100644 hw/scsi/vhost-user-scsi.c
 create mode 100644 include/hw/virtio/vhost-user-scsi.h
-- 
2.13.0

^ permalink raw reply	[flat|nested] 16+ messages in thread
* [Qemu-devel] [PULL v3 00/33] Misc patches for 2017-06-01
@ 2017-06-06 14:02 Paolo Bonzini
  2017-06-06 14:02 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini
  0 siblings, 1 reply; 16+ messages in thread
From: Paolo Bonzini @ 2017-06-06 14:02 UTC (permalink / raw)
  To: qemu-devel

The following changes since commit 70f31414e71250c6049a46851372ee6ea76f40dd:

  Merge remote-tracking branch 'remotes/ehabkost/tags/numa-pull-request' into staging (2017-06-01 10:58:47 +0100)

are available in the git repository at:

  git://github.com/bonzini/qemu.git tags/for-upstream

for you to fetch changes up to 0c5029c963dbce627d75cd0267594224c89a6479:

  Merge tag 'tags/for-upstream' into HEAD

----------------------------------------------------------------
* virtio-scsi use-after-free fix (Fam)
* vhost-user-scsi support (Felipe)
* SMM fixes and improvements for TCG (myself, Mihail)
* irqchip and AddressSpaceDispatch cleanups and fixes (Peter)
* Coverity fix (Stefano)
* NBD cleanups and fixes (Vladimir, Eric, myself)
* RTC accuracy improvements and code cleanups (Guangrong+Yunfang)
* socket error reporting improvement (Daniel)
* GDB XML description for SSE registers (Abdallah)
* kvmclock update fix (Denis)
* SMM memory savings (Gonglei)
* -cpu 486 fix (Paolo)
* various bugfixes (Roman, Peter, myself, Thomas)
* rtc-test improvement (Guangrong)
* migration throttling fix (Felipe)

----------------------------------------------------------------
Dropped Peter's "exec: fix address_space_get_iotlb_entry page mask" at his
request, fixed vhost-user-scsi.

Abdallah Bouassida (1):
      target/i386: Add GDB XML description for SSE registers

Daniel P. Berrange (1):
      sockets: improve error reporting if UNIX socket path is too long

Denis Plotnikov (1):
      kvmclock: update system_time_msr address forcibly

Eric Blake (1):
      nbd: Fully initialize client in case of failed negotiation

Fam Zheng (1):
      virtio-scsi: Unset hotplug handler when unrealize

Felipe Franciosi (3):
      vhost-user-scsi: Introduce vhost-user-scsi host device
      vhost-user-scsi: Introduce a vhost-user-scsi sample application
      cpus: reset throttle_thread_scheduled after sleep

Gonglei (1):
      kvm: don't register smram_listener when smm is off

Mihail Abakumov (1):
      i386: fix read/write cr with icount option

Paolo Bonzini (5):
      target/i386: enable A20 automatically in system management mode
      target/i386: use multiple CPU AddressSpaces
      linuxboot_dma: compile for i486
      edu: fix memory leak on msi_broken platforms
      nbd: make it thread-safe, fix qcow2 over nbd

Peter Xu (4):
      kvm: irqchip: trace changes on msi add/remove
      msix: trace control bit write op
      kvm: irqchip: skip update msi when disabled
      exec: simplify phys_page_find() params

Roman Pen (1):
      i386/kvm: do not zero out segment flags if segment is unusable or not present

Stefano Stabellini (1):
      Check the return value of fcntl in qemu_set_cloexec

Tai Yunfang (1):
      mc146818rtc: precisely count the clock for periodic timer

Thomas Huth (1):
      hw/core: nmi.c can be compiled as common-obj nowadays

Vladimir Sementsov-Ogievskiy (5):
      nbd: strict nbd_wr_syncv
      nbd: read_sync and friends: return 0 on success
      nbd: add errp parameter to nbd_wr_syncv()
      nbd: add errp to read_sync, write_sync and drop_sync
      nbd/client.c: use errp instead of LOG

Xiao Guangrong (5):
      mc146818rtc: update periodic timer only if it is needed
      mc146818rtc: ensure LOST_TICK_POLICY_SLEW is only enabled on TARGET_I386
      mc146818rtc: drop unnecessary '#ifdef TARGET_I386'
      mc146818rtc: embrace all x86 specific code
      qtest: add rtc periodic timer test

 .gitignore                                |   1 +
 Makefile                                  |   3 +
 Makefile.objs                             |   4 +
 block/nbd-client.c                        |  41 +-
 configure                                 |   4 +-
 contrib/libvhost-user/libvhost-user.h     |  11 +-
 contrib/vhost-user-scsi/Makefile.objs     |   1 +
 contrib/vhost-user-scsi/vhost-user-scsi.c | 886 ++++++++++++++++++++++++++++++
 cpus.c                                    |   2 +-
 default-configs/pci.mak                   |   1 +
 default-configs/s390x-softmmu.mak         |   1 +
 exec.c                                    |  13 +-
 gdb-xml/i386-32bit-sse.xml                |  52 ++
 gdb-xml/i386-32bit.xml                    |  14 +
 gdb-xml/i386-64bit-sse.xml                |  60 ++
 gdb-xml/i386-64bit.xml                    |  14 +
 hw/core/Makefile.objs                     |   2 +-
 hw/i386/kvm/clock.c                       |   3 +
 hw/misc/edu.c                             |  12 +-
 hw/pci/msix.c                             |  11 +-
 hw/pci/trace-events                       |   3 +
 hw/scsi/Makefile.objs                     |   1 +
 hw/scsi/vhost-scsi-common.c               |   1 -
 hw/scsi/vhost-user-scsi.c                 | 211 +++++++
 hw/scsi/virtio-scsi.c                     |   3 +
 hw/timer/mc146818rtc.c                    | 203 ++++---
 hw/virtio/virtio-pci.c                    |  58 ++
 hw/virtio/virtio-pci.h                    |  11 +
 include/block/nbd.h                       |   8 +-
 include/hw/timer/mc146818rtc_regs.h       |  20 +
 include/hw/virtio/vhost-user-scsi.h       |  35 ++
 include/hw/virtio/virtio-scsi.h           |   2 +
 kvm-all.c                                 |   8 +-
 nbd/client.c                              | 125 ++---
 nbd/common.c                              |  23 +-
 nbd/nbd-internal.h                        |  40 +-
 nbd/server.c                              | 100 ++--
 pc-bios/linuxboot_dma.bin                 | Bin 1536 -> 1536 bytes
 pc-bios/optionrom/Makefile                |   1 +
 qemu-nbd.c                                |   5 +-
 target/i386/arch_memory_mapping.c         |  18 +-
 target/i386/cpu.c                         |  23 +-
 target/i386/cpu.h                         |  20 +-
 target/i386/helper.c                      |  96 ++--
 target/i386/kvm.c                         |  36 +-
 target/i386/machine.c                     |   4 -
 target/i386/smm_helper.c                  |  18 -
 target/i386/translate.c                   |  12 +
 tests/qemu-iotests/083.out                |   2 +
 tests/rtc-test.c                          |  49 ++
 trace-events                              |   3 +-
 util/oslib-posix.c                        |   4 +-
 util/qemu-sockets.c                       |  68 ++-
 53 files changed, 1954 insertions(+), 393 deletions(-)
 create mode 100644 contrib/vhost-user-scsi/Makefile.objs
 create mode 100644 contrib/vhost-user-scsi/vhost-user-scsi.c
 create mode 100644 gdb-xml/i386-32bit-sse.xml
 create mode 100644 gdb-xml/i386-32bit.xml
 create mode 100644 gdb-xml/i386-64bit-sse.xml
 create mode 100644 gdb-xml/i386-64bit.xml
 create mode 100644 hw/scsi/vhost-user-scsi.c
 create mode 100644 include/hw/virtio/vhost-user-scsi.h
-- 
2.13.0

diff --cc hw/scsi/vhost-user-scsi.c
index 0000000000,d27b2ada8e..c8fdf33074
mode 000000,100644..100644
--- a/hw/scsi/vhost-user-scsi.c
+++ b/hw/scsi/vhost-user-scsi.c
@@@ -1,0 -1,211 +1,211 @@@
+ /*
+  * vhost-user-scsi host device
+  *
+  * Copyright (c) 2016 Nutanix Inc. All rights reserved.
+  *
+  * Author:
+  *  Felipe Franciosi <felipe@nutanix.com>
+  *
+  * This work is largely based on the "vhost-scsi" implementation by:
+  *  Stefan Hajnoczi    <stefanha@linux.vnet.ibm.com>
+  *  Nicholas Bellinger <nab@risingtidesystems.com>
+  *
+  * This work is licensed under the terms of the GNU LGPL, version 2 or later.
+  * See the COPYING.LIB file in the top-level directory.
+  *
+  */
+ 
+ #include "qemu/osdep.h"
+ #include "migration/vmstate.h"
+ #include "qapi/error.h"
+ #include "qemu/error-report.h"
+ #include "qemu/typedefs.h"
+ #include "qom/object.h"
+ #include "hw/fw-path-provider.h"
+ #include "hw/qdev-core.h"
+ #include "hw/virtio/vhost.h"
+ #include "hw/virtio/vhost-backend.h"
+ #include "hw/virtio/vhost-user-scsi.h"
+ #include "hw/virtio/virtio.h"
+ #include "hw/virtio/virtio-access.h"
 -#include "sysemu/char.h"
++#include "chardev/char-fe.h"
+ 
+ /* Features supported by the host application */
+ static const int user_feature_bits[] = {
+     VIRTIO_F_NOTIFY_ON_EMPTY,
+     VIRTIO_RING_F_INDIRECT_DESC,
+     VIRTIO_RING_F_EVENT_IDX,
+     VIRTIO_SCSI_F_HOTPLUG,
+     VHOST_INVALID_FEATURE_BIT
+ };
+ 
+ static void vhost_user_scsi_set_status(VirtIODevice *vdev, uint8_t status)
+ {
+     VHostUserSCSI *s = (VHostUserSCSI *)vdev;
+     VHostSCSICommon *vsc = VHOST_SCSI_COMMON(s);
+     bool start = (status & VIRTIO_CONFIG_S_DRIVER_OK) && vdev->vm_running;
+ 
+     if (vsc->dev.started == start) {
+         return;
+     }
+ 
+     if (start) {
+         int ret;
+ 
+         ret = vhost_scsi_common_start(vsc);
+         if (ret < 0) {
+             error_report("unable to start vhost-user-scsi: %s", strerror(-ret));
+             exit(1);
+         }
+     } else {
+         vhost_scsi_common_stop(vsc);
+     }
+ }
+ 
+ static void vhost_dummy_handle_output(VirtIODevice *vdev, VirtQueue *vq)
+ {
+ }
+ 
+ static void vhost_user_scsi_save(QEMUFile *f, void *opaque)
+ {
+     VirtIODevice *vdev = VIRTIO_DEVICE(opaque);
+     virtio_save(vdev, f);
+ }
+ 
+ static int vhost_user_scsi_load(QEMUFile *f, void *opaque, int version_id)
+ {
+     VirtIODevice *vdev = VIRTIO_DEVICE(opaque);
+     return virtio_load(vdev, f, version_id);
+ }
+ 
+ static void vhost_user_scsi_realize(DeviceState *dev, Error **errp)
+ {
+     VirtIOSCSICommon *vs = VIRTIO_SCSI_COMMON(dev);
+     VHostUserSCSI *s = VHOST_USER_SCSI(dev);
+     VHostSCSICommon *vsc = VHOST_SCSI_COMMON(s);
+     static int vhost_user_scsi_id;
+     Error *err = NULL;
+     int ret;
+ 
+     if (!vs->conf.chardev.chr) {
+         error_setg(errp, "vhost-user-scsi: missing chardev");
+         return;
+     }
+ 
+     virtio_scsi_common_realize(dev, vhost_dummy_handle_output,
+                                vhost_dummy_handle_output,
+                                vhost_dummy_handle_output, &err);
+     if (err != NULL) {
+         error_propagate(errp, err);
+         return;
+     }
+ 
+     vsc->dev.nvqs = 2 + vs->conf.num_queues;
+     vsc->dev.vqs = g_new(struct vhost_virtqueue, vsc->dev.nvqs);
+     vsc->dev.vq_index = 0;
+     vsc->dev.backend_features = 0;
+ 
+     ret = vhost_dev_init(&vsc->dev, (void *)&vs->conf.chardev,
+                          VHOST_BACKEND_TYPE_USER, 0);
+     if (ret < 0) {
+         error_setg(errp, "vhost-user-scsi: vhost initialization failed: %s",
+                    strerror(-ret));
+         return;
+     }
+ 
+     /* Channel and lun both are 0 for bootable vhost-user-scsi disk */
+     vsc->channel = 0;
+     vsc->lun = 0;
+     vsc->target = vs->conf.boot_tpgt;
+ 
+     register_savevm(dev, "vhost-user-scsi", vhost_user_scsi_id++, 1,
+                     vhost_user_scsi_save, vhost_user_scsi_load, s);
+ }
+ 
+ static void vhost_user_scsi_unrealize(DeviceState *dev, Error **errp)
+ {
+     VirtIODevice *vdev = VIRTIO_DEVICE(dev);
+     VHostUserSCSI *s = VHOST_USER_SCSI(dev);
+     VHostSCSICommon *vsc = VHOST_SCSI_COMMON(s);
+ 
+     /* This will stop the vhost backend. */
+     vhost_user_scsi_set_status(vdev, 0);
+ 
+     vhost_dev_cleanup(&vsc->dev);
+     g_free(vsc->dev.vqs);
+ 
+     virtio_scsi_common_unrealize(dev, errp);
+ }
+ 
+ static uint64_t vhost_user_scsi_get_features(VirtIODevice *vdev,
+                                              uint64_t features, Error **errp)
+ {
+     VHostUserSCSI *s = VHOST_USER_SCSI(vdev);
+ 
+     /* Turn on predefined features supported by this device */
+     features |= s->host_features;
+ 
+     return vhost_scsi_common_get_features(vdev, features, errp);
+ }
+ 
+ static Property vhost_user_scsi_properties[] = {
+     DEFINE_PROP_CHR("chardev", VirtIOSCSICommon, conf.chardev),
+     DEFINE_PROP_UINT32("boot_tpgt", VirtIOSCSICommon, conf.boot_tpgt, 0),
+     DEFINE_PROP_UINT32("num_queues", VirtIOSCSICommon, conf.num_queues, 1),
+     DEFINE_PROP_UINT32("max_sectors", VirtIOSCSICommon, conf.max_sectors,
+                        0xFFFF),
+     DEFINE_PROP_UINT32("cmd_per_lun", VirtIOSCSICommon, conf.cmd_per_lun, 128),
+     DEFINE_PROP_BIT64("hotplug", VHostUserSCSI, host_features,
+                                                 VIRTIO_SCSI_F_HOTPLUG,
+                                                 true),
+     DEFINE_PROP_BIT64("param_change", VHostUserSCSI, host_features,
+                                                      VIRTIO_SCSI_F_CHANGE,
+                                                      true),
+     DEFINE_PROP_END_OF_LIST(),
+ };
+ 
+ static void vhost_user_scsi_class_init(ObjectClass *klass, void *data)
+ {
+     DeviceClass *dc = DEVICE_CLASS(klass);
+     VirtioDeviceClass *vdc = VIRTIO_DEVICE_CLASS(klass);
+     FWPathProviderClass *fwc = FW_PATH_PROVIDER_CLASS(klass);
+ 
+     dc->props = vhost_user_scsi_properties;
+     set_bit(DEVICE_CATEGORY_STORAGE, dc->categories);
+     vdc->realize = vhost_user_scsi_realize;
+     vdc->unrealize = vhost_user_scsi_unrealize;
+     vdc->get_features = vhost_user_scsi_get_features;
+     vdc->set_config = vhost_scsi_common_set_config;
+     vdc->set_status = vhost_user_scsi_set_status;
+     fwc->get_dev_path = vhost_scsi_common_get_fw_dev_path;
+ }
+ 
+ static void vhost_user_scsi_instance_init(Object *obj)
+ {
+     VHostSCSICommon *vsc = VHOST_SCSI_COMMON(obj);
+ 
+     vsc->feature_bits = user_feature_bits;
+ 
+     /* Add the bootindex property for this object */
+     device_add_bootindex_property(obj, &vsc->bootindex, "bootindex", NULL,
+                                   DEVICE(vsc), NULL);
+ }
+ 
+ static const TypeInfo vhost_user_scsi_info = {
+     .name = TYPE_VHOST_USER_SCSI,
+     .parent = TYPE_VHOST_SCSI_COMMON,
+     .instance_size = sizeof(VHostUserSCSI),
+     .class_init = vhost_user_scsi_class_init,
+     .instance_init = vhost_user_scsi_instance_init,
+     .interfaces = (InterfaceInfo[]) {
+         { TYPE_FW_PATH_PROVIDER },
+         { }
+     },
+ };
+ 
+ static void virtio_register_types(void)
+ {
+     type_register_static(&vhost_user_scsi_info);
+ }
+ 
+ type_init(virtio_register_types)
diff --cc include/hw/virtio/virtio-scsi.h
index eac2013ddd,ca77a4263d..de6ae5a9f6
--- a/include/hw/virtio/virtio-scsi.h
+++ b/include/hw/virtio/virtio-scsi.h
@@@ -21,6 -21,7 +21,7 @@@
  #include "hw/virtio/virtio.h"
  #include "hw/pci/pci.h"
  #include "hw/scsi/scsi.h"
 -#include "sysemu/char.h"
++#include "chardev/char-fe.h"
  #include "sysemu/iothread.h"
  
  #define TYPE_VIRTIO_SCSI_COMMON "virtio-scsi-common"

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2017-06-08 13:33 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-07 15:28 [Qemu-devel] [PULL v5 00/33] Misc patches for 2017-06-01 Paolo Bonzini
2017-06-07 15:28 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini
2017-06-07 15:37   ` Peter Maydell
2017-06-07 15:39     ` Felipe Franciosi
2017-06-07 15:47       ` Peter Maydell
2017-06-07 18:26         ` Felipe Franciosi
2017-06-07 16:21       ` Paolo Bonzini
2017-06-07 16:26         ` Felipe Franciosi
2017-06-07 18:22           ` Paolo Bonzini
2017-06-07 18:30             ` Michael S. Tsirkin
2017-06-07 18:56               ` Paolo Bonzini
2017-06-08  0:31                 ` Michael S. Tsirkin
2017-06-08 11:05                   ` Felipe Franciosi
2017-06-08 13:33                     ` Paolo Bonzini
  -- strict thread matches above, loose matches on Subject: below --
2017-06-07 13:55 [Qemu-devel] [PULL v4 00/33] Misc patches for 2017-06-01 Paolo Bonzini
2017-06-07 13:55 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini
2017-06-06 14:02 [Qemu-devel] [PULL v3 00/33] Misc patches for 2017-06-01 Paolo Bonzini
2017-06-06 14:02 ` [Qemu-devel] [PULL 18/33] vhost-user-scsi: Introduce vhost-user-scsi host device Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.