[Qemu-devel] [PATCH] MAINTAINERS: slirp: Remove myself as maintainer

2019-07-26 Thread Jan Kiszka
From: Jan Kiszka I haven't been doing anything here for a long time, nor does my git repo still play a role. Signed-off-by: Jan Kiszka --- MAINTAINERS | 2 -- 1 file changed, 2 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index d6de200453..238feb965f 100644 --- a/MAINTAINERS +++ b/MAIN

Re: [Qemu-devel] [BUG] VM abort after migration

2019-07-26 Thread Longpeng (Mike)
在 2019/7/10 11:57, Jason Wang 写道: > > On 2019/7/10 上午11:36, Longpeng (Mike) wrote: >> 在 2019/7/10 11:25, Jason Wang 写道: >>> On 2019/7/8 下午5:47, Dr. David Alan Gilbert wrote: * longpeng (longpe...@huawei.com) wrote: > Hi guys, > > We found a qemu core in our testing environment, th

[Qemu-devel] [Bug 1585533] Re: cache-miss-rate / Invalid JSON

2019-07-26 Thread Launchpad Bug Tracker
[Expired for QEMU because there has been no activity for 60 days.] ** Changed in: qemu Status: Incomplete => Expired -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1585533 Title: cache-miss-

[Qemu-devel] [Bug 1590322] Re: mouse_button 0 takes back to initial position

2019-07-26 Thread Launchpad Bug Tracker
[Expired for QEMU because there has been no activity for 60 days.] ** Changed in: qemu Status: Incomplete => Expired -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1590322 Title: mouse_butto

Re: [Qemu-devel] [Virtio-fs] [PATCH 1/5] virtiofsd: skip unnecessary vu_queue_get_avail_bytes()

2019-07-26 Thread Liu Bo
On Fri, Jul 26, 2019 at 10:10:59AM +0100, Stefan Hajnoczi wrote: > When debug output is disabled there is no need to calculate the number > of in/out bytes available. > > There is also no need to skip a request if there are 0 out bytes. The > request parsing code already handles invalid requests.

Re: [Qemu-devel] [Virtio-fs] [PATCH 2/5] virtiofsd: prevent lo_lookup() NULL pointer dereference

2019-07-26 Thread Liu Bo
On Fri, Jul 26, 2019 at 10:11:00AM +0100, Stefan Hajnoczi wrote: > Most lo_do_lookup() have already checked that the parent inode exists. > lo_lookup() hasn't and can therefore hit a NULL pointer dereference when > lo_inode(req, parent) returns NULL. > Sigh...this one has been fixed by 3 different

[Qemu-devel] [for-4.2 PATCH 2/2] hw/i386: AMD-Vi IVRS DMA alias support

2019-07-26 Thread Alex Williamson
When we account for DMA aliases in the PCI address space, we can no longer use a single IVHD entry in the IVRS covering all devices. We instead need to walk the PCI bus and create alias ranges when we find a conventional bus. These alias ranges cannot overlap with a "Select All" range (as current

[Qemu-devel] [for-4.2 PATCH 0/2] PCI DMA alias support

2019-07-26 Thread Alex Williamson
Please see patch 1/ for the motivation and utility of this series. This v1 submission improves on the previous RFC with revised commit logs, comments, and more testing, and the missing IVRS support for DMA alias ranges is now included. Testing has been done with Linux guests with both SeaBIOS and

[Qemu-devel] [for-4.2 PATCH 1/2] pci: Use PCI aliases when determining device IOMMU address space

2019-07-26 Thread Alex Williamson
PCIe requester IDs are used by modern IOMMUs to differentiate devices in order to provide a unique IOVA address space per device. These requester IDs are composed of the bus/device/function (BDF) of the requesting device. Conventional PCI pre-dates this concept and is simply a shared parallel bus

Re: [Qemu-devel] [Qemu-block] [PATCH v3 0/4] virtio/block: handle zoned backing devices

2019-07-26 Thread Dmitry Fomichev
John, please see inline... Regards, Dmitry On Thu, 2019-07-25 at 13:58 -0400, John Snow wrote: > > On 7/23/19 6:19 PM, Dmitry Fomichev wrote: > > Currently, attaching zoned block devices (i.e., storage devices > > compliant to ZAC/ZBC standards) using several virtio methods doesn't > > work prop

[Qemu-devel] Question regarding tcg trace-events

2019-07-26 Thread sainath grandhi
Hello I am working with qemu tracing support and combined with tcg. I read that if tcg property is used for trace-event, it generates a trace-event once during translation and another trace-event after the execution. I made the following change in target/i386/translate.c -static inline void gen_o

[Qemu-devel] [PULL] riscv/boot: Fixup the RISC-V firmware warning

2019-07-26 Thread Palmer Dabbelt
From: Alistair Francis Fix a typo in the warning message displayed to users, don't print the message when running inside qtest and don't mention a specific QEMU version for the deprecation. Signed-off-by: Alistair Francis Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Palmer Dabbelt ---

[Qemu-devel] [PULL] RISC-V Patch for 4.1-rc3

2019-07-26 Thread Palmer Dabbelt
The following changes since commit bf8b024372bf8abf5a9f40bfa65eeefad23ff988: Update version for v4.1.0-rc2 release (2019-07-23 18:28:08 +0100) are available in the Git repository at: git://github.com/palmer-dabbelt/qemu.git tags/riscv-for-master-4.1-rc3 for you to fetch changes up to 75ea25

[Qemu-devel] [PATCH 2/2] iotests: use python logging for iotests.log()

2019-07-26 Thread John Snow
We can turn logging on/off globally instead of per-function. Remove use_log from run_job, and use python logging to turn on diffable output when we run through a script entry point. (No, I have no idea why output on 245 changed. I really don't.) Signed-off-by: John Snow --- tests/qemu-iotests/

[Qemu-devel] [PATCH 1/2] iotests: add script_initialize

2019-07-26 Thread John Snow
Like script_main, but doesn't require a single point of entry. Replace all existing initialization sections with this drop-in replacement. This brings debug support to all existing script-style iotests. Note: supported_oses=['linux'] was omitted, as it is a default argument. Signed-off-by: John S

[Qemu-devel] [PATCH 0/2] iotests: use python logging

2019-07-26 Thread John Snow
Based-on: https://github.com/jnsnow/qemu/tree/bitmaps This is a quick hack-em-up of what it might look like to use python logging to enable output conditionally on iotests.log(). We unify an initialization call (which also enables debugging output for those tests with -d) and then make the switch

Re: [Qemu-devel] [Qemu-riscv] [PATCH-4.2 v1 2/6] target/riscv: Remove strict perm checking for CSR R/W

2019-07-26 Thread Alistair Francis
On Fri, Jul 26, 2019 at 2:00 PM Jonathan Behrens wrote: > > The remaining checks are not sufficient. If you look at the bottom of csr.c, > you'll see that for most of the M-mode CSRs the predicate is set to "any" > which unconditionally allows access regardless of privilege mode. The S-mode > C

Re: [Qemu-devel] [Qemu-riscv] [PATCH-4.2 v1 2/6] target/riscv: Remove strict perm checking for CSR R/W

2019-07-26 Thread Jonathan Behrens
The remaining checks are not sufficient. If you look at the bottom of csr.c, you'll see that for most of the M-mode CSRs the predicate is set to "any" which unconditionally allows access regardless of privilege mode. The S-mode CSR predicates similarly only check that supervisor mode exists, but no

Re: [Qemu-devel] Exploring Sphinx, autodoc, apidoc, and coverage tools for python/qemu

2019-07-26 Thread Eduardo Habkost
CCing Cleber and Gabriel. Comments at the "conclusions" section below: On Wed, Jul 24, 2019 at 05:06:41PM -0400, John Snow wrote: > Has anyone on this list experimented with these tools? > > I was hoping to use them to document things like the python/machine.py > and python/qmp.py modules to hel

Re: [Qemu-devel] [RFC 09/19] fuzz: use mtree_info to find mapped addresses

2019-07-26 Thread Paolo Bonzini
On 26/07/19 15:04, Stefan Hajnoczi wrote: > On Thu, Jul 25, 2019 at 03:23:51AM +, Oleinik, Alexander wrote: >> Locate mmio and port i/o addresses that are mapped to devices so we can >> limit the fuzzer to only these addresses. This should be replaced with >> a sane way of enumaring these memor

Re: [Qemu-devel] [QEMU-SECURITY] ide: fix assertion in ide_dma_cb() to prevent qemu DoS from quest

2019-07-26 Thread Alexander Popov
26 июля 2019 г. 2:25:03 GMT+02:00, John Snow пишет: >Oh, this is fun. ... >I can worry about a proper fix for 4.2+. Hello John, Thanks for your letter. I double-checked the git history and mailing list, I'm still sure that my fix for this assertion is correct. You know this code very wel

Re: [Qemu-devel] [RFC 07/19] fuzz: Modify libqtest to directly invoke qtest.c

2019-07-26 Thread Paolo Bonzini
On 26/07/19 14:56, Stefan Hajnoczi wrote: > This should use indirection: a function pointer to dispatch to either > the socket or the internal qtest_process_inbuf() call. > > With a bit of refactoring you can eliminate the #ifdefs and treat the > socket fd as one backend and direct invocation as a

Re: [Qemu-devel] [PATCH for-3.1.1 0/2] tpm: Improve on error handling

2019-07-26 Thread no-reply
Patchew URL: https://patchew.org/QEMU/20190726164921.1655115-1-stef...@linux.vnet.ibm.com/ Hi, This series failed the asan build test. Please find the testing commands and their output below. If you have Docker installed, you can probably reproduce it locally. === TEST SCRIPT BEGIN === #!/bin

Re: [Qemu-devel] [PATCH 22/28] Include hw/boards.h a bit less

2019-07-26 Thread Alistair Francis
On Fri, Jul 26, 2019 at 5:10 AM Markus Armbruster wrote: > > hw/boards.h pulls in almost 60 headers. The less we include it into > headers, the better. As a first step, drop superfluous inclusions, > and downgrade some more to what's actually needed. Gets rid of just > one inclusion into a head

Re: [Qemu-devel] [PATCH-4.2 v1 5/6] target/riscv: Update the Hypervisor CSRs to v0.4

2019-07-26 Thread Alistair Francis
On Fri, Jul 26, 2019 at 10:41 AM Chih-Min Chao wrote: > > > > On Fri, Jul 26, 2019 at 2:55 AM Alistair Francis > wrote: >> >> Update the Hypervisor CSR addresses to match the v0.4 spec. >> >> Signed-off-by: Alistair Francis >> --- >> target/riscv/cpu_bits.h | 35 ++-

Re: [Qemu-devel] [PATCH 2/3] riscv: sivive_u: Add dummy serial clock and aliases entry for uart

2019-07-26 Thread Alistair Francis
On Fri, Jul 19, 2019 at 6:41 AM Guenter Roeck wrote: > > The riscv uart needs valid clocks. This requires a refereence > to the clock node. Since the SOC clock is not emulated by qemu, > add a reference to a fixed clock instead. The clock-frequency > entry in the uart node does not seem to be nece

Re: [Qemu-devel] [PATCH v3] tests/boot_linux_console: add a test for riscv64 + virt

2019-07-26 Thread Alistair Francis
On Fri, Jul 26, 2019 at 10:12 AM Chih-Min Chao wrote: > > > > On Thu, Jul 25, 2019 at 8:12 AM Alistair Francis wrote: >> >> On Tue, Jul 23, 2019 at 11:46 PM Chih-Min Chao >> wrote: >> > >> > Similar to the mips + malta test, it boots a Linux kernel on a virt >> > board and verify the serial is

Re: [Qemu-devel] [Qemu-riscv] [PATCH-4.2 v1 2/6] target/riscv: Remove strict perm checking for CSR R/W

2019-07-26 Thread Alistair Francis
On Thu, Jul 25, 2019 at 2:48 PM Jonathan Behrens wrote: > > Unless I'm missing something, this is the only place that QEMU checks the > privilege level for read and writes to CSRs. The exact computation used here > won't work with the hypervisor extension, but we also can't just get rid of > pr

Re: [Qemu-devel] [PATCH] Fix Guest VM crash due to iSCSI Sense Key error

2019-07-26 Thread John Snow
Paolo, Stefan and Kevin: can I loop you in here? I'm quite uncertain about this and I'd like to clear this up quickly if it's possible: On 7/25/19 8:58 PM, John Snow wrote: > > > On 7/7/19 10:55 PM, shaju.abra...@nutanix.com wrote: >> From: Shaju Abraham >> >> During the IDE DMA transfer for a

Re: [Qemu-devel] [RFC 06/19] fuzz: Add ramfile for fast vmstate/vmload

2019-07-26 Thread Paolo Bonzini
On 26/07/19 21:36, Oleinik, Alexander wrote: >> >> Please add the ram file to qemu-file.c instead of duplicating QEMUFile. >> > I think we should be able to replace all of this simply by using > memfd_create. Since it acts as a regular file, it will work with the > existing code (likely with perf

Re: [Qemu-devel] [RFC 06/19] fuzz: Add ramfile for fast vmstate/vmload

2019-07-26 Thread Oleinik, Alexander
On 7/26/19 8:47 AM, Stefan Hajnoczi wrote: > On Thu, Jul 25, 2019 at 03:23:49AM +, Oleinik, Alexander wrote: >> The ramfile allows vmstate to be saved and restored directly onto the >> heap. >> >> Signed-off-by: Alexander Oleinik >> --- >> tests/fuzz/ramfile.c | 127 +

Re: [Qemu-devel] [PATCH 66/67] target/arm: Move singlestep check from gen_jmp to gen_goto_tb

2019-07-26 Thread Richard Henderson
On 7/26/19 11:13 AM, Peter Maydell wrote: > On Fri, 26 Jul 2019 at 18:51, Richard Henderson > wrote: >> >> We miss quite a number of single-step events by having >> the check in the wrong place. >> >> Signed-off-by: Richard Henderson >> --- >> target/arm/translate.c | 16 ++-- >> 1 f

Re: [Qemu-devel] [PATCH 00/67] target/arm: Convert aa32 base isa to decodetree

2019-07-26 Thread no-reply
Patchew URL: https://patchew.org/QEMU/20190726175032.6769-1-richard.hender...@linaro.org/ Hi, This series seems to have some coding style problems. See output below for more information: Type: series Subject: [Qemu-devel] [PATCH 00/67] target/arm: Convert aa32 base isa to decodetree Message-

[Qemu-devel] [PATCH 42/67] target/arm: Simplify disas_arm_insn

2019-07-26 Thread Richard Henderson
Fold away all of the cases that now just goto illegal_op, because all of their internal bits are now in decodetree. Signed-off-by: Richard Henderson --- target/arm/translate.c | 69 ++ 1 file changed, 16 insertions(+), 53 deletions(-) diff --git a/target/

Re: [Qemu-devel] [PATCH v4 7/7] monitor: adding info tbs, tb, and coverset

2019-07-26 Thread Alex Bennée
vandersonmr writes: > Adding info [tbs|tb|coverset] commands to HMP. > These commands allow the exploration of TBs > generated by the TCG. Understand which one > hotter, with more guest/host instructions... > and examine their guest, host and IR code. > > The goal of this command is to allow th

Re: [Qemu-devel] [PATCH 66/67] target/arm: Move singlestep check from gen_jmp to gen_goto_tb

2019-07-26 Thread Peter Maydell
On Fri, 26 Jul 2019 at 18:51, Richard Henderson wrote: > > We miss quite a number of single-step events by having > the check in the wrong place. > > Signed-off-by: Richard Henderson > --- > target/arm/translate.c | 16 ++-- > 1 file changed, 6 insertions(+), 10 deletions(-) > > diff

[Qemu-devel] [PATCH 44/67] target/arm: Convert T16 data-processing (two low regs)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 152 ++--- target/arm/t16.decode | 36 ++ 2 files changed, 43 insertions(+), 145 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index db93b12608..17a0eea425 1006

[Qemu-devel] [PATCH 57/67] target/arm: Convert T16, nop hints

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 3 +-- target/arm/t16.decode | 17 + 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index c9386ceefb..55404414a2 100644 --- a/target/arm/translate.c +++

[Qemu-devel] [PATCH 54/67] target/arm: Convert T16, extract

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 14 +- target/arm/t16.decode | 10 ++ 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 8dd88419fe..9c8e11bd3a 100644 --- a/target/arm/translate.

[Qemu-devel] [PATCH 66/67] target/arm: Move singlestep check from gen_jmp to gen_goto_tb

2019-07-26 Thread Richard Henderson
We miss quite a number of single-step events by having the check in the wrong place. Signed-off-by: Richard Henderson --- target/arm/translate.c | 16 ++-- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index c2b8b86fd2.

[Qemu-devel] [PATCH 64/67] target/arm: Convert T16, long branches

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 89 +++--- target/arm/t16.decode | 3 ++ 2 files changed, 43 insertions(+), 49 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 480515a0a9..a8db6e9280 100644 --- a/t

[Qemu-devel] [PATCH 61/67] target/arm: Convert T16, shift immediate

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 26 ++ target/arm/t16.decode | 8 2 files changed, 10 insertions(+), 24 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index f3a946d8c9..f9022fe65c 100644 --- a/target/arm/

[Qemu-devel] [PATCH 11/67] target/arm: Add stubs for aa32 decodetree

2019-07-26 Thread Richard Henderson
Add the infrastructure that will become the new decoder. No instructions adjusted so far. Signed-off-by: Richard Henderson --- target/arm/translate.c | 45 +++- target/arm/Makefile.objs | 18 +++ target/arm/a32-uncond.decode | 23

[Qemu-devel] [PATCH 67/67] target/arm: Merge gen_bx_im into trans_BLX_i

2019-07-26 Thread Richard Henderson
This is the only remaining use of gen_bx_im. Simplify, since we know the destination mode is changing. Use gen_jmp for the actual branch. Signed-off-by: Richard Henderson --- target/arm/translate.c | 23 +++ 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/tar

[Qemu-devel] [PATCH 58/67] target/arm: Convert T16, push and pop

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 83 ++ target/arm/t16.decode | 10 + 2 files changed, 22 insertions(+), 71 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 55404414a2..5d0d0779c8 100644 ---

[Qemu-devel] [PATCH 41/67] target/arm: Simplify disas_thumb2_insn

2019-07-26 Thread Richard Henderson
Fold away all of the cases that now just goto illegal_op, because all of their internal bits are now in decodetree. Signed-off-by: Richard Henderson --- target/arm/translate.c | 78 ++ 1 file changed, 3 insertions(+), 75 deletions(-) diff --git a/target/a

[Qemu-devel] [PATCH 65/67] target/arm: Clean up disas_thumb_insn

2019-07-26 Thread Richard Henderson
Now that everything is converted, remove the rest of the legacy decode. Signed-off-by: Richard Henderson --- target/arm/translate.c | 27 ++- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index a8db6e9280..c

[Qemu-devel] [PATCH 51/67] target/arm: Convert T16 branch and exchange

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 64 +++--- target/arm/t16.decode | 10 +++ 2 files changed, 33 insertions(+), 41 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 9bdcb91537..e2183eb543 100644 --

[Qemu-devel] [PATCH 55/67] target/arm: Convert T16, Change processor state

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 85 -- target/arm/t16.decode | 12 ++ 2 files changed, 52 insertions(+), 45 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 9c8e11bd3a..8f2adbbc7d 100644 ---

[Qemu-devel] [PATCH 56/67] target/arm: Convert T16, Reverse bytes

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 18 +++--- target/arm/t16.decode | 9 + 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 8f2adbbc7d..c9386ceefb 100644 --- a/target/arm/transla

[Qemu-devel] [PATCH 60/67] target/arm: Convert T16, Miscellaneous 16-bit instructions

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 111 - target/arm/t16.decode | 31 2 files changed, 54 insertions(+), 88 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 97c472c8f7..f3a946d8c9 100

[Qemu-devel] [PATCH 52/67] target/arm: Convert T16 add, compare, move (two high registers)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 49 ++ target/arm/t16.decode | 10 + 2 files changed, 12 insertions(+), 47 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index e2183eb543..23f5f982f5 100644

[Qemu-devel] [PATCH 63/67] target/arm: Convert T16, Unconditional branch

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 9 ++--- target/arm/t16.decode | 6 ++ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index f1cab437e0..480515a0a9 100644 --- a/target/arm/translate.c +++ b/targe

[Qemu-devel] [PATCH 62/67] target/arm: Convert T16, load (literal)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 42 ++ target/arm/t16.decode | 4 2 files changed, 6 insertions(+), 40 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index f9022fe65c..f1cab437e0 100644 --- a/

[Qemu-devel] [PATCH 59/67] target/arm: Convert T16, Conditional branches, Supervisor call

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 26 +++--- target/arm/t16.decode | 12 2 files changed, 15 insertions(+), 23 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 5d0d0779c8..97c472c8f7 100644 --- a/target/

[Qemu-devel] [PATCH 53/67] target/arm: Convert T16 adjust sp (immediate)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 15 ++- target/arm/t16.decode | 9 + 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 23f5f982f5..8dd88419fe 100644 --- a/target/arm/translate.

[Qemu-devel] [PATCH 43/67] target/arm: Add skeleton for T16 decodetree

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 6 ++ target/arm/Makefile.objs | 6 ++ target/arm/t16.decode| 20 3 files changed, 32 insertions(+) create mode 100644 target/arm/t16.decode diff --git a/target/arm/translate.c b/target/arm/transl

[Qemu-devel] [PATCH 38/67] target/arm: Convert Table Branch

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 62 +++--- target/arm/t32.decode | 8 +- 2 files changed, 41 insertions(+), 29 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 87cbadc6cb..9c6623fb6b 100644 ---

[Qemu-devel] [PATCH 47/67] target/arm: Convert T16 add pc/sp (immediate)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 12 +--- target/arm/t16.decode | 7 +++ 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 28f274ca7c..525276ed13 100644 --- a/target/arm/translate.c +++

[Qemu-devel] [PATCH 49/67] target/arm: Convert T16 add/sub (3 low, 2 low and imm)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 26 ++ target/arm/t16.decode | 16 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index f551fde3db..692891dbe0 100644 --- a/tar

[Qemu-devel] [PATCH 31/67] target/arm: Convert SVC

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 19 +-- target/arm/a32.decode | 4 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 3f14e5c7f3..7ea118a795 100644 --- a/target/arm/translate.c

[Qemu-devel] [PATCH 40/67] target/arm: Convert TT

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 88 ++ target/arm/t32.decode | 5 ++- 2 files changed, 32 insertions(+), 61 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index df515e9341..a750a2c092 100644 --- a/

[Qemu-devel] [PATCH 34/67] target/arm: Convert CPS (privileged)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 87 +++- target/arm/a32-uncond.decode | 3 ++ target/arm/t32.decode| 3 ++ 3 files changed, 42 insertions(+), 51 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c

[Qemu-devel] [PATCH 33/67] target/arm: Convert Clear-Exclusive, Barriers

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 122 +++ target/arm/a32-uncond.decode | 10 +++ target/arm/t32.decode| 10 +++ 3 files changed, 73 insertions(+), 69 deletions(-) diff --git a/target/arm/translate.c b/target/arm/transla

[Qemu-devel] [PATCH 39/67] target/arm: Convert SG

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 51 -- target/arm/t32.decode | 5 - 2 files changed, 33 insertions(+), 23 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 9c6623fb6b..df515e9341 100644 ---

[Qemu-devel] [PATCH 32/67] target/arm: Convert RFE and SRS

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 150 ++- target/arm/a32-uncond.decode | 8 ++ target/arm/t32.decode| 12 +++ 3 files changed, 81 insertions(+), 89 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translat

[Qemu-devel] [PATCH 30/67] target/arm: Convert B, BL, BLX (immediate)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 134 +++ target/arm/a32-uncond.decode | 8 +++ target/arm/a32.decode| 8 +++ target/arm/t32.decode| 79 + 4 files changed, 122 insertions(+), 107 deletions(

[Qemu-devel] [PATCH 48/67] target/arm: Convert T16 load/store multiple

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 47 +++--- target/arm/t16.decode | 8 +++ 2 files changed, 16 insertions(+), 39 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 525276ed13..f551fde3db 100644 --

[Qemu-devel] [PATCH 25/67] target/arm: Convert Parallel addition and subtraction

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 229 - target/arm/a32.decode | 44 target/arm/t32.decode | 44 3 files changed, 200 insertions(+), 117 deletions(-) diff --git a/target/arm/translate.c b/target/arm/transla

[Qemu-devel] [PATCH 16/67] target/arm: Convert Halfword multiply and multiply accumulate

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 216 ++--- target/arm/a32.decode | 20 target/arm/t32.decode | 29 ++ 3 files changed, 167 insertions(+), 98 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c in

[Qemu-devel] [PATCH 19/67] target/arm: Convert Cyclic Redundancy Check

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 121 +++-- target/arm/a32.decode | 9 +++ target/arm/t32.decode | 7 +++ 3 files changed, 72 insertions(+), 65 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index f

[Qemu-devel] [PATCH 27/67] target/arm: Convert Signed multiply, signed and unsigned divide

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 471 ++--- target/arm/a32.decode | 22 ++ target/arm/t32.decode | 18 ++ 3 files changed, 248 insertions(+), 263 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 1

[Qemu-devel] [PATCH 45/67] target/arm: Convert T16 load/store (register offset)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 51 ++ target/arm/t16.decode | 15 + 2 files changed, 17 insertions(+), 49 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 17a0eea425..7b87621315 100

[Qemu-devel] [PATCH 24/67] target/arm: Convert USAD8, USADA8, SBFX, UBFX, BFC, BFI, UDF

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 201 + target/arm/a32.decode | 20 target/arm/t32.decode | 19 3 files changed, 144 insertions(+), 96 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c inde

[Qemu-devel] [PATCH 37/67] target/arm: Convert Unallocated memory hint

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 8 target/arm/a32-uncond.decode | 8 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 5366741d7b..87cbadc6cb 100644 --- a/target/arm/translate.

[Qemu-devel] [PATCH 36/67] target/arm: Convert PLI, PLD, PLDW

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 37 +++- target/arm/a32-uncond.decode | 10 ++ 2 files changed, 30 insertions(+), 17 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 1d07caa62a..5366741d7b

[Qemu-devel] [PATCH 22/67] target/arm: Convert load/store (register, immediate, literal)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 793 ++--- target/arm/a32.decode | 120 +++ target/arm/t32.decode | 141 3 files changed, 611 insertions(+), 443 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translat

[Qemu-devel] [PATCH 29/67] target/arm: Convert LDM, STM

2019-07-26 Thread Richard Henderson
While unifying all of these paths, remove the constrained unpredictable test for "wback && registers == 1" from the T2 encoding that isn't constrained unpredictable for the A1 encoding. The A1 behaviour is allowed for the T2 behaviour. Signed-off-by: Richard Henderson --- target/arm/translate.c

[Qemu-devel] [PATCH 50/67] target/arm: Convert T16 one low register and immediate

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 44 ++ target/arm/t16.decode | 11 +++ 2 files changed, 13 insertions(+), 42 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 692891dbe0..9bdcb91537 10064

[Qemu-devel] [PATCH 28/67] target/arm: Convert MOVW, MOVT

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 89 -- target/arm/a32.decode | 6 +++ target/arm/t32.decode | 9 + 3 files changed, 48 insertions(+), 56 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 5

[Qemu-devel] [PATCH 46/67] target/arm: Convert T16 load/store (immediate offset)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 94 +++--- target/arm/t16.decode | 33 +++ 2 files changed, 38 insertions(+), 89 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 7b87621315..28f274ca7c 1

[Qemu-devel] [PATCH 26/67] target/arm: Convert Packing, unpacking, saturation, and reversal

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 554 + target/arm/a32.decode | 32 +++ target/arm/t32.decode | 37 ++- 3 files changed, 302 insertions(+), 321 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index

[Qemu-devel] [PATCH 23/67] target/arm: Convert Synchronization primitives

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 560 ++--- target/arm/a32.decode | 48 target/arm/t32.decode | 46 3 files changed, 396 insertions(+), 258 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c ind

[Qemu-devel] [PATCH 15/67] target/arm: Convert Saturating addition and subtraction

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/helper.h| 1 - target/arm/op_helper.c | 15 - target/arm/translate.c | 74 +++--- target/arm/a32.decode | 10 ++ target/arm/t32.decode | 9 + 5 files changed, 66 insertions(+), 43 deletions

[Qemu-devel] [PATCH 09/67] target/arm: Fold a pc load into load_reg

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index e316eeb312..53c46fcdc4 100644 --- a/target/arm/translate.c +++ b/target/arm/translate.c @@ -9161,11 +9161,7 @@

[Qemu-devel] [PATCH 13/67] target/arm: Convert Data Processing (reg, reg-shifted-reg, imm)

2019-07-26 Thread Richard Henderson
Do these all in one lump because these are all logically intertwined. Signed-off-by: Richard Henderson --- target/arm/translate.c | 747 - target/arm/a32.decode | 84 + target/arm/t32.decode | 91 + 3 files changed, 536 insertions(+), 386 delet

[Qemu-devel] [PATCH 35/67] target/arm: Convert SETEND

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 22 +- target/arm/a32-uncond.decode | 4 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 8dbe189df7..1d07caa62a 100644 --- a/target/a

[Qemu-devel] [PATCH 20/67] target/arm: Convert the rest of A32 Miscelaneous instructions

2019-07-26 Thread Richard Henderson
This fixes an exiting bug with the T5 encoding of SUBS PC, LR, #IMM, in that it may be executed from user mode as with any other encoding of SUBS, not as ERET. Signed-off-by: Richard Henderson --- target/arm/translate.c | 273 +++-- target/arm/a32.decode | 2

[Qemu-devel] [PATCH 10/67] target/arm: Move test for AL into arm_skip_unless

2019-07-26 Thread Richard Henderson
We will shortly be calling this function much more often. Signed-off-by: Richard Henderson --- target/arm/translate.c | 28 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 53c46fcdc4..36419025db 10

[Qemu-devel] [PATCH 18/67] target/arm: Convert MRS/MSR (banked, register)

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 226 ++--- target/arm/a32.decode | 14 +++ target/arm/t32.decode | 40 ++-- 3 files changed, 142 insertions(+), 138 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c

[Qemu-devel] [PATCH 21/67] target/arm: Convert T32 ADDW/SUBW

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 24 +--- target/arm/a32.decode | 1 + target/arm/t32.decode | 19 +++ 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 09310b1

[Qemu-devel] [PATCH 08/67] target/arm: Use store_reg_from_load in thumb2 code

2019-07-26 Thread Richard Henderson
There is an extra always-true ARMv5 test, but this will become more obvious once we start unifying the implementation of A32+T32. Signed-off-by: Richard Henderson --- target/arm/translate.c | 12 +++- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/target/arm/translate.c b/

[Qemu-devel] [PATCH 06/67] target/arm: Introduce pc_read

2019-07-26 Thread Richard Henderson
We currently have 3 different ways of computing the architectural value of "PC" as seen in the ARM ARM. The value of s->pc has been incremented past the current insn, but that is all. Thus for a32, PC = s->pc + 4; for t32, PC = s->pc; for t16, PC = s->pc + 2. These differing computations make it

[Qemu-devel] [PATCH 17/67] target/arm: Convert MSR (immediate) and hints

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 61 +- target/arm/a32.decode | 25 + target/arm/t32.decode | 17 3 files changed, 84 insertions(+), 19 deletions(-) diff --git a/target/arm/translate.c b/target/ar

[Qemu-devel] [PATCH 14/67] target/arm: Convert multiply and multiply accumulate

2019-07-26 Thread Richard Henderson
Signed-off-by: Richard Henderson --- target/arm/translate.c | 214 - target/arm/a32.decode | 17 target/arm/t32.decode | 19 3 files changed, 163 insertions(+), 87 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c inde

[Qemu-devel] [PATCH 07/67] target/arm: Introduce add_reg_for_lit

2019-07-26 Thread Richard Henderson
Used only on the thumb side so far, but will be more obvious once we start unifying the implementation of A32+T32. Signed-off-by: Richard Henderson --- target/arm/translate-vfp.inc.c | 34 +-- target/arm/translate.c | 163 +++-- 2 files changed, 76 insert

[Qemu-devel] [PATCH 12/67] target/arm: Introduce gen_illegal_op

2019-07-26 Thread Richard Henderson
Unify the code sequence for generating an illegal opcode exception. Signed-off-by: Richard Henderson --- target/arm/translate-vfp.inc.c | 3 +-- target/arm/translate.c | 21 +++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/target/arm/translate-vfp.i

[Qemu-devel] [PATCH 04/67] target/arm: Remove offset argument to gen_exception_internal_insn

2019-07-26 Thread Richard Henderson
The actual argument is 0 for all callers. Signed-off-by: Richard Henderson --- target/arm/translate.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/target/arm/translate.c b/target/arm/translate.c index 19b126d4f3..0848fb933a 100644 --- a/target/arm/translate.c +++ b

[Qemu-devel] [PATCH 05/67] target/arm: Use the saved value of the insn address

2019-07-26 Thread Richard Henderson
The address of the current insn is still available in s->base.pc_next, and need not be recomputed from s->pc - 4. Signed-off-by: Richard Henderson --- target/arm/translate.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/target/arm/translate.c b/target/arm/trans

[Qemu-devel] [PATCH 00/67] target/arm: Convert aa32 base isa to decodetree

2019-07-26 Thread Richard Henderson
This unifies the implementation of the actual instructions for a32, t32, and t16. In order to make this happen, we need several preliminary cleanups. Most importantly to how we handle the architectural representation of PC. I attempt to convert single groups of instructions at once, as they are

  1   2   3   4   >