Re: [Qemu-devel] [RFC PATCH 12/13] intel_iommu: do replay when context invalidate

2016-12-28 Thread Liu, Yi L
> Before this one we only invalidate context cache when we receive context > entry invalidations. However it's possible that the invalidation also > contains a domain switch (only if cache-mode is enabled for vIOMMU). In > that case we need to notify all the registered components about the new >

Re: [Qemu-devel] [RFC PATCH 11/13] intel_iommu: provide its own replay() callback

2016-12-28 Thread Liu, Yi L
> The default replay() don't work for VT-d since vt-d will have a huge > default memory region which covers address range 0-(2^64-1). This will > normally bring a dead loop when guest starts. > > The solution is simple - we don't walk over all the regions. Instead, we > jump over the regions when

[Qemu-devel] Reducing guest cpu usage

2016-12-28 Thread Programmingkid
There is a program that I run inside of QEMU that doesn't use the virtual CPU very efficiently. It causes QEMU to use 100% of the guest's CPU time. I was wondering if there were a way to reduce the amount of host CPU time that a guest CPU can use? This feature would help prevent laptops from

Re: [Qemu-devel] [PATCH 0/4] RFC: A VFIO based block driver for NVMe device

2016-12-28 Thread Tian, Kevin
> From: Fam Zheng > Sent: Wednesday, December 21, 2016 12:32 AM > > This series adds a new protocol driver that is intended to achieve about 20% > better performance for latency bound workloads (i.e. synchronous I/O) than > linux-aio when guest is exclusively accessing a NVMe device, by talking

[Qemu-devel] [PATCH v2] doc/pcie: correct command line examples

2016-12-28 Thread Cao jin
Nit picking: Multi-function PCI Express Root Ports should mean that 'addr' property is mandatory, and slot is optional because it defaults to 0, and 'chassis' is mandatory for 2nd & 3rd root port because it defaults to 0 too. Bonus: fix a typo(2->3) Signed-off-by: Cao jin

Re: [Qemu-devel] [PATCH] doc/pcie: correct command line examples

2016-12-28 Thread Cao jin
On 12/28/2016 11:21 PM, Andrew Jones wrote: > On Wed, Dec 28, 2016 at 03:24:30PM +0200, Marcel Apfelbaum wrote: >> On 12/27/2016 09:40 AM, Cao jin wrote: >>> Nit picking: Multi-function PCI Express Root Ports should mean that >>> 'addr' property is mandatory, and slot is optional because it is

Re: [Qemu-devel] [PULL v2 00/12] M68k for 2.9 patches

2016-12-28 Thread Peter Maydell
On 27 December 2016 at 17:53, Laurent Vivier wrote: > The following changes since commit e5fdf663cf01f824f0e29701551a2c29554d80a4: > > Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20161223' into > staging (2016-12-27 14:56:47 +) > > are available in the git

Re: [Qemu-devel] QEMU Advent Calendar - Final day

2016-12-28 Thread Stefan Hajnoczi
On Dec 24, 2016 9:04 AM, "Thomas Huth" wrote: Hi all, the last door of the QEMU advent calendar 2016 can now be opened (http://www.qemu-advent-calendar.org/2016/index.html#day-24), so we'd now like to say thank you to everybody who has contributed to or followed the advent

[Qemu-devel] [PATCH v3] build: include sys/sysmacros.h for major() and minor()

2016-12-28 Thread Christopher Covington
The definition of the major() and minor() macros are moving within glibc to . Include this header when it is available to avoid the following sorts of build-stopping messages: qga/commands-posix.c: In function ‘dev_major_minor’: qga/commands-posix.c:656:13: error: In the GNU C Library, "major" is

Re: [Qemu-devel] [PATCH v2] build: include sys/sysmacros.h for major() and minor()

2016-12-28 Thread Christopher Covington
Hi Eric, On 12/28/2016 11:10 AM, Eric Blake wrote: > On 12/28/2016 08:53 AM, Christopher Covington wrote: >> The definition of the major() and minor() macros are moving within glibc to >> . Include this header to avoid the following sorts of >> build-stopping messages: >> > >> The additional

[Qemu-devel] [PATCH] target-x86:Add GDB XML register description support

2016-12-28 Thread Abdallah Bouassida
[Qemu-devel] [PATCH] target-x86:Add GDB XML register description support This patch implements XML target description support for X86 and X86-64 architectures in the GDB stub, as the way with ARM and PowerPC: - gdb-xml/32bit-core.xml & gdb-xml/64bit-core.xml: Adding the XML target description

Re: [Qemu-devel] Can qemu reopen image files?

2016-12-28 Thread Christopher Pereira
Hi Eric, There is something I don't understand. We are doing: "virsh save", "qemu-img convert", "qemu-img rebase" and "virsh restore". We only touch the backing chain by doing the rebase while the VM is down. Is there any chance this procedure can destroy data? If so, is there any difference

[Qemu-devel] CMSIS SVD based peripheral definitions

2016-12-28 Thread Liviu Ionescu
CMSIS SVD - The latest release of GNU ARM Eclipse QEMU (2.8.0-20161227) introduced a new technology for implementing peripherals, based on standard CMSIS SVD definitions (http://www.keil.com/pack/doc/CMSIS/SVD/html/index.html). The SVD files are large XML files produced by the silicon

[Qemu-devel] [PATCH v6 5/7] trace: [tcg] Do not generate TCG code to trace dinamically-disabled events

2016-12-28 Thread Lluís Vilanova
If an event is dynamically disabled, the TCG code that calls the execution-time tracer is not generated. Removes the overheads of execution-time tracers for dynamically disabled events. As a bonus, also avoids checking the event state when the execution-time tracer is called from TCG-generated

[Qemu-devel] [PATCH v6 6/7] trace: [tcg, trivial] Re-align generated code

2016-12-28 Thread Lluís Vilanova
Last patch removed a nesting level in generated code. Re-align all code generated by backends to be 4-column aligned. Signed-off-by: Lluís Vilanova --- scripts/tracetool/backend/dtrace.py |2 +- scripts/tracetool/backend/ftrace.py | 20 ++--

[Qemu-devel] [PATCH v6 4/7] exec: [tcg] Use different TBs according to the vCPU's dynamic tracing state

2016-12-28 Thread Lluís Vilanova
Every vCPU now uses a separate set of TBs for each set of dynamic tracing event state values. Each set of TBs can be used by any number of vCPUs to maximize TB reuse when vCPUs have the same tracing state. This feature is later used by tracetool to optimize tracing of guest code events. The

[Qemu-devel] [PATCH v6 2/7] trace: Make trace_get_vcpu_event_count() inlinable

2016-12-28 Thread Lluís Vilanova
Later patches will make use of it. Signed-off-by: Lluís Vilanova --- trace/control-internal.h |5 + trace/control.c |9 ++--- trace/control.h |2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/trace/control-internal.h

[Qemu-devel] [PATCH v6 7/7] trace: [trivial] Statically enable all guest events

2016-12-28 Thread Lluís Vilanova
The optimizations of this series makes it feasible to have them available on all builds. Signed-off-by: Lluís Vilanova --- trace-events |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/trace-events b/trace-events index f74e1d3d22..0a0f4d9cd6

[Qemu-devel] [PATCH v6 3/7] trace: [tcg] Delay changes to dynamic state when translating

2016-12-28 Thread Lluís Vilanova
This keeps consistency across all decisions taken during translation when the dynamic state of a vCPU is changed in the middle of translating some guest code. Signed-off-by: Lluís Vilanova --- cpu-exec.c | 26 ++ include/qom/cpu.h

[Qemu-devel] [PATCH v6 1/7] exec: [tcg] Refactor flush of per-CPU virtual TB cache

2016-12-28 Thread Lluís Vilanova
The function is reused in later patches. Signed-off-by: Lluís Vilanova --- cputlb.c|2 +- include/exec/exec-all.h |6 ++ translate-all.c | 14 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/cputlb.c

[Qemu-devel] [PATCH v6 0/7] trace: [tcg] Optimize per-vCPU tracing states with separate TB caches

2016-12-28 Thread Lluís Vilanova
Optimizes tracing of events with the 'tcg' and 'vcpu' properties (e.g., memory accesses), making it feasible to statically enable them by default on all QEMU builds. Some quick'n'dirty numbers with 400.perlbench (SPECcpu2006) on the train input (medium size - suns.pl) and the guest_mem_before

Re: [Qemu-devel] Looking for a linux-user mode test

2016-12-28 Thread Peter Maydell
On 28 December 2016 at 17:12, Sean Bruno wrote: > On 12/28/16 10:05, Peter Maydell wrote: >> Ideally all of that rework (including the support for properly >> interrupting syscalls without races) should be ported over to >> bsd-user at some point. > > If you have a moment to

[Qemu-devel] [PATCH] linux-user: always start with parallel_cpus set to true

2016-12-28 Thread Laurent Vivier
We always need real atomics, as we can have shared memory between processes. A good test case is the example from futex(2), futex_demo.c: the use case is mmap(...); fork(); Parent and Child: while(...) __sync_bool_compare_and_swap(...) ... futex(...)

Re: [Qemu-devel] Looking for a linux-user mode test

2016-12-28 Thread Sean Bruno
On 12/28/16 10:05, Peter Maydell wrote: > On 28 December 2016 at 15:06, Sean Bruno wrote: >> After some recent-ish changes to how user mode executes things/stuff, >> I'm running into issues with the out of tree bsd-user mode code that >> FreeBSD has been maintaining. It

Re: [Qemu-devel] [PATCH v2] build: include sys/sysmacros.h for major() and minor()

2016-12-28 Thread Peter Maydell
On 28 December 2016 at 16:10, Eric Blake wrote: > On 12/28/2016 08:53 AM, Christopher Covington wrote: >> The definition of the major() and minor() macros are moving within glibc to >> . Include this header to avoid the following sorts of >> build-stopping messages: >> > >> The

Re: [Qemu-devel] [PATCH for-2.9] numa: make -numa parser dynamically allocate CPUs masks

2016-12-28 Thread Eduardo Habkost
On Fri, Nov 18, 2016 at 12:02:54PM +0100, Igor Mammedov wrote: > so it won't impose an additional limits on max_cpus limits > supported by different targets. > > It removes global MAX_CPUMASK_BITS constant and need to > bump it up whenever max_cpus is being increased for > a target above

Re: [Qemu-devel] Looking for a linux-user mode test

2016-12-28 Thread Peter Maydell
On 28 December 2016 at 15:06, Sean Bruno wrote: > After some recent-ish changes to how user mode executes things/stuff, > I'm running into issues with the out of tree bsd-user mode code that > FreeBSD has been maintaining. It looks like the host_signal_handler() > is never

Re: [Qemu-devel] [PATCH] target/i386: Fix bad patch application to translate.c

2016-12-28 Thread Eduardo Habkost
On Sat, Dec 24, 2016 at 08:29:33PM +, Doug Evans wrote: > In commit c52ab08aee6f7d4717fc6b517174043126bd302f, > the patch snippet for the "syscall" insn got applied to "iret". > > Signed-off-by: Doug Evans Patch was corrupt, I have fixed line wrapping by hand and had to use

[Qemu-devel] [PATCH v5 1/6] Pass generic CPUState to gen_intermediate_code()

2016-12-28 Thread Lluís Vilanova
Needed to implement a target-agnostic gen_intermediate_code() in the future. Signed-off-by: Lluís Vilanova Reviewed-by: David Gibson --- include/exec/exec-all.h |2 +- target-alpha/translate.c | 11 +--

[Qemu-devel] [PATCH v5 5/6] target: [tcg, i386] Port to generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- target-i386/translate.c | 304 ++- 1 file changed, 140 insertions(+), 164 deletions(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index 61d73e286f..a63627b470 100644 ---

[Qemu-devel] [PATCH v5 6/6] target: [tcg, arm] Port to generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- target-arm/translate-a64.c | 346 ++--- target-arm/translate.c | 720 ++-- target-arm/translate.h | 42 ++- 3 files changed, 555 insertions(+), 553 deletions(-) diff --git

Re: [Qemu-devel] [RFC PATCH v4 0/6] translate: [tcg] Generic translation framework

2016-12-28 Thread Lluís Vilanova
no-reply writes: > Hi, > Your series failed automatic build test. Please find the testing commands and > their output below. If you have docker installed, you can probably reproduce > it > locally. Oh, my bad. Forgot to remove some of the "restrict" I added on previous versions. Thanks,

[Qemu-devel] [PATCH v5 3/6] target: [tcg] Add generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- include/exec/gen-icount.h |2 include/exec/translate-all_template.h | 73 include/qom/cpu.h | 22 translate-all_template.h | 204 + 4

[Qemu-devel] [PATCH v5 4/6] target: [tcg] Redefine DISAS_* onto the generic translation framework (DJ_*)

2016-12-28 Thread Lluís Vilanova
Temporarily redefine DISAS_* values based on DJ_TARGET. They should disappear as targets get ported to the generic framework. Signed-off-by: Lluís Vilanova --- include/exec/exec-all.h | 11 +++ target-arm/translate.h | 15 ---

[Qemu-devel] [PATCH v5 2/6] queue: Add macro for incremental traversal

2016-12-28 Thread Lluís Vilanova
Adds macro QTAILQ_FOREACH_CONTINUE to support incremental list traversal. Signed-off-by: Lluís Vilanova --- include/qemu/queue.h | 12 1 file changed, 12 insertions(+) diff --git a/include/qemu/queue.h b/include/qemu/queue.h index 342073fb4d..ea6130f1c9

[Qemu-devel] [RFC PATCH v5 0/6] translate: [tcg] Generic translation framework

2016-12-28 Thread Lluís Vilanova
This series proposes a generic (target-agnostic) instruction translation framework. It basically provides a generic main loop for instruction disassembly, which calls target-specific functions when necessary. This generalization makes inserting new code in the main loop easier, and helps in

Re: [Qemu-devel] [RFC PATCH v4 0/6] translate: [tcg] Generic translation framework

2016-12-28 Thread Lluís Vilanova
no-reply writes: > Hi, > Your series failed automatic build test. Please find the testing commands and > their output below. If you have docker installed, you can probably reproduce > it > locally. I did try to compile all targets and it works for me (gcc 6.2.1). I've also tried the oldest gcc

Re: [Qemu-devel] [PATCH v5 4/7] exec: [tcg] Use different TBs according to the vCPU's dynamic tracing state

2016-12-28 Thread Lluís Vilanova
Richard Henderson writes: > On 12/28/2016 06:08 AM, Lluís Vilanova wrote: >> @@ -83,6 +85,13 @@ uint32_t tb_hash_func5(uint64_t a0, uint64_t b0, uint32_t >> e) >> h32 += e * PRIME32_3; >> h32 = rol32(h32, 17) * PRIME32_4; >> >> +if (sizeof(TRACE_QHT_VCPU_DSTATE_TYPE) == sizeof(uint32_t)) {

Re: [Qemu-devel] [PATCH v2] build: include sys/sysmacros.h for major() and minor()

2016-12-28 Thread Eric Blake
On 12/28/2016 08:53 AM, Christopher Covington wrote: > The definition of the major() and minor() macros are moving within glibc to > . Include this header to avoid the following sorts of > build-stopping messages: > > The additional include allows the build to complete on Fedora 26 (Rawhide) >

Re: [Qemu-devel] [PATCH v5 4/7] exec: [tcg] Use different TBs according to the vCPU's dynamic tracing state

2016-12-28 Thread Richard Henderson
On 12/28/2016 06:08 AM, Lluís Vilanova wrote: @@ -83,6 +85,13 @@ uint32_t tb_hash_func5(uint64_t a0, uint64_t b0, uint32_t e) h32 += e * PRIME32_3; h32 = rol32(h32, 17) * PRIME32_4; +if (sizeof(TRACE_QHT_VCPU_DSTATE_TYPE) == sizeof(uint32_t)) { +h32 += f * PRIME32_3; +

Re: [Qemu-devel] [RFC PATCH v4 0/6] translate: [tcg] Generic translation framework

2016-12-28 Thread no-reply
Hi, Your series failed automatic build test. Please find the testing commands and their output below. If you have docker installed, you can probably reproduce it locally. Subject: [Qemu-devel] [RFC PATCH v4 0/6] translate: [tcg] Generic translation framework Type: series Message-id:

[Qemu-devel] [PATCH v4 5/6] target: [tcg, i386] Port to generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- target-i386/translate.c | 304 ++- 1 file changed, 140 insertions(+), 164 deletions(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index 61d73e286f..a63627b470 100644 ---

[Qemu-devel] [PATCH v4 6/6] target: [tcg, arm] Port to generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- target-arm/translate-a64.c | 346 ++--- target-arm/translate.c | 720 ++-- target-arm/translate.h | 42 ++- 3 files changed, 555 insertions(+), 553 deletions(-) diff --git

[Qemu-devel] [PATCH v4 4/6] target: [tcg] Redefine DISAS_* onto the generic translation framework (DJ_*)

2016-12-28 Thread Lluís Vilanova
Temporarily redefine DISAS_* values based on DJ_TARGET. They should disappear as targets get ported to the generic framework. Signed-off-by: Lluís Vilanova --- include/exec/exec-all.h | 11 +++ target-arm/translate.h | 15 ---

[Qemu-devel] [PATCH v4 1/6] Pass generic CPUState to gen_intermediate_code()

2016-12-28 Thread Lluís Vilanova
Needed to implement a target-agnostic gen_intermediate_code() in the future. Signed-off-by: Lluís Vilanova Reviewed-by: David Gibson --- include/exec/exec-all.h |2 +- target-alpha/translate.c | 11 +--

[Qemu-devel] [PATCH v4 3/6] target: [tcg] Add generic translation framework

2016-12-28 Thread Lluís Vilanova
Signed-off-by: Lluís Vilanova --- include/exec/gen-icount.h |2 include/exec/translate-all_template.h | 73 include/qom/cpu.h | 22 translate-all_template.h | 204 + 4

[Qemu-devel] [PATCH v4 2/6] queue: Add macro for incremental traversal

2016-12-28 Thread Lluís Vilanova
Adds macro QTAILQ_FOREACH_CONTINUE to support incremental list traversal. Signed-off-by: Lluís Vilanova --- include/qemu/queue.h | 12 1 file changed, 12 insertions(+) diff --git a/include/qemu/queue.h b/include/qemu/queue.h index 342073fb4d..ea6130f1c9

[Qemu-devel] [RFC PATCH v4 0/6] translate: [tcg] Generic translation framework

2016-12-28 Thread Lluís Vilanova
This series proposes a generic (target-agnostic) instruction translation framework. It basically provides a generic main loop for instruction disassembly, which calls target-specific functions when necessary. This generalization makes inserting new code in the main loop easier, and helps in

[Qemu-devel] [Bug 1649042] Re: Ubuntu 16.04.1 LightDM Resolution Not Correct

2016-12-28 Thread Thomas Huth
OK, if it works with -vga virtio, I think we should close this bug as WONTFIX, since the -vga vmware code is pretty much unmaintained as far as I know (if somebody is willing to fix this there, too, feel free to open this bug again). ** Changed in: qemu Status: New => Won't Fix -- You

Re: [Qemu-devel] [PATCH] doc/pcie: correct command line examples

2016-12-28 Thread Andrew Jones
On Wed, Dec 28, 2016 at 03:24:30PM +0200, Marcel Apfelbaum wrote: > On 12/27/2016 09:40 AM, Cao jin wrote: > > Nit picking: Multi-function PCI Express Root Ports should mean that > > 'addr' property is mandatory, and slot is optional because it is default > > to 0, and 'chassis' is mandatory for

[Qemu-devel] Looking for a linux-user mode test

2016-12-28 Thread Sean Bruno
After some recent-ish changes to how user mode executes things/stuff, I'm running into issues with the out of tree bsd-user mode code that FreeBSD has been maintaining. It looks like the host_signal_handler() is never executed or registered correctly in our code. I'm curious if the linux-user

[Qemu-devel] [PATCH v2] build: include sys/sysmacros.h for major() and minor()

2016-12-28 Thread Christopher Covington
The definition of the major() and minor() macros are moving within glibc to . Include this header to avoid the following sorts of build-stopping messages: qga/commands-posix.c: In function ‘dev_major_minor’: qga/commands-posix.c:656:13: error: In the GNU C Library, "major" is defined by . For

[Qemu-devel] [PATCH v5 7/7] trace: [trivial] Statically enable all guest events

2016-12-28 Thread Lluís Vilanova
The optimizations of this series makes it feasible to have them available on all builds. Signed-off-by: Lluís Vilanova --- trace-events |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/trace-events b/trace-events index f74e1d3d22..0a0f4d9cd6

[Qemu-devel] [PATCH v5 4/7] exec: [tcg] Use different TBs according to the vCPU's dynamic tracing state

2016-12-28 Thread Lluís Vilanova
Every vCPU now uses a separate set of TBs for each set of dynamic tracing event state values. Each set of TBs can be used by any number of vCPUs to maximize TB reuse when vCPUs have the same tracing state. This feature is later used by tracetool to optimize tracing of guest code events. The

[Qemu-devel] [PATCH v5 5/7] trace: [tcg] Do not generate TCG code to trace dinamically-disabled events

2016-12-28 Thread Lluís Vilanova
If an event is dynamically disabled, the TCG code that calls the execution-time tracer is not generated. Removes the overheads of execution-time tracers for dynamically disabled events. As a bonus, also avoids checking the event state when the execution-time tracer is called from TCG-generated

[Qemu-devel] [PATCH v5 2/7] trace: Make trace_get_vcpu_event_count() inlinable

2016-12-28 Thread Lluís Vilanova
Later patches will make use of it. Signed-off-by: Lluís Vilanova --- trace/control-internal.h |5 + trace/control.c |9 ++--- trace/control.h |2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/trace/control-internal.h

[Qemu-devel] [PATCH v5 6/7] trace: [tcg, trivial] Re-align generated code

2016-12-28 Thread Lluís Vilanova
Last patch removed a nesting level in generated code. Re-align all code generated by backends to be 4-column aligned. Signed-off-by: Lluís Vilanova --- scripts/tracetool/backend/dtrace.py |2 +- scripts/tracetool/backend/ftrace.py | 20 ++--

[Qemu-devel] [PATCH v5 1/7] exec: [tcg] Refactor flush of per-CPU virtual TB cache

2016-12-28 Thread Lluís Vilanova
The function is reused in later patches. Signed-off-by: Lluís Vilanova --- cputlb.c|2 +- include/exec/exec-all.h |6 ++ translate-all.c | 14 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/cputlb.c

[Qemu-devel] [PATCH v5 3/7] trace: [tcg] Delay changes to dynamic state when translating

2016-12-28 Thread Lluís Vilanova
This keeps consistency across all decisions taken during translation when the dynamic state of a vCPU is changed in the middle of translating some guest code. Signed-off-by: Lluís Vilanova --- cpu-exec.c | 26 ++ include/qom/cpu.h

[Qemu-devel] [PATCH v5 0/7] trace: [tcg] Optimize per-vCPU tracing states with separate TB caches

2016-12-28 Thread Lluís Vilanova
Optimizes tracing of events with the 'tcg' and 'vcpu' properties (e.g., memory accesses), making it feasible to statically enable them by default on all QEMU builds. Some quick'n'dirty numbers with 400.perlbench (SPECcpu2006) on the train input (medium size - suns.pl) and the guest_mem_before

Re: [Qemu-devel] [PATCH] doc/pcie: correct command line examples

2016-12-28 Thread Marcel Apfelbaum
On 12/27/2016 09:40 AM, Cao jin wrote: Nit picking: Multi-function PCI Express Root Ports should mean that 'addr' property is mandatory, and slot is optional because it is default to 0, and 'chassis' is mandatory for 2nd & 3rd root port because it is default to 0 too. Bonus: fix a typo(2->3)

Re: [Qemu-devel] [PATCH 23/23] hw/arm/virt: Add board property to enable EL2

2016-12-28 Thread Andrew Jones
On Tue, Dec 13, 2016 at 10:36:24AM +, Peter Maydell wrote: > Add a board level property to the virt board which will > enable EL2 on the CPU if the user asks for it. The > default is not to provide EL2. If EL2 is enabled then > we will use SMC as our PSCI conduit, and report the >

Re: [Qemu-devel] [PATCH 21/23] hw/arm/virt: Support using SMC for PSCI

2016-12-28 Thread Andrew Jones
On Tue, Dec 13, 2016 at 10:36:22AM +, Peter Maydell wrote: > If we are giving the guest a CPU with EL2, it is likely to > want to use the HVC instruction itself, for instance for > providing PSCI to inner guest VMs. This makes using HVC > as the PSCI conduit for the outer QEMU a bad idea. We

Re: [Qemu-devel] [PATCH 22/23] target-arm: Enable EL2 feature bit on A53 and A57

2016-12-28 Thread Andrew Jones
On Tue, Dec 13, 2016 at 10:36:23AM +, Peter Maydell wrote: > Enable the ARM_FEATURE_EL2 bit on Cortex-A52 and > Cortex-A57, since this is all now sufficiently implemented > to work with the GICv3. We provide the usual CPU property > to disable it for backwards compatibility with the older >

Re: [Qemu-devel] [PATCH v4 0/7] trace: [tcg] Optimize per-vCPU tracing states with separate TB caches

2016-12-28 Thread no-reply
Hi, Your series failed automatic build test. Please find the testing commands and their output below. If you have docker installed, you can probably reproduce it locally. Message-id: 148292774946.380.3638349228328753405.st...@fimbulvetr.bsc.es Subject: [Qemu-devel] [PATCH v4 0/7] trace: [tcg]

[Qemu-devel] [PATCH v4 5/7] trace: [tcg] Do not generate TCG code to trace dinamically-disabled events

2016-12-28 Thread Lluís Vilanova
If an event is dynamically disabled, the TCG code that calls the execution-time tracer is not generated. Removes the overheads of execution-time tracers for dynamically disabled events. As a bonus, also avoids checking the event state when the execution-time tracer is called from TCG-generated

[Qemu-devel] [PATCH v4 3/7] trace: [tcg] Delay changes to dynamic state when translating

2016-12-28 Thread Lluís Vilanova
This keeps consistency across all decisions taken during translation when the dynamic state of a vCPU is changed in the middle of translating some guest code. Signed-off-by: Lluís Vilanova --- cpu-exec.c | 26 ++ include/qom/cpu.h

[Qemu-devel] [PATCH v4 6/7] trace: [tcg, trivial] Re-align generated code

2016-12-28 Thread Lluís Vilanova
Last patch removed a nesting level in generated code. Re-align all code generated by backends to be 4-column aligned. Signed-off-by: Lluís Vilanova --- scripts/tracetool/backend/dtrace.py |2 +- scripts/tracetool/backend/ftrace.py | 20 ++--

[Qemu-devel] [PATCH v4 4/7] exec: [tcg] Use different TBs according to the vCPU's dynamic tracing state

2016-12-28 Thread Lluís Vilanova
Every vCPU now uses a separate set of TBs for each set of dynamic tracing event state values. Each set of TBs can be used by any number of vCPUs to maximize TB reuse when vCPUs have the same tracing state. This feature is later used by tracetool to optimize tracing of guest code events. The

[Qemu-devel] [PATCH v4 2/7] trace: Make trace_get_vcpu_event_count() inlinable

2016-12-28 Thread Lluís Vilanova
Later patches will make use of it. Signed-off-by: Lluís Vilanova --- trace/control-internal.h |5 + trace/control.c |9 ++--- trace/control.h |2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/trace/control-internal.h

[Qemu-devel] [PATCH v4 7/7] trace: [trivial] Statically enable all guest events

2016-12-28 Thread Lluís Vilanova
The optimizations of this series makes it feasible to have them available on all builds. Signed-off-by: Lluís Vilanova --- trace-events |6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/trace-events b/trace-events index f74e1d3d22..0a0f4d9cd6

[Qemu-devel] [PATCH v4 1/7] exec: [tcg] Refactor flush of per-CPU virtual TB cache

2016-12-28 Thread Lluís Vilanova
The function is reused in later patches. Signed-off-by: Lluís Vilanova --- cputlb.c|2 +- include/exec/exec-all.h |6 ++ translate-all.c | 14 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/cputlb.c

[Qemu-devel] [PATCH v4 0/7] trace: [tcg] Optimize per-vCPU tracing states with separate TB caches

2016-12-28 Thread Lluís Vilanova
Optimizes tracing of events with the 'tcg' and 'vcpu' properties (e.g., memory accesses), making it feasible to statically enable them by default on all QEMU builds. Some quick'n'dirty numbers with 400.perlbench (SPECcpu2006) on the train input (medium size - suns.pl) and the guest_mem_before