Re: [Qemu-devel] [PATCH V6 02/10] migration: pass MigrationIncomingState* into migration check functions

2017-06-04 Thread Alexey Perevalov
On 05/31/2017 08:54 PM, Dr. David Alan Gilbert wrote: * Alexey Perevalov (a.pereva...@samsung.com) wrote: That tiny refactoring is necessary to be able to set UFFD_FEATURE_THREAD_ID while requesting features, and then to create downtime context in case when kernel supports it. Signed-off-by:

[Qemu-devel] [PATCH v5 8/8] vmdk: Make vmdk_get_cluster_offset() return cluster offset only

2017-06-04 Thread Ashijeet Acharya
vmdk_alloc_clusters() introduced earlier now handles the task of allocating clusters and performing COW when needed. Thus we can change vmdk_get_cluster_offset() to stick to the sole purpose of returning cluster offset using sector number. Update the changes at all call sites. Signed-off-by:

[Qemu-devel] [PATCH v5 4/8] vmdk: Factor out metadata loading code out of vmdk_get_cluster_offset()

2017-06-04 Thread Ashijeet Acharya
Move the cluster tables loading code out of the existing vmdk_get_cluster_offset() function and implement it in separate get_cluster_table() and vmdk_l2load() functions. Signed-off-by: Ashijeet Acharya Reviewed-by: Fam Zheng --- block/vmdk.c | 153

[Qemu-devel] [PATCH v5 5/8] vmdk: Set maximum bytes allocated in one cycle

2017-06-04 Thread Ashijeet Acharya
Set the maximum bytes allowed to get allocated at once to be not more than the extent size boundary to handle writes at two separate extents appropriately. Signed-off-by: Ashijeet Acharya Reviewed-by: Fam Zheng --- block/vmdk.c | 13 +++-- 1

[Qemu-devel] [PATCH v5 7/8] vmdk: Update metadata for multiple clusters

2017-06-04 Thread Ashijeet Acharya
Include a next pointer in VmdkMetaData struct to point to the previous allocated L2 table. Modify vmdk_L2update to start updating metadata for allocation of multiple clusters at once. Signed-off-by: Ashijeet Acharya --- block/vmdk.c | 128

[Qemu-devel] [PATCH v5 3/8] vmdk: Rename get_cluster_offset() to vmdk_get_cluster_offset()

2017-06-04 Thread Ashijeet Acharya
Rename the existing get_cluster_offset() to vmdk_get_cluster_offset() and update name in all the callers accordingly. Signed-off-by: Ashijeet Acharya Reviewed-by: Fam Zheng --- block/vmdk.c | 46 +++--- 1 file

[Qemu-devel] [PATCH v5 1/8] vmdk: Move vmdk_find_offset_in_cluster() to the top

2017-06-04 Thread Ashijeet Acharya
Move the existing vmdk_find_offset_in_cluster() function to the top of the driver. Signed-off-by: Ashijeet Acharya Reviewed-by: Fam Zheng --- block/vmdk.c | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff --git

[Qemu-devel] [PATCH v5 6/8] vmdk: New functions to assist allocating multiple clusters

2017-06-04 Thread Ashijeet Acharya
Introduce two new helper functions handle_alloc() and vmdk_alloc_cluster_offset(). handle_alloc() helps to allocate multiple clusters at once starting from a given offset on disk and performs COW if necessary for first and last allocated clusters. vmdk_alloc_cluster_offset() helps to return the

[Qemu-devel] [PATCH v5 0/8] Optimize VMDK I/O by allocating multiple clusters

2017-06-04 Thread Ashijeet Acharya
Previously posted series patches: v1 - http://lists.nongnu.org/archive/html/qemu-devel/2017-03/msg02044.html v2 - http://lists.nongnu.org/archive/html/qemu-devel/2017-03/msg05080.html v3 - http://lists.nongnu.org/archive/html/qemu-devel/2017-04/msg00074.html v4 -

[Qemu-devel] [PATCH v5 2/8] vmdk: Rename get_whole_cluster() to vmdk_perform_cow()

2017-06-04 Thread Ashijeet Acharya
Rename the existing function get_whole_cluster() to vmdk_perform_cow() as its sole purpose is to perform COW for the first and the last allocated clusters if needed. Signed-off-by: Ashijeet Acharya Reviewed-by: Fam Zheng --- block/vmdk.c | 23

Re: [Qemu-devel] [PATCH 3/3] vhost: iommu: cache static mapping if there is

2017-06-04 Thread Jason Wang
On 2017年06月05日 11:15, Peter Xu wrote: On Fri, Jun 02, 2017 at 06:45:05PM +0300, Michael S. Tsirkin wrote: On Fri, Jun 02, 2017 at 07:50:54PM +0800, Peter Xu wrote: This patch pre-heat vhost iotlb cache when passthrough mode enabled. Sometimes, even if user specified iommu_platform for vhost

Re: [Qemu-devel] [PATCH] Revert "Change net/socket.c to use socket_*() functions" again

2017-06-04 Thread Jason Wang
On 2017年05月06日 00:23, Daniel P. Berrange wrote: This reverts commit 883e4f7624e10b98d16d9adaffb8b1795664d899. This code changed net/socket.c from using socket()+connect(), to using socket_connect(). In theory this is great, but in practice this has completely broken the ability to connect the

[Qemu-devel] [PATCHv2 1/5] spapr: Introduce DRC subclasses

2017-06-04 Thread David Gibson
Currently we only have a single QOM type for all DRCs, but lots of places where we switch behaviour based on the DRC's PAPR defined type. This is a poor use of our existing type system. So, instead create QOM subclasses for each PAPR defined DRC type. We also introduce intermediate subclasses

Re: [Qemu-devel] [PATCH 0/3] exec: further refine address_space_get_iotlb_entry()

2017-06-04 Thread Peter Xu
On Fri, Jun 02, 2017 at 05:51:07PM +0300, Michael S. Tsirkin wrote: > On Fri, Jun 02, 2017 at 07:50:51PM +0800, Peter Xu wrote: > > With the patch applied: > > > > [PATCH v3] exec: fix address_space_get_iotlb_entry page mask > > (already in Paolo's pull request but not yet merged) > > > >

Re: [Qemu-devel] [PATCH 3/3] vhost: iommu: cache static mapping if there is

2017-06-04 Thread Peter Xu
On Fri, Jun 02, 2017 at 06:45:05PM +0300, Michael S. Tsirkin wrote: > On Fri, Jun 02, 2017 at 07:50:54PM +0800, Peter Xu wrote: > > This patch pre-heat vhost iotlb cache when passthrough mode enabled. > > > > Sometimes, even if user specified iommu_platform for vhost devices, > > IOMMU might

Re: [Qemu-devel] [PATCH v2 1/1] s390x: vmstatify config migration for virtio-ccw

2017-06-04 Thread Dong Jia Shi
* Halil Pasic [2017-06-02 16:05:31 +0200]: Hi Halil, Sorry for the late show up. I just found some nits, which could be ignored for me. > Let's vmstatify virtio_ccw_save_config and virtio_ccw_load_config for > flexibility (extending using subsections) and for fun. >

Re: [Qemu-devel] [PATCH v2 5/6] pci: Make errp the last parameter of pci_add_capability()

2017-06-04 Thread Mao Zhongyi
Hi, Eduardo On 06/03/2017 01:45 AM, Eduardo Habkost wrote: On Fri, Jun 02, 2017 at 03:54:41PM +0800, Mao Zhongyi wrote: Add Error argument for pci_add_capability() to leverage the errp to pass info on errors. This way is helpful for its callers to make a better error handling when moving to

Re: [Qemu-devel] [PATCH 2/3] exec: simplify address_space_get_iotlb_entry

2017-06-04 Thread Peter Xu
On Fri, Jun 02, 2017 at 07:49:58PM +0300, Michael S. Tsirkin wrote: > On Fri, Jun 02, 2017 at 07:50:53PM +0800, Peter Xu wrote: > > This patch let address_space_get_iotlb_entry() to use the newly > > introduced page_mask parameter in address_space_do_translate(). Then we > > will be sure the IOTLB

Re: [Qemu-devel] [PATCH 1/3] exec: add page_mask for address_space_do_translate

2017-06-04 Thread Peter Xu
On Fri, Jun 02, 2017 at 07:45:05PM +0300, Michael S. Tsirkin wrote: > On Fri, Jun 02, 2017 at 07:50:52PM +0800, Peter Xu wrote: > > The function is originally used for address_space_translate() and what > > we care about most is (xlat, plen) range. However for iotlb requests, we > > don't really

Re: [Qemu-devel] [virtio-dev] Re: [virtio-dev] Re: [virtio-dev] Re: [PATCH v2 00/16] Vhost-pci for inter-VM communication

2017-06-04 Thread Michael S. Tsirkin
On Sun, Jun 04, 2017 at 06:34:45PM +0800, Wei Wang wrote: > On 05/26/2017 01:57 AM, Michael S. Tsirkin wrote: > > > > I think that's a very valid point. Linux isn't currently optimized to > > handle packets in device BAR. > > There are several issues here and you do need to address them in the >

Re: [Qemu-devel] [PATCH] target/ppc: Fixup set_spr error in h_register_process_table

2017-06-04 Thread David Gibson
On Mon, Jun 05, 2017 at 10:49:51AM +1000, Suraj Jitindar Singh wrote: > set_spr is used in the function h_register_process_table() to update the > LPCR_GTSE and LPCR_UPRT values based on the flags passed by the guest. > The set_spr function takes the last two arguments mask and value used to >

Re: [Qemu-devel] [PATCH] target-ppc: Fix openpic timer read register offset

2017-06-04 Thread David Gibson
On Fri, Jun 02, 2017 at 04:32:59AM -0700, Aaron Larson wrote: > > openpic_tmr_read() is incorrectly computing register offset of the > TCCR, TBCR, TVPR, and TDR registers when accessing the open pic timer > registers. Specifically the offset of timer registers for > openpic_tmr_read() is not

[Qemu-devel] [PATCH] target/ppc: Fixup set_spr error in h_register_process_table

2017-06-04 Thread Suraj Jitindar Singh
set_spr is used in the function h_register_process_table() to update the LPCR_GTSE and LPCR_UPRT values based on the flags passed by the guest. The set_spr function takes the last two arguments mask and value used to mask and set the value of the spr respectively. The current call site passes

[Qemu-devel] [PATCH] monitor: Add -a (all) option to info registers

2017-06-04 Thread Suraj Jitindar Singh
The info registers command in the qemu monitor is used to dump register values. Currently this command uses the monitor cpu (which can be set by the user) as the cpu for whose registers will be dumped. Sometimes it is useful to see the registers for all cpus and currently this requires setting

Re: [Qemu-devel] [PATCH] gitignore: Ignore vim per-project config and clang complete

2017-06-04 Thread Qu Wenruo
At 06/02/2017 10:57 PM, Eric Blake wrote: On 06/01/2017 11:08 PM, Qu Wenruo wrote: Since we have already ignored ctags, ignoring .clangcomplete for vim-clang_completion is quite reasonable for me. (Not to mention vim-clang_completion provides better and more accurate completion and definition

[Qemu-devel] [PATCH v4 2/3] target/s390x: implement STORE PAIR TO QUADWORD

2017-06-04 Thread Aurelien Jarno
Signed-off-by: Aurelien Jarno --- target/s390x/helper.h | 1 + target/s390x/insn-data.def | 2 ++ target/s390x/mem_helper.c | 24 target/s390x/translate.c | 6 ++ 4 files changed, 33 insertions(+) diff --git a/target/s390x/helper.h

[Qemu-devel] [PATCH v4 3/3] target/s390x: check alignment in CDSG in the !CONFIG_ATOMIC128 case

2017-06-04 Thread Aurelien Jarno
The CDSG instruction requires a 16-byte alignement, as expressed in the MO_ALIGN_16 passed to helper_atomic_cmpxchgo_be_mmu. In the non parallel case, use check_alignment to enforce this. Signed-off-by: Aurelien Jarno --- target/s390x/mem_helper.c | 2 ++ 1 file changed, 2

[Qemu-devel] [PATCH v4 0/3] target/s390x: implement loads/store quadword

2017-06-04 Thread Aurelien Jarno
This patchset implements the LOAD PAIR FROM QUADWORD and STORE PAIR TO QUADWORD instructions. The corresponding patches have been in my previous patchset and the pull request from Richard, but they failed to build on a host without atomic128 support. This new version fixes that. It has to be

[Qemu-devel] [PATCH v4 1/3] target/s390x: implement LOAD PAIR FROM QUADWORD

2017-06-04 Thread Aurelien Jarno
Signed-off-by: Aurelien Jarno --- target/s390x/helper.h | 1 + target/s390x/insn-data.def | 2 ++ target/s390x/mem_helper.c | 27 +++ target/s390x/translate.c | 7 +++ 4 files changed, 37 insertions(+) diff --git

Re: [Qemu-devel] [PULL 00/69] target/s390x tcg patches

2017-06-04 Thread Aurelien Jarno
On 2017-06-04 11:32, no-re...@patchew.org wrote: > Hi, > > This series failed build test on s390x host. Please find the details below. > > Subject: [Qemu-devel] [PULL 00/69] target/s390x tcg patches > Message-id: 20170604173509.29684-1-...@twiddle.net > Type: series > [snip] >

Re: [Qemu-devel] [PULL 00/69] target/s390x tcg patches

2017-06-04 Thread Aurelien Jarno
On 2017-06-04 10:34, Richard Henderson wrote: > The queue has gotten overlong. This includes my unwinding patches, > the execute rewrite, and Aurelien's flushing out of missing Z insns. > > It does *not* include Aurelian's final patch to bump the base tcg > cpu to z800. David Hildenbrand had

Re: [Qemu-devel] [PATCH] tcg: allocate TB structs before the corresponding translated code

2017-06-04 Thread Richard Henderson
On 06/02/2017 04:39 PM, Emilio G. Cota wrote: +aligned = (void *)ROUND_UP((uintptr_t)s->code_gen_ptr, 64); I would prefer that this and +} QEMU_ALIGNED(64); this both use a define. We may well have to adjust this for different hosts. In particular I'm thinking of PPC64 which would

[Qemu-devel] [PULL 68/69] target/s390x: mark ETF2 and ETF2-ENH facilities as available

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-30-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/cpu_models.c | 2 ++ 1 file changed, 2 insertions(+) diff --git

[Qemu-devel] [PULL 65/69] target/s390x: implement UNPACK UNICODE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-27-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 62/69] target/s390x: implement PACK ASCII

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-24-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 64/69] target/s390x: implement UNPACK ASCII

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-26-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 56/69] target/s390x: fix COMPARE LOGICAL LONG EXTENDED

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno There are multiple issues with the COMPARE LOGICAL LONG EXTENDED instruction: - The test between the two operands is inverted, leading to an inversion of the cc values 1 and 2. - The address and length of an operand continue to be decreased after

[Qemu-devel] [PULL 69/69] target/s390x: addressing exceptions are suppressing

2017-06-04 Thread Richard Henderson
From: David Hildenbrand We have to make the address in the old PSW point at the next instruction, as addressing exceptions are suppressing and not nullifying. I assume that there are a lot of other broken cases (as most instructions we care about are suppressing) - all

[Qemu-devel] [PULL 61/69] target/s390x: implement MOVE LONG UNICODE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-23-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 55/69] target/s390x: improve 24-bit and 31-bit lengths read/write

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-17-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 47

[Qemu-devel] [PULL 60/69] target/s390x: implement COMPARE LOGICAL LONG UNICODE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno For that we need to make program_interrupt available to qemu-user. Fortunately there is almost nothing to change as both kvm_enabled and CONFIG_KVM evaluate to false in that case. Reviewed-by: Richard Henderson Signed-off-by:

[Qemu-devel] [PULL 67/69] target/s390x: implement TRANSLATE ONE/TWO TO ONE/TWO

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-29-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 + target/s390x/insn-data.def | 9 +

[Qemu-devel] [PULL 52/69] target/s390x: implement MOVE ZONES

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-14-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 51/69] target/s390x: implement MOVE WITH OFFSET

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-13-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 63/69] target/s390x: implement PACK UNICODE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Use a common helper with PACK ASCII as the differences are limited to the stride of the source operand. Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id:

[Qemu-devel] [PULL 43/69] target/s390x: implement TEST AND SET

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-5-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/insn-data.def | 3 +++

[Qemu-devel] [PULL 66/69] target/s390x: implement TEST DECIMAL

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-28-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 50/69] target/s390x: implement MOVE NUMERICS

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-12-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 59/69] target/s390x: improve MOVE LONG and MOVE LONG EXTENDED

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno As MVCL and MVCLE only differ by their operands, use a common do_mvcl helper. Optimize it calling fast_memmove and fast_memset. Correctly write back addresses. Check that r1 and r2/r3 registers are even. Reviewed-by: Richard Henderson

[Qemu-devel] [PULL 39/69] target/s390x/cpu_models: Allow some additional feature bits for the "qemu" CPU

2017-06-04 Thread Richard Henderson
From: Thomas Huth Currently we only present the plain z900 feature bits to the guest, but QEMU already emulates some additional features (but not all of the next CPU generation, so we can not use the next CPU level as default yet). Since newer Linux kernels are checking the

[Qemu-devel] [PULL 57/69] target/s390x: implement COMPARE LOGICAL LONG

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno As CLCL and CLCLE mostly differ by their operands, use a common do_clcl helper. Another difference is that CLCL is not interruptible. Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id:

[Qemu-devel] [PULL 49/69] target/s390x: implement MOVE INVERSE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-11-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 58/69] target/s390x: fix adj_len_to_page

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno adj_len_to_page doesn't return the correct result when the address is already page aligned and the length is bigger than a page. Fix that. Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno

[Qemu-devel] [PULL 32/69] target/s390x: Fix EXECUTE with R1==0

2017-06-04 Thread Richard Henderson
The PoO specifies that when R1==0, no ORing into the insn loaded from storage takes place. Load a zero for this case. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/insn-data.def | 4 ++-- target/s390x/translate.c | 14

[Qemu-devel] [PULL 42/69] target/s390x: implement local-TLB-clearing in IPTE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno And at the same time make IPTE SMP aware. Reviewed-by: Thomas Huth Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-4-aurel...@aurel32.net>

[Qemu-devel] [PULL 48/69] target/s390x: implement COMPARE AND SIGNAL

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno These functions differ from COMPARE by generating an exception for a QNaN input. Use the non quiet version of floatXX_compare. Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-10-aurel...@aurel32.net>

[Qemu-devel] [PULL 54/69] target/s390x: improve 24-bit and 31-bit addresses write

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-16-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 37

[Qemu-devel] [PULL 31/69] target/s390x: Fix some helper_ex problems

2017-06-04 Thread Richard Henderson
(1) The OR of the low bits or R1 into INSN were not being done consistently; it was forgotten along all but the SVC path. (2) The setting of ILEN was wrong on SVC path for EXRL. (3) The data load for ICM read too much. Fix these by consolidating data load at the beginning, using get_ilen to

[Qemu-devel] [PULL 38/69] target/s390x: Re-implement a few EXECUTE target insns directly

2017-06-04 Thread Richard Henderson
While the previous patch is required for proper conformance, the vast majority of target insns are MVC and XC for implementing memmove and memset respectively. The next most common are CLC, TR, and SVC. Implementing these (and a few others for which we already have an implementation) directly is

[Qemu-devel] [PULL 47/69] target/s390x: implement STORE PAIR TO QUADWORD

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-9-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 + target/s390x/insn-data.def | 2 ++

[Qemu-devel] [PULL 28/69] target/s390x: Use unwind data for helper_tprot

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 1 - target/s390x/translate.c | 1 - 2 files changed, 2 deletions(-) diff --git a/target/s390x/mem_helper.c

[Qemu-devel] [PULL 53/69] target/s390x: improve 24-bit and 31-bit addresses read

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Improve fix_address to also handle the 24-bit mode. Rename fix_address to wrap_address to better explain what is changed. Replace the calls to get_address with x2 = 0 and b2 = 0 by call to wrap_address, leading to the removal of this function. Rename

[Qemu-devel] [PULL 36/69] target/s390x: End the TB after EXECUTE

2017-06-04 Thread Richard Henderson
This split will be required for implementing EXECUTE properly. Do this now as a separate step to aid comparison of before and after TB listings. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 54

[Qemu-devel] [PULL 46/69] target/s390x: implement LOAD PAIR FROM QUADWORD

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-8-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 + target/s390x/insn-data.def | 2 ++

[Qemu-devel] [PULL 24/69] target/s390x: Use unwind data for helper_lctlg

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 8 target/s390x/translate.c | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git

[Qemu-devel] [PULL 41/69] target/s390x: remove some Linux assumptions from IPTE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-3-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/cpu.h| 2 ++ target/s390x/mem_helper.c | 17 ++---

[Qemu-devel] [PULL 34/69] target/s390x: Implement CSPG

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/insn-data.def | 1 + target/s390x/translate.c | 1 + 2 files changed, 2 insertions(+) diff --git a/target/s390x/insn-data.def b/target/s390x/insn-data.def index

[Qemu-devel] [PULL 45/69] target/s390x: implement PACK

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-7-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/helper.h | 1 +

[Qemu-devel] [PULL 37/69] target/s390x: Implement EXECUTE via new TranslationBlock

2017-06-04 Thread Richard Henderson
Previously, helper_ex would construct the insn and then implement the insn via direct calls other helpers. This was sufficient to boot Linux but that is all. It is easy enough to go the whole nine yards by stashing state for EXECUTE within the cpu, and then rely on a new TB to be created that

[Qemu-devel] [PULL 14/69] target/s390x: Use unwind data for helper_lam

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 3 ++- target/s390x/translate.c | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git

[Qemu-devel] [PULL 44/69] target/s390x: implement TEST ADDRESSING MODE

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-6-aurel...@aurel32.net> Signed-off-by: Richard Henderson --- target/s390x/insn-data.def | 3 +++

[Qemu-devel] [PULL 33/69] target/s390x: Use atomic operations for COMPARE SWAP PURGE

2017-06-04 Thread Richard Henderson
Also provide the cross-cpu tlb flushing required by the PoO. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/helper.h | 2 +- target/s390x/insn-data.def | 2 +- target/s390x/mem_helper.c | 32

[Qemu-devel] [PULL 13/69] target/s390x: Use unwind data for helper_mvst

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 5 +++-- target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git

[Qemu-devel] [PULL 35/69] target/s390x: Save current ilen during translation

2017-06-04 Thread Richard Henderson
Use this saved value instead of recomputing from next_pc difference. Reviewed-by: David Hildenbrand Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/translate.c | 8 +--- 1 file changed, 5

[Qemu-devel] [PULL 30/69] target/s390x: Use unwind data for helper_mvcs/mvcp

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 8 ++-- target/s390x/translate.c | 2 -- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git

[Qemu-devel] [PULL 29/69] target/s390x: Use unwind data for helper_lra

2017-06-04 Thread Richard Henderson
Fix saving exception_index around mmu_translate; eliminate a dead store. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 6 +++--- target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 4

[Qemu-devel] [PULL 40/69] target/s390x: remove dead code in translate.c

2017-06-04 Thread Richard Henderson
From: Aurelien Jarno Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Aurelien Jarno Message-Id: <20170531220129.27724-2-aurel...@aurel32.net> Signed-off-by: Richard Henderson

[Qemu-devel] [PULL 12/69] target/s390x: Use unwind data for helper_mvpg

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/helper.h | 2 +- target/s390x/mem_helper.c | 9 + target/s390x/translate.c | 3 +-- 3 files changed, 7 insertions(+), 7

[Qemu-devel] [PULL 22/69] target/s390x: Use unwind data for helper_tre

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 15 --- target/s390x/translate.c | 1 - 2 files changed, 8 insertions(+), 8 deletions(-) diff --git

[Qemu-devel] [PULL 26/69] target/s390x: Use unwind data for helper_stctl

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 10 ++ target/s390x/translate.c | 2 -- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git

[Qemu-devel] [PULL 10/69] target/s390x: Use unwind data for helper_srst

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 3 ++- target/s390x/translate.c | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git

[Qemu-devel] [PULL 27/69] target/s390x: Use unwind data for helper_testblock

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 3 +++ target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) diff --git

[Qemu-devel] [PULL 18/69] target/s390x: Use unwind data for helper_clcle

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 6 +++--- target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 4 deletions(-) diff --git

[Qemu-devel] [PULL 09/69] target/s390x: Use unwind data for helper_clm

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 11 ++- target/s390x/translate.c | 1 - 2 files changed, 6 insertions(+), 6 deletions(-) diff --git

[Qemu-devel] [PULL 25/69] target/s390x: Use unwind data for helper_lctl

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 9 + target/s390x/translate.c | 1 - 2 files changed, 5 insertions(+), 5 deletions(-) diff --git

[Qemu-devel] [PULL 23/69] target/s390x: Use unwind data for helper_trt

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 28 target/s390x/translate.c | 1 - 2 files changed, 16 insertions(+), 13 deletions(-)

[Qemu-devel] [PULL 15/69] target/s390x: Use unwind data for helper_stam

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 3 ++- target/s390x/translate.c | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git

[Qemu-devel] [PULL 21/69] target/s390x: Use unwind data for helper_tr

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 25 +++-- target/s390x/translate.c | 1 - 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/target/s390x/mem_helper.c

[Qemu-devel] [PULL 06/69] target/s390x: Use unwind data for helper_xc

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 44 target/s390x/translate.c | 1 - 2 files changed, 24 insertions(+), 21 deletions(-) diff --git

[Qemu-devel] [PULL 20/69] target/s390x: Use unwind data for helper_unpk

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 9 + target/s390x/translate.c | 1 - 2 files changed, 5 insertions(+), 5 deletions(-) diff --git

[Qemu-devel] [PULL 19/69] target/s390x: Use unwind data for helper_cksm

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 11 ++- target/s390x/translate.c | 1 - 2 files changed, 6 insertions(+), 6 deletions(-) diff --git

[Qemu-devel] [PULL 17/69] target/s390x: Use unwind data for helper_mvcle

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 7 --- target/s390x/translate.c | 1 - 2 files changed, 4 insertions(+), 4 deletions(-) diff --git

[Qemu-devel] [PULL 07/69] target/s390x: Use unwind data for helper_mvc

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 30 ++ target/s390x/translate.c | 1 - 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/target/s390x/mem_helper.c

[Qemu-devel] [PULL 05/69] target/s390x: Use unwind data for helper_oc

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 31 ++- target/s390x/translate.c | 1 - 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/target/s390x/mem_helper.c

[Qemu-devel] [PULL 16/69] target/s390x: Use unwind data for helper_mvcl

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 7 --- target/s390x/translate.c | 1 - 2 files changed, 4 insertions(+), 4 deletions(-) diff --git

[Qemu-devel] [PULL 04/69] target/s390x: Use unwind data for helper_nc

2017-06-04 Thread Richard Henderson
Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 31 ++- target/s390x/translate.c | 1 - 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/target/s390x/mem_helper.c

[Qemu-devel] [PULL 03/69] target/s390x: Move helper_ex to end of file

2017-06-04 Thread Richard Henderson
This will avoid needing forward declarations in following patches. Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 161 +++--- 1 file changed, 81 insertions(+), 80

[Qemu-devel] [PULL 11/69] target/s390x: Use unwind data for helper_clst

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 5 +++-- target/s390x/translate.c | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git

[Qemu-devel] [PULL 01/69] target/s390x: Add support for the TEST BLOCK instruction

2017-06-04 Thread Richard Henderson
From: Thomas Huth TEST BLOCK was likely once used to execute basic memory tests, but nowadays it's just a (slow) way to clear a page. Reviewed-by: Aurelien Jarno Reviewed-by: David Hildenbrand Reviewed-by: Richard Henderson

[Qemu-devel] [PULL 02/69] target/s390x: Use cpu_loop_exit_restore for tlb_fill

2017-06-04 Thread Richard Henderson
Reviewed-by: Thomas Huth Reviewed-by: Aurelien Jarno Signed-off-by: Richard Henderson --- target/s390x/mem_helper.c | 10 ++ 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/target/s390x/mem_helper.c

  1   2   >