[Qemu-devel] [PULL 20/33] mos6522: move timer frequency initialisation to mos6522_reset

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland The 6522 VIA timer frequency cannot be set by altering registers within the device itself and hence it is a fixed property of the machine. Move the initialisation of the timer frequency to the mos6522 reset function and ensure that any subclasses always call the parent res

[Qemu-devel] [PULL 09/33] target/ppc: Allow privileged access to SPR_PCR

2018-06-11 Thread David Gibson
From: Joel Stanley The powerpc Linux kernel[1] and skiboot firmware[2] recently gained changes that cause the Processor Compatibility Register (PCR) SPR to be cleared. These changes cause Linux to fail to boot on the Qemu powernv machine with an error: Trying to write privileged spr 338 (0x152

[Qemu-devel] [PULL 30/33] spapr: handle cpu core unplug via hotplug handler chain

2018-06-11 Thread David Gibson
From: David Hildenbrand Factor out cpu core unplug into separate function from spapr_core_release(). Then use generic hotplug_handler_unplug() to trigger cpu core unplug, which would call spapr_machine_device_unplug() -> spapr_core_unplug() in the end. This way unplug operation is not buried in

[Qemu-devel] [PULL 18/33] mos6522: fix vmstate_mos6522_timer version in vmstate_mos6522

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland This was accidentally introduced when extracting the 6522 VIA functionality from the CUDA device, and prevents loadvm from completing successfully. Signed-off-by: Mark Cave-Ayland Signed-off-by: David Gibson --- hw/misc/mos6522.c | 2 +- 1 file changed, 1 insertion(+),

[Qemu-devel] [PULL 16/33] ppc: remove obsolete macio_init() definition from mac.h

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland Commits b6712ea391 removed the macio_init() function but missed the header prototype in mac.h. Remove it since it is no longer needed. Signed-off-by: Mark Cave-Ayland Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: David Gibson --- hw/ppc/mac.h | 3 --- 1 file chang

[Qemu-devel] [PULL 08/33] target/ppc: Factor out the parsing in kvmppc_get_cpu_characteristics()

2018-06-11 Thread David Gibson
From: Suraj Jitindar Singh Factor out the parsing of struct kvm_ppc_cpu_char in kvmppc_get_cpu_characteristics() into a separate function for each cap for simplicity. Signed-off-by: Suraj Jitindar Singh Signed-off-by: David Gibson --- target/ppc/kvm.c | 59

[Qemu-devel] [PULL 12/33] MAINTAINERS: Add an entry for the MacIO device headers

2018-06-11 Thread David Gibson
From: Philippe Mathieu-Daudé Missed while moved in 7092e84d42b. Signed-off-by: Philippe Mathieu-Daudé Signed-off-by: David Gibson --- MAINTAINERS | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index a40f558694..5286a1519c 100644 --- a/MAINTAINE

[Qemu-devel] [PULL 13/33] MAINTAINERS: Add entries for the MOS6522 VIA device

2018-06-11 Thread David Gibson
From: Philippe Mathieu-Daudé Introduced in 51f233ec92c. Signed-off-by: Philippe Mathieu-Daudé Signed-off-by: David Gibson --- MAINTAINERS | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 5286a1519c..8a94517e9e 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@

[Qemu-devel] [PULL 10/33] spapr/vio: deprecate the "irq" property

2018-06-11 Thread David Gibson
From: Cédric Le Goater VIO devices have an "irq" property that can be used by the sPAPR IRQ allocator as an IRQ number hint. But it is not set in QEMU nor in libvirt. It brings unnecessary complexity to the underlying layers managing the IRQ number space and it is in full opposition with the new

[Qemu-devel] [PULL 05/33] target/ppc: Use proper logging function for possible guest errors

2018-06-11 Thread David Gibson
From: Thomas Huth fprintf() and qemu_log_separate() are frowned upon these days for printing logging information in QEMU. Accessing the wrong SPRs indicates wrong guest behaviour in most cases, and we've got a proper way to log such situations, which is the qemu_log_mask(LOG_GUEST_ERROR, ...) fun

[Qemu-devel] [PULL 07/33] prep: fix keyboard for the 40p machine

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland Commit 72d3d8f052 "hw/isa/superio: Add a keyboard/mouse controller (8042)" added an 8042 keyboard device to the PC87312 superio device to replace that being used by the prep machine. Unfortunately this commit didn't do the same for the 40p machine which broke the keyboard

[Qemu-devel] [PULL 04/33] hw/ppc/spapr_drc: Replace error_setg(&error_abort) by error_report() + abort()

2018-06-11 Thread David Gibson
From: Philippe Mathieu-Daudé Use error_report() + abort() instead of error_setg(&error_abort), as suggested by the "qapi/error.h" documentation: Please don't error_setg(&error_fatal, ...), use error_report() and exit(), because that's more obvious. Likewise, don't error_setg(&error_a

[Qemu-devel] [PULL 03/33] uninorth: remove token register from uninorth device

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland >From observation of various OS sources it can be seen that the token register introduced in 4e46dcdbd3 "PPC: Newworld: Add uninorth token register" is not required, since the only register currently implemented is the uninorth hardware version which is read-only. Remove t

[Qemu-devel] [PULL 06/33] 40p: remove pci_allow_0_address = true from 40p machine class

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland The Linux sandalfoot zImage has an initialisation process which resets the VGA controller by setting all the BAR addresses to zero to access the VGA ioports at their legacy addresses. Unfortunately setting the framebuffer BAR to address 0 makes the framebuffer memory overl

[Qemu-devel] [PULL 00/33] ppc-for-3.0 queue 20180612

2018-06-11 Thread David Gibson
The following changes since commit 2afc4e3df80d947dd1bd42ce80278f591b35c74a: Merge remote-tracking branch 'remotes/maxreitz/tags/pull-block-2018-06-11' into staging (2018-06-11 15:31:20 +0100) are available in the Git repository at: git://github.com/dgibson/qemu.git tags/ppc-for-3.0-2018061

[Qemu-devel] [PULL 02/33] macio: add trace-events to timer device

2018-06-11 Thread David Gibson
From: Mark Cave-Ayland Signed-off-by: Mark Cave-Ayland Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: David Gibson --- hw/misc/macio/macio.c | 3 +++ hw/misc/macio/trace-events | 4 2 files changed, 7 insertions(+) diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c inde

[Qemu-devel] [PULL 11/33] osdep: powerpc64 align memory to allow 2MB radix THP page tables

2018-06-11 Thread David Gibson
From: Nicholas Piggin This allows KVM with the Book3S radix MMU mode to take advantage of THP and install larger pages in the partition scope page tables (the host translation). Signed-off-by: Nicholas Piggin Signed-off-by: David Gibson --- include/qemu/osdep.h | 3 ++- 1 file changed, 2 inse

[Qemu-devel] [PULL 01/33] ppc440_pcix: Fix a typo in setting a register (Coverity CID1390577)

2018-06-11 Thread David Gibson
From: BALATON Zoltan Signed-off-by: BALATON Zoltan Signed-off-by: David Gibson --- hw/ppc/ppc440_pcix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/ppc/ppc440_pcix.c b/hw/ppc/ppc440_pcix.c index b1307e6477..d8af04b70f 100644 --- a/hw/ppc/ppc440_pcix.c +++ b/hw/ppc/pp

Re: [Qemu-devel] [PATCH v3 5/7] hmp: Add info commands for preconfig

2018-06-11 Thread Markus Armbruster
"Dr. David Alan Gilbert" writes: > * Markus Armbruster (arm...@redhat.com) wrote: >> "Dr. David Alan Gilbert (git)" writes: >> >> > From: "Dr. David Alan Gilbert" >> > >> > Allow a bunch of the info commands to be used in preconfig. >> > >> > version, chardev, name, uuid,memdev, iothreads >> >

Re: [Qemu-devel] Is there a way to package QEMU binaries?

2018-06-11 Thread Fam Zheng
On Tue, 06/12 14:24, Peter Xu wrote: > Hi, > > For example, I wanted to compile QEMU once and install it on multiple > systems. What would be the suggested way to do so? > > Is there something similar to "make bin-rpmpkg" for Linux? > > Thanks in advance, No. The big question is the libraries.

[Qemu-devel] [PATCH 7/7 V7] migration/ram: ensure write persistence on loading all data to PMEM.

2018-06-11 Thread junyan . he
From: Junyan He Because we need to make sure the pmem kind memory data is synced after migration, we choose to call pmem_persist() when the migration finish. This will make sure the data of pmem is safe and will not lose if power is off. Signed-off-by: Junyan He Reviewed-by: Stefan Hajnoczi --

[Qemu-devel] [PATCH 6/7 V7] migration/ram: Add check and info message to nvdimm post copy.

2018-06-11 Thread junyan . he
From: Junyan He The nvdimm kind memory does not support post copy now. We disable post copy if we have nvdimm memory and print some log hint to user. Signed-off-by: Junyan He Reviewed-by: Stefan Hajnoczi --- migration/ram.c | 9 + 1 file changed, 9 insertions(+) diff --git a/migratio

[Qemu-devel] [PATCH 5/7 V7] mem/nvdimm: ensure write persistence to PMEM in label emulation

2018-06-11 Thread junyan . he
From: Junyan He Guest writes to vNVDIMM labels are intercepted and performed on the backend by QEMU. When the backend is a real persistent memort, QEMU needs to take proper operations to ensure its write persistence on the persistent memory. Otherwise, a host power failure may result in the loss

[Qemu-devel] [PATCH 0/7 V7] nvdimm: guarantee persistence of QEMU writes to persistent memory

2018-06-11 Thread junyan . he
From: Junyan He QEMU writes to vNVDIMM backends in the vNVDIMM label emulation and live migration. If the backend is on the persistent memory, QEMU needs to take proper operations to ensure its writes persistent on the persistent memory. Otherwise, a host power failure may result in the loss the

[Qemu-devel] [PATCH 4/7 V7] configure: add libpmem support

2018-06-11 Thread junyan . he
From: Junyan He Add a pair of configure options --{enable,disable}-libpmem to control whether QEMU is compiled with PMDK libpmem [1]. QEMU may write to the host persistent memory (e.g. in vNVDIMM label emulation and live migration), so it must take the proper operations to ensure the persistence

[Qemu-devel] [PATCH 3/7 V7] hostmem-file: add the 'pmem' option

2018-06-11 Thread junyan . he
From: Junyan He When QEMU emulates vNVDIMM labels and migrates vNVDIMM devices, it needs to know whether the backend storage is a real persistent memory, in order to decide whether special operations should be performed to ensure the data persistence. This boolean option 'pmem' allows users to s

[Qemu-devel] [PATCH 2/7 V7] memory, exec: switch file ram allocation functions to 'flags' parameters

2018-06-11 Thread junyan . he
From: Junyan He As more flag parameters besides the existing 'share' are going to be added to following functions memory_region_init_ram_from_file qemu_ram_alloc_from_fd qemu_ram_alloc_from_file let's switch them to use the 'flags' parameters so as to ease future flag additions. The existi

[Qemu-devel] [PATCH 1/7 V7] memory, exec: Expose all memory block related flags.

2018-06-11 Thread junyan . he
From: Junyan He We need to use these flags in other files rather than just in exec.c, For example, RAM_SHARED should be used when create a ram block from file. We expose them the exec/memory.h Signed-off-by: Junyan He Reviewed-by: Stefan Hajnoczi --- exec.c| 20 ---

[Qemu-devel] Is there a way to package QEMU binaries?

2018-06-11 Thread Peter Xu
Hi, For example, I wanted to compile QEMU once and install it on multiple systems. What would be the suggested way to do so? Is there something similar to "make bin-rpmpkg" for Linux? Thanks in advance, -- Peter Xu

Re: [Qemu-devel] [qemu-s390x] [PATCH v2 0/4] pc-bios/s390-ccw: Allow network booting via pxelinux.cfg

2018-06-11 Thread Thomas Huth
On 11.06.2018 14:03, Viktor VM Mihajlovski wrote: > On 11.06.2018 13:12, Thomas Huth wrote: >> On 11.06.2018 11:08, Viktor VM Mihajlovski wrote: >>> On 07.06.2018 14:22, Thomas Huth wrote: This patch series adds pxelinux.cfg-style network booting to the s390-ccw firmware. The core pxelinu

Re: [Qemu-devel] [PATCH v2] pnv: add a physical mapping array describing MMIO ranges in each chip

2018-06-11 Thread Cédric Le Goater
On 06/12/2018 07:58 AM, David Gibson wrote: > On Wed, Jun 06, 2018 at 09:04:10AM +0200, Cédric Le Goater wrote: >> On 06/06/2018 08:39 AM, David Gibson wrote: >>> On Wed, May 30, 2018 at 12:07:54PM +0200, Cédric Le Goater wrote: Based on previous work done in skiboot, the physical mapping arra

Re: [Qemu-devel] [PATCH v2] Show values and description when using "qom-list"

2018-06-11 Thread Markus Armbruster
Andreas Färber writes: > Am 08.06.2018 um 11:41 schrieb Dr. David Alan Gilbert: >> * Andreas Färber (afaer...@suse.de) wrote: >>> Am 01.06.2018 um 17:39 schrieb Ricardo Perez Blanco: For debugging purposes it is very useful to: - See the description of the field. This information is al

Re: [Qemu-devel] [PATCH v2] pnv: add a physical mapping array describing MMIO ranges in each chip

2018-06-11 Thread David Gibson
On Wed, Jun 06, 2018 at 09:04:10AM +0200, Cédric Le Goater wrote: > On 06/06/2018 08:39 AM, David Gibson wrote: > > On Wed, May 30, 2018 at 12:07:54PM +0200, Cédric Le Goater wrote: > >> Based on previous work done in skiboot, the physical mapping array > >> helps in calculating the MMIO ranges of

Re: [Qemu-devel] [PATCH] monitor: postpone monitor_qmp_cleanup_queues

2018-06-11 Thread Peter Xu
On Mon, Jun 11, 2018 at 05:45:49PM +0100, Stefan Hajnoczi wrote: > On Fri, Jun 08, 2018 at 10:18:25AM +0200, Markus Armbruster wrote: > > Stefan Hajnoczi writes: > > > On Fri, Jun 08, 2018 at 12:42:35PM +0800, Peter Xu wrote: > > >> On Thu, Jun 07, 2018 at 01:53:01PM +0200, Markus Armbruster wrote

Re: [Qemu-devel] [PATCH] loader: implement START_SEG_ADDR_RECORD

2018-06-11 Thread Su Hang
I do have time, the function mentioned in last comments isn't difficult to implement, but I wonder how to write corresponding qtest-case for cortex-m3. You know, becuase #current# QEMU doesn't surpport the cortex-m3 instruction, I don't know how to prove correctness of hex loader. For example, in

Re: [Qemu-devel] [RFC PATCH 1/1] nvdimm: let qemu requiring section alignment of pmem resource.

2018-06-11 Thread Zhang,Yi
On 一, 2018-06-11 at 19:55 -0700, Dan Williams wrote: > On Mon, Jun 11, 2018 at 9:26 AM, Stefan Hajnoczi > wrote: > > > > On Mon, Jun 11, 2018 at 06:54:25PM +0800, Zhang Yi wrote: > > > > > > Nvdimm driver use Memory hot-plug APIs to map it's pmem resource, > > > which at a section granularity. >

Re: [Qemu-devel] [PATCH v3 5/7] hmp: Add info commands for preconfig

2018-06-11 Thread Gerd Hoffmann
Hi, > > Now let's review the three commands: > > > > * Gerd, why does "info usbhost" have no QMP equivalent? Works only when running qemu directly, in the libvirt sandbox qemu hasn't the permissions needed to scan the host usb bus so that would be rather pointless ... cheers, Gerd

Re: [Qemu-devel] [PATCH 00/12] migration: improve multithreads for compression and decompression

2018-06-11 Thread Peter Xu
On Tue, Jun 12, 2018 at 11:19:14AM +0800, Xiao Guangrong wrote: > > > On 06/11/2018 04:00 PM, Peter Xu wrote: > > On Mon, Jun 04, 2018 at 05:55:08PM +0800, guangrong.x...@gmail.com wrote: > > > From: Xiao Guangrong > > > > > > Background > > > -- > > > Current implementation of compress

[Qemu-devel] [QEMU-PPC] [PATCH V2 2/2] ppc/spapr_caps: Don't disable cap_cfpc on POWER8 by default

2018-06-11 Thread Suraj Jitindar Singh
In default_caps_with_cpu() we set spapr_cap_cfpc to broken for POWER8 processors and before. Since we no longer require private l1d cache on POWER8 for this cap to be set to workaround change this to default to broken for POWER7 processors and before. Signed-off-by: Suraj Jitindar Singh Reviewed

[Qemu-devel] [QEMU-PPC] [PATCH V2 1/2] target/ppc: Don't require private l1d cache on POWER8 for cap_ppc_safe_cache

2018-06-11 Thread Suraj Jitindar Singh
For cap_ppc_safe_cache to be set to workaround, we require both a l1d cache flush instruction and private l1d cache. On POWER8 don't require private l1d cache. This means a guest on a POWER8 machine can make use of the cache flush workarounds. Signed-off-by: Suraj Jitindar Singh --- V1 -> V2:

Re: [Qemu-devel] [PATCH] qemu: Introduce VIRTIO_NET_F_STANDBY feature bit to virtio_net

2018-06-11 Thread Samudrala, Sridhar
On 6/11/2018 7:17 PM, Michael S. Tsirkin wrote: On Tue, Jun 12, 2018 at 09:54:44AM +0800, Jason Wang wrote: On 2018年06月12日 01:26, Michael S. Tsirkin wrote: On Mon, May 07, 2018 at 04:09:54PM -0700, Sridhar Samudrala wrote: This feature bit can be used by hypervisor to indicate virtio_net devi

Re: [Qemu-devel] [Qemu-block] [PATCH v2] util/async: avoid NULL pointer dereference

2018-06-11 Thread Jeff Cody
On Tue, Jun 12, 2018 at 07:26:25AM +0800, Jie Wang wrote: > if laio_init create linux_aio failed and return NULL, NULL pointer > dereference will occur when laio_attach_aio_context dereference > linux_aio in aio_get_linux_aio. Let's avoid it and report error. > > Signed-off-by: Jie Wang Reviewed

Re: [Qemu-devel] [PATCH 00/12] migration: improve multithreads for compression and decompression

2018-06-11 Thread Xiao Guangrong
On 06/11/2018 04:00 PM, Peter Xu wrote: On Mon, Jun 04, 2018 at 05:55:08PM +0800, guangrong.x...@gmail.com wrote: From: Xiao Guangrong Background -- Current implementation of compression and decompression are very hard to be enabled on productions. We noticed that too many wait-wake

Re: [Qemu-devel] [PATCH 01/12] migration: do not wait if no free thread

2018-06-11 Thread Peter Xu
On Tue, Jun 12, 2018 at 10:42:25AM +0800, Xiao Guangrong wrote: > > > On 06/11/2018 03:39 PM, Peter Xu wrote: > > On Mon, Jun 04, 2018 at 05:55:09PM +0800, guangrong.x...@gmail.com wrote: > > > From: Xiao Guangrong > > > > > > Instead of putting the main thread to sleep state to wait for > > >

Re: [Qemu-devel] [RFC PATCH 1/1] nvdimm: let qemu requiring section alignment of pmem resource.

2018-06-11 Thread Dan Williams
On Mon, Jun 11, 2018 at 9:26 AM, Stefan Hajnoczi wrote: > On Mon, Jun 11, 2018 at 06:54:25PM +0800, Zhang Yi wrote: >> Nvdimm driver use Memory hot-plug APIs to map it's pmem resource, >> which at a section granularity. >> >> When QEMU emulated the vNVDIMM device, decrease the label-storage, >> QE

Re: [Qemu-devel] [PATCH 01/12] migration: do not wait if no free thread

2018-06-11 Thread Xiao Guangrong
On 06/11/2018 03:39 PM, Peter Xu wrote: On Mon, Jun 04, 2018 at 05:55:09PM +0800, guangrong.x...@gmail.com wrote: From: Xiao Guangrong Instead of putting the main thread to sleep state to wait for free compression thread, we can directly post it out as normal page that reduces the latency a

Re: [Qemu-devel] [PATCH v1 11/11] pc-dimm: assign and verify the "slot" property during pre_plug

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:55PM +0200, David Hildenbrand wrote: > We can assign and verify the slot before realizing and trying to plug. > reading/writing the slot property should never change, so let's reduce > error handling a bit by using &error_abort. > > Signed-off-by: David Hildenbrand

[Qemu-devel] [PATCH v2] vhost-user: delete net client if necessary

2018-06-11 Thread linzhecheng
As qemu_new_net_client create new ncs but error happens later, ncs will be left in global net_clients list and we can't use them any more, so we need to cleanup them. Signed-off-by: linzhecheng diff --git a/net/vhost-user.c b/net/vhost-user.c index 608b837175..a39f9c9974 100644 --- a/net/vhost-u

Re: [Qemu-devel] [PULL 00/13] Python queue, 2018-06-11

2018-06-11 Thread no-reply
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180611174243.31070-1-ehabk...@redhat.com Subject: [Qemu-devel] [PULL 00/13] Python queue, 2018-06-11 === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --

Re: [Qemu-devel] [PATCH] qemu: Introduce VIRTIO_NET_F_STANDBY feature bit to virtio_net

2018-06-11 Thread Michael S. Tsirkin
On Tue, Jun 12, 2018 at 09:54:44AM +0800, Jason Wang wrote: > > > On 2018年06月12日 01:26, Michael S. Tsirkin wrote: > > On Mon, May 07, 2018 at 04:09:54PM -0700, Sridhar Samudrala wrote: > > > This feature bit can be used by hypervisor to indicate virtio_net device > > > to > > > act as a standby

Re: [Qemu-devel] question: a dead loop in qemu when do blockJobAbort and vm suspend coinstantaneously

2018-06-11 Thread l00284672
As my previos reply said, the mirror_exit is done in aio_poll(qemu_get_aio_context(), true).  In mirror_exit, the bs willl be free by bdrv_unref.  So it will make a Null pointer access in the follow-up procedure in bdrv_set_aio_context. So we should add bdrv_ref for it to avoid bs freed in mirror_

Re: [Qemu-devel] [PATCH] vhost-user: delete net client if necessary

2018-06-11 Thread Jason Wang
On 2018年06月11日 15:31, linzhecheng wrote: As qemu_new_net_client create new ncs but error happens later, ncs will be left in global net_clients list, so we need to cleanup them. Signed-off-by: linzhecheng diff --git a/net/vhost-user.c b/net/vhost-user.c index 608b837175..1c7ee48b60 100644 --

Re: [Qemu-devel] [PATCH v3] net: Fix a potential segfault

2018-06-11 Thread Jason Wang
On 2018年06月11日 17:48, Thomas Huth wrote: On 11.06.2018 11:23, Lin Ma wrote: If user forgets to provide any backend types for '-netdev' in qemu CLI, It triggers seg fault. e.g. Expected: $ qemu -netdev id=net0 qemu-system-x86_64: Parameter 'type' is missing Actual: $ qemu -netdev id=net0 Se

[Qemu-devel] [PATCH v4 08/14] fpu: introduce hardfloat

2018-06-11 Thread Emilio G. Cota
The appended paves the way for leveraging the host FPU for a subset of guest FP operations. For most guest workloads (e.g. FP flags aren't ever cleared, inexact occurs often and rounding is set to the default [to nearest]) this will yield sizable performance speedups. The approach followed here av

[Qemu-devel] [PATCH v4 13/14] hardfloat: support float32/64 square root

2018-06-11 Thread Emilio G. Cota
Performance results for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: sqrt-single: 43.27 MFlops sqrt-double: 24.81 MFlops - after: sqrt-single: 297.94 MFlops sqrt-double: 210.46 MFlops 2. ARM Aarch64 A57 @ 2.4GHz - before: sqrt-single: 12.41 MFlops sqrt-double: 6.22 MFlops - aft

[Qemu-devel] [PATCH v4 05/14] tests/fp: add fp-bench, a collection of simple floating point microbenchmarks

2018-06-11 Thread Emilio G. Cota
This will allow us to measure the performance impact of FP emulation optimizations. Note that we can measure both directly the impact on the softfloat functions (with "-t soft"), or the impact on an emulated workload (call with "-t host" and run under qemu user-mode). Signed-off-by: Emilio G. Cota

[Qemu-devel] [PATCH v4 02/14] fp-test: add muladd variants

2018-06-11 Thread Emilio G. Cota
These are a few muladd-related operations that the original IBM syntax does not specify; model files for these are in muladd.fptest. Signed-off-by: Emilio G. Cota --- tests/fp/fp-test.c | 24 tests/fp/muladd.fptest | 51 +++

[Qemu-devel] [PATCH v4 09/14] hardfloat: support float32/64 addition and subtraction

2018-06-11 Thread Emilio G. Cota
Performance results (single and double precision) for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: add-single: 135.07 MFlops add-double: 131.60 MFlops sub-single: 130.04 MFlops sub-double: 133.01 MFlops - after: add-single: 443.04 MFlops add-double: 301.95 MFlops sub-single: 411

[Qemu-devel] [PATCH v4 12/14] hardfloat: support float32/64 fused multiply-add

2018-06-11 Thread Emilio G. Cota
Performance results for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: fma-single: 74.73 MFlops fma-double: 74.54 MFlops - after: fma-single: 203.37 MFlops fma-double: 169.37 MFlops 2. ARM Aarch64 A57 @ 2.4GHz - before: fma-single: 23.24 MFlops fma-double: 23.70 MFlops - after: f

Re: [Qemu-devel] [PATCH v1 10/11] pc-dimm: introduce and use pc_dimm_memory_pre_plug()

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:54PM +0200, David Hildenbrand wrote: > We'll be factoring out some pc-dimm specific and some memory-device > checks next. > > Signed-off-by: David Hildenbrand Reviewed-by: David Gibson ppc parts Acked-by: David Gibson > --- > hw/i386/pc.c | 2 ++ >

[Qemu-devel] [PATCH v4 07/14] softfloat: add float{32, 64}_is_zero_or_normal

2018-06-11 Thread Emilio G. Cota
These will gain some users very soon. Signed-off-by: Emilio G. Cota --- include/fpu/softfloat.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/include/fpu/softfloat.h b/include/fpu/softfloat.h index 1fbece5..08f63ae 100644 --- a/include/fpu/softfloat.h +++ b/include/fpu/softfloa

Re: [Qemu-devel] [PATCH] qemu: Introduce VIRTIO_NET_F_STANDBY feature bit to virtio_net

2018-06-11 Thread Jason Wang
On 2018年06月12日 01:26, Michael S. Tsirkin wrote: On Mon, May 07, 2018 at 04:09:54PM -0700, Sridhar Samudrala wrote: This feature bit can be used by hypervisor to indicate virtio_net device to act as a standby for another device with the same MAC address. I tested this with a small change to t

[Qemu-devel] [PATCH v4 04/14] target/tricore: use float32_is_denormal

2018-06-11 Thread Emilio G. Cota
Cc: Bastian Koppelmann Reviewed-by: Bastian Koppelmann Signed-off-by: Emilio G. Cota --- target/tricore/fpu_helper.c | 9 ++--- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/target/tricore/fpu_helper.c b/target/tricore/fpu_helper.c index df16290..31df462 100644 --- a/target/

[Qemu-devel] [PATCH v4 03/14] softfloat: add float{32, 64}_is_{de, }normal

2018-06-11 Thread Emilio G. Cota
This paves the way for upcoming work. Cc: Bastian Koppelmann Reviewed-by: Bastian Koppelmann Reviewed-by: Alex Bennée Signed-off-by: Emilio G. Cota --- include/fpu/softfloat.h | 20 1 file changed, 20 insertions(+) diff --git a/include/fpu/softfloat.h b/include/fpu/softf

[Qemu-devel] [PATCH v4 14/14] hardfloat: support float32/64 comparison

2018-06-11 Thread Emilio G. Cota
Performance results for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: cmp-single: 113.01 MFlops cmp-double: 115.54 MFlops - after: cmp-single: 527.83 MFlops cmp-double: 457.21 MFlops 2. ARM Aarch64 A57 @ 2.4GHz - before: cmp-single: 39.32 MFlops cmp-double: 39.80 MFlops - after:

[Qemu-devel] [PATCH v4 00/14] fp-test + hardfloat

2018-06-11 Thread Emilio G. Cota
Sending this respin (little more than a rebase) in case there's reviewer bandwidth available until the soft-freeze in 3 weeks. v3: https://lists.nongnu.org/archive/html/qemu-devel/2018-04/msg00455.html Not much has changed since April's v3: - Rebase to current master, fixing some conflicts. - Ad

[Qemu-devel] [PATCH v4 11/14] hardfloat: support float32/64 division

2018-06-11 Thread Emilio G. Cota
Performance results for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: div-single: 34.84 MFlops div-double: 34.04 MFlops - after: div-single: 275.23 MFlops div-double: 216.38 MFlops 2. ARM Aarch64 A57 @ 2.4GHz - before: div-single: 9.33 MFlops div-double: 9.30 MFlops - after: div

Re: [Qemu-devel] [PATCH v1 05/11] spapr: move memory hotplug size check into plug code

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:49PM +0200, David Hildenbrand wrote: > This might look like a step backwards, but it is not. get_memory_region() > should not be called on uninititalized devices. In general, only > properties should be access, but no "derived" satte like the memory > region. > > 1. W

[Qemu-devel] [PATCH v4 10/14] hardfloat: support float32/64 multiplication

2018-06-11 Thread Emilio G. Cota
Performance results for fp-bench: 1. Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz - before: mul-single: 126.91 MFlops mul-double: 118.28 MFlops - after: mul-single: 258.02 MFlops mul-double: 197.96 MFlops 2. ARM Aarch64 A57 @ 2.4GHz - before: mul-single: 37.42 MFlops mul-double: 38.77 MFlops - after:

[Qemu-devel] [PATCH v4 06/14] softfloat: rename canonicalize to sf_canonicalize

2018-06-11 Thread Emilio G. Cota
glibc >= 2.25 defines canonicalize in commit eaf5ad0 (Add canonicalize, canonicalizef, canonicalizel., 2016-10-26). Given that we'll be including soon, prepare for this by prefixing our canonicalize() with sf_ to avoid clashing with the libc's canonicalize(). Cc: Bastian Koppelmann Reported-by:

Re: [Qemu-devel] [PATCH v1 04/11] hostmem: drop error variable from host_memory_backend_get_memory()

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:48PM +0200, David Hildenbrand wrote: > Unused, so let's remove it. > > Signed-off-by: David Hildenbrand Reviewed-by: David Gibson > --- > backends/hostmem.c | 3 +-- > hw/mem/nvdimm.c | 4 ++-- > hw/mem/pc-dimm.c | 4 ++-- > hw/misc/ivshmem

Re: [Qemu-devel] [PATCH v1 08/11] pc-dimm: get_memory_region() will never return a NULL pointer

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:52PM +0200, David Hildenbrand wrote: > This is guaranteed by passing into host_memory_backend_get_memory() a > value that is not NULL - which is what we always do. > > Signed-off-by: David Hildenbrand Reviewed-by: David Gibson > --- > hw/mem/pc-dimm.c | 15 ++

[Qemu-devel] [PATCH v4 01/14] tests: add fp-test, a floating point test suite

2018-06-11 Thread Emilio G. Cota
This will allow us to run correctness tests against our FP implementation. The test can be run in two modes (called "testers"): host and soft. With the former we check the results and FP flags on the host machine against the model. With the latter we check QEMU's fpu primitives against the model. N

Re: [Qemu-devel] [PATCH v1 07/11] pc-dimm: get_memory_region() can never fail

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:51PM +0200, David Hildenbrand wrote: > We already verify when realizing that the memdev property has been > set. We have no more accesses to get_memory_region() before the device > is realized. > > So this function will never fail. Remove the stale check and the > err

Re: [Qemu-devel] [PATCH v1 09/11] pc-dimm: remove pc_dimm_get_vmstate_memory_region()

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:53PM +0200, David Hildenbrand wrote: > We can reuse pc_dimm_get_memory_region() now, as both functions are > (besides the assert which is also correct), equal. > > Signed-off-by: David Hildenbrand Reviewed-by: David Gibson > --- > hw/mem/pc-dimm.c | 7 +-- >

Re: [Qemu-devel] [PATCH v1 06/11] pc-dimm: don't allow to access "size" before the device was realized

2018-06-11 Thread David Gibson
On Mon, Jun 11, 2018 at 02:16:50PM +0200, David Hildenbrand wrote: > "size" should not be queried before the device was realized. Let' make > that explicit. > > Signed-off-by: David Hildenbrand Reviewed-by: David Gibson > --- > hw/mem/pc-dimm.c | 6 ++ > 1 file changed, 6 insertions(+) >

Re: [Qemu-devel] question: a dead loop in qemu when do blockJobAbort and vm suspend coinstantaneously

2018-06-11 Thread Fam Zheng
On Mon, 06/11 11:31, l00284672 wrote: > I tried your patch with my modification below can slove this problem. > > void blk_set_aio_context(BlockBackend *blk, AioContext *new_context) > { >     BlockDriverState *bs = blk_bs(blk); >     ThrottleGroupMember *tgm = &blk->public.throttle_group_member;

[Qemu-devel] [PATCH v2] util/async: avoid NULL pointer dereference

2018-06-11 Thread Jie Wang
if laio_init create linux_aio failed and return NULL, NULL pointer dereference will occur when laio_attach_aio_context dereference linux_aio in aio_get_linux_aio. Let's avoid it and report error. Signed-off-by: Jie Wang --- block/file-posix.c | 19 +-- util/async.c | 5 +++

Re: [Qemu-devel] [PATCH] kvm: Delete the slot only when KVM_MEM_READONLY flag is changed

2018-06-11 Thread Shannon Zhao
Ping? On 2018/5/16 17:18, Shannon Zhao wrote: > According to KVM commit 75d61fbc, it needs to delete the slot before > changing the KVM_MEM_READONLY flag. But QEMU commit 235e8982 only check > whether KVM_MEM_READONLY flag is set instead of changing. It doesn't > need to delete the slot if the KVM

Re: [Qemu-devel] question: a dead loop in qemu when do blockJobAbort and vm suspend coinstantaneously

2018-06-11 Thread l00284672
ping On 2018/6/11 11:31, l00284672 wrote: I tried your patch with my modification below can slove this problem. void blk_set_aio_context(BlockBackend *blk, AioContext *new_context) {     BlockDriverState *bs = blk_bs(blk);     ThrottleGroupMember *tgm = &blk->public.throttle_group_member;   

Re: [Qemu-devel] [PATCH v3 00/19] linux-user: Split do_syscall

2018-06-11 Thread no-reply
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180612005145.3375-1-richard.hender...@linaro.org Subject: [Qemu-devel] [PATCH v3 00/19] linux-user: Split do_syscall === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 to

[Qemu-devel] [PATCH v3 18/19] linux-user: Split out memory syscalls

2018-06-11 Thread Richard Henderson
This includes mmap, mmap2, munmap, mlock, mlockall, munlock, munlockall, mprotect, mremap, msync. Signed-off-by: Richard Henderson --- linux-user/syscall.h | 2 + linux-user/strace.c| 55 ++ linux-user/syscall.c | 118 linux-user/sy

[Qemu-devel] [PATCH v3 19/19] linux-user: Split out some process syscalls

2018-06-11 Thread Richard Henderson
This includes clone, getgroups, gettid, setfsgid, setfsuid, setgroups, setsid, setuid, fork, getegid, getegid32, geteuid, geteuid32, getgid, getgid32, getgroups32, getpgrp, getpid, getppid, getresgid, getresgid32, getresuid, getresuid32, getuid, getuid32, getxgid, getxpid, getxuid, setfsgid32, setg

[Qemu-devel] [PATCH v3 13/19] linux-user: Split out close, open, openat, read, write

2018-06-11 Thread Richard Henderson
Signed-off-by: Richard Henderson --- linux-user/syscall.h | 51 linux-user/strace.c| 35 --- linux-user/syscall.c | 402 +-- linux-user/syscall_file.c | 423 + linux-user/Makefile.objs |

[Qemu-devel] [PATCH v3 17/19] linux-user: Split out ipc syscalls

2018-06-11 Thread Richard Henderson
Given that these are all intertwined via TARGET_NR_ipc, we must move them all to the new file all at once. Signed-off-by: Richard Henderson --- linux-user/strace.c| 83 --- linux-user/syscall.c | 973 linux-user/syscall_ipc.c | 1095 +++

[Qemu-devel] [PATCH v3 11/19] linux-user: Propagate goto fail to return

2018-06-11 Thread Richard Henderson
Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/syscall.c | 60 1 file changed, 22 insertions(+), 38 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 5a17803732..fd8d48b0da 100644 --- a/linux-use

[Qemu-devel] [PATCH v3 12/19] linux-user: Setup split syscall infrastructure

2018-06-11 Thread Richard Henderson
Defines a unified structure for implementation and strace. Supplies a generator script to build the declarations and the lookup function. Signed-off-by: Richard Henderson --- linux-user/syscall.h | 178 +++ linux-user/strace.c| 386 --

[Qemu-devel] [PATCH v3 10/19] linux-user: Propagate goto unimplemented to default

2018-06-11 Thread Richard Henderson
There is no point in listing a syscall if you want the same effect as not listing it. In one less trivial case, the goto was demonstrably not reachable. Signed-off-by: Richard Henderson --- linux-user/syscall.c | 144 +-- 1 file changed, 1 insertion(+), 1

[Qemu-devel] [PATCH v3 08/19] linux-user: Propagate goto efault to return

2018-06-11 Thread Richard Henderson
Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/syscall.c | 341 ++- 1 file changed, 175 insertions(+), 166 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index efe882612b..a6b8268332 100644 --- a/linux-u

[Qemu-devel] [PATCH v3 09/19] linux-user: Propagate goto unimplemented_nowarn to return

2018-06-11 Thread Richard Henderson
Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/syscall.c | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index a6b8268332..06205d3d65 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscal

[Qemu-devel] [PATCH v3 14/19] linux-user: Split out preadv, pwritev, readv, writev

2018-06-11 Thread Richard Henderson
Signed-off-by: Richard Henderson --- linux-user/syscall.h | 5 ++ linux-user/syscall.c | 85 ++- linux-user/syscall_file.c | 103 + linux-user/gen_syscall_list.py | 4 ++ linux-user/strace.list | 12 ---

[Qemu-devel] [PATCH v3 06/19] linux-user: Split out do_syscall1

2018-06-11 Thread Richard Henderson
There was supposed to be a single point of return for do_syscall so that tracing works properly. However, there are a few bugs in that area. It is significantly simpler to simply split out an inner function to enforce this. Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linu

[Qemu-devel] [PATCH v3 04/19] linux-user/sparc64: Add inotify_rm_watch and tee syscalls

2018-06-11 Thread Richard Henderson
Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/sparc64/syscall_nr.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/linux-user/sparc64/syscall_nr.h b/linux-user/sparc64/syscall_nr.h index 9391645598..0b91b896da 100644 --- a/linux-user/sparc64/

[Qemu-devel] [PATCH v3 16/19] linux-user: Split out name_to_handle_at, open_by_handle_at

2018-06-11 Thread Richard Henderson
Signed-off-by: Richard Henderson --- linux-user/syscall.h | 1 + linux-user/strace.c| 5 +- linux-user/syscall.c | 98 -- linux-user/syscall_file.c | 88 ++ linux-user/gen_syscall_list.py | 2 + li

[Qemu-devel] [PATCH v3 07/19] linux-user: Relax single exit from "break"

2018-06-11 Thread Richard Henderson
Transform outermost "break" to "return ret". If the immediately preceeding statement was an assignment to ret, return the value directly. Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/syscall.c | 970 +-- 1 file changed, 390

[Qemu-devel] [PATCH v3 03/19] linux-user/microblaze: Fix typo in accept4 syscall

2018-06-11 Thread Richard Henderson
Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/microblaze/syscall_nr.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux-user/microblaze/syscall_nr.h b/linux-user/microblaze/syscall_nr.h index 0704449bae..

[Qemu-devel] [PATCH v3 05/19] linux-user: Remove DEBUG

2018-06-11 Thread Richard Henderson
This is redundant with both -strace and actual tracing. Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/syscall.c | 10 -- 1 file changed, 10 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 7b9

[Qemu-devel] [PATCH v3 15/19] linux-user: Split out pread64, pwrite64

2018-06-11 Thread Richard Henderson
Signed-off-by: Richard Henderson --- linux-user/syscall.h | 44 + linux-user/syscall.c | 70 -- linux-user/syscall_file.c | 61 +++-- linux-user/gen_syscall_list.py | 2 + linux-user/strace.list

[Qemu-devel] [PATCH v3 01/19] linux-user/alpha: Fix epoll syscalls

2018-06-11 Thread Richard Henderson
These were named incorrectly, going so far as to invade strace.list. Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/alpha/syscall_nr.h | 6 +++--- linux-user/strace.list| 9 - 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/linux-user

[Qemu-devel] [PATCH v3 02/19] linux-user/hppa: Fix typo in mknodat syscall

2018-06-11 Thread Richard Henderson
Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson --- linux-user/hppa/syscall_nr.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux-user/hppa/syscall_nr.h b/linux-user/hppa/syscall_nr.h index 55bdf71d50..9c1d0a195d 100644 -

  1   2   3   4   5   >