Public bug reported:
This may happen during usb camera redirect. But if i move the camera
lens from left to right or up to down, this always happen. My qemu-
version is 2.10.0 and following is the error information:
2018-10-26T03:37:54.925231Z qemu-kvm: usbredirparser: error unexpected extra
dat
On 2018-10-26 01:03, Maxim Samoylov wrote:
> This allows forwarding TCP6 and UDP6 connections down to
> netdev=user connected guests.
>
> Signed-off-by: Maxim Samoylov
> ---
> hmp-commands.hx | 31
> include/net/slirp.h | 2 +
> net/slirp.c | 214
> ++
On 10/25/18 9:28 PM, Eduardo Habkost wrote:
On Wed, Oct 17, 2018 at 12:48:58PM +0200, Paolo Bonzini wrote:
On 17/10/2018 11:30, Tao Xu wrote:
As the release document ref below link (page 13):
https://software.intel.com/sites/default/files/managed/c5/15/\
architecture-instruction-set-extensions-
Hi,
I am implementing a plugin that allocates several resources. I need to
cleanup some of these resources when QEMU finishes executing the guest
application. Where is the best exit point to place my cleanup functions?
I have tried registering a function call "atexit" but it does not seem
to
On Wed, 2018-10-24 at 07:06 -0300, Eduardo Habkost wrote:
> On Mon, Oct 15, 2018 at 12:47:25PM +0800, Robert Hoo wrote:
> > Note RSBA is specially treated -- no matter host support it or not,
> > qemu
> > pretends it is supported.
> >
> > Signed-off-by: Robert Hoo
>
> I am now wondering what els
On Thu, Oct 25, 2018 at 08:16:44PM +0100, Peter Maydell wrote:
> On 25 October 2018 at 01:52, Michael S. Tsirkin wrote:
> > The following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:
> >
> > Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22'
> > into stag
On Thu, Oct 25, 2018 at 08:16:44PM +0100, Peter Maydell wrote:
> On 25 October 2018 at 01:52, Michael S. Tsirkin wrote:
> > The following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:
> >
> > Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22'
> > into stag
This allows forwarding TCP6 and UDP6 connections down to
netdev=user connected guests.
Signed-off-by: Maxim Samoylov
---
hmp-commands.hx | 31
include/net/slirp.h | 2 +
net/slirp.c | 214
qapi/net.json | 3 +-
Signed-off-by: Maxim Samoylov
---
slirp/libslirp.h | 6 ++
slirp/slirp.c| 43 +++
2 files changed, 49 insertions(+)
diff --git a/slirp/libslirp.h b/slirp/libslirp.h
index 42e42e9..3710650 100644
--- a/slirp/libslirp.h
+++ b/slirp/libslirp.h
@@ -34
Signed-off-by: Maxim Samoylov
---
slirp/udp.c | 48
slirp/udp.h | 2 ++
2 files changed, 50 insertions(+)
diff --git a/slirp/udp.c b/slirp/udp.c
index e5bf065..ab24935 100644
--- a/slirp/udp.c
+++ b/slirp/udp.c
@@ -366,3 +366,51 @@ udp_listen(Sli
Signed-off-by: Maxim Samoylov
---
slirp/socket.c | 73 ++
slirp/socket.h | 2 ++
2 files changed, 75 insertions(+)
diff --git a/slirp/socket.c b/slirp/socket.c
index 322383a..e16e6c1 100644
--- a/slirp/socket.c
+++ b/slirp/socket.c
@@ -776
The following patch implements ipv6 host port forwarding support
for qemu slirp net subsystem.
The slirp itself supports ipv6 communication, but
hostfwd currently does not allow listening on and forwarding
ports for ipv6 addresses.
This should be useful, when host works in v6-capable environment
On Thu, Oct 25, 2018 at 08:16:44PM +0100, Peter Maydell wrote:
> On 25 October 2018 at 01:52, Michael S. Tsirkin wrote:
> > The following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:
> >
> > Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22'
> > into stag
On 25/10/2018 22:09, P J P wrote:
> From: Prasad J Pandit
>
> While writing a message in 'lsi_do_msgin', message length value
> in msg_len could be invalid, add check to avoid OOB access issue.
>
> Reported-by: Ameya More
> Signed-off-by: Prasad J Pandit
> ---
> hw/scsi/lsi53c895a.c | 9 +
There are two scenarios here, if we have a regular, directly assigned
physical device (including VFs), vfio's page pinning will populate the
full memory footprint of the guest regardless of the balloon. The
balloon is effectively fully deflated, but the balloon driver in the
guest hasn't released
Alex, I see this issue is closed but I have a question, do you know if
the problem only comes the balloon is resized to return memory to the
host. I ask because we have a situation where we will start a VM with
balloon enabled, and later it maybe possible a devices is assigned via
hot-plug. So I wo
On Thu, Oct 25, 2018 at 05:06:29PM +0300, Sameeh Jubran wrote:
> From: Sameeh Jubran
>
> Hi all,
>
> Background:
>
> There has been a few attempts to implement the standby feature for vfio
> assigned devices which aims to enable the migration of such devices. This
> is another attempt.
>
> The
On 25/10/2018 21:13, Thomas Huth wrote:
> On 2018-10-23 11:04, Laurent Vivier wrote:
>> Hi,
>>
>> I'm going to collect patches for the next pull request for the
>> qemu-trivial I'd like to do before the softfreeze.
>>
>> As we didn't have any pull request for more than 3 months and some of
>> the p
Hi Prasad,
Thanks for following up on this. While Mark and I reported this issue to
you, it was actually discovered by Dejvau Security and they should
receive credit for reporting this issue.
http://www.dejavusecurity.com
Thanks,
Ameya
On 10/25/2018 03:09 PM, P J P wrote:
From: Prasad J Pa
On Thu, Oct 25, 2018 at 04:26:16PM +0530, P J P wrote:
> +-- On Thu, 25 Oct 2018, Gerd Hoffmann wrote --+
> | We have a lovely, guest-triggerable buffer overflow in opl2 emulation.
> |
> | Reproducer:
> | outw(0xff60, 0x220);
> | outw(0x1020, 0x220);
> | outw(0xffb0, 0x220);
> | Result
On Thu, Oct 25, 2018 at 10:52:56AM +0200, Gerd Hoffmann wrote:
> While being at it deprecate cirrus too.
>
> Reason (short version): use stdvga instead.
> Verbose version:
> https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful
Every single one of my guests is using cirrus.
On 11/08/2018 22:10, Emilio G. Cota wrote:
> Signed-off-by: Emilio G. Cota
> ---
> linux-user/qemu.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/linux-user/qemu.h b/linux-user/qemu.h
> index b4959e41c6..e6a8bc5867 100644
> --- a/linux-user/qemu.h
> +++ b/linux-user/q
On 23/10/2018 07:22, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
> [...]
>> diff --git a/hw/misc/mac_via.c b/hw/misc/mac_via.c
>> new
On 25/10/2018 16:11, Li Qiang wrote:
> Hello Laurent,
> Thanks,
>
> This patch has been in Michael's pull request.
> Maybe you can drop it.
Removed
Thanks,
Laurent
On Sat, 20 Oct 2018 00:14:25 PDT (-0700), Bastian Koppelmann wrote:
Signed-off-by: Bastian Koppelmann
Signed-off-by: Peer Adelt
---
v1 -> v2:
- use ctx->env instead of current_cpu->env_ptr
target/riscv/insn32.decode | 19 ++
target/riscv/insn_trans/trans_rvi.inc.c | 4
On 23/10/2018 14:16, Philippe Mathieu-Daudé wrote:
> Hi Laurent, Mark,
>
> On 18/10/18 20:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
>> MAINTAINERS
From: Dimitrije Nikolic
Implement emulation of nanoMIPS EVA instructions. They are all
part of P.LS.E0 instruction pool, or one of its subpools.
Reviewed-by: Stefan Markovic
Signed-off-by: Dimitrije Nikolic
Signed-off-by: Aleksandar Markovic
---
target/mips/translate.c | 128
On 23/10/2018 08:13, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
>> arch_init.c | 4 +
>> hw/display/Makefile.objs
From: Aleksandar Markovic
The following changes since commit 808ebd66e467f77c0d1f8c6346235f81e9c99cf2:
Merge remote-tracking branch 'remotes/riscv/tags/riscv-for-master-3.1-sf0'
into staging (2018-10-25 17:41:03 +0100)
are available in the git repository at:
https://github.com/AMarkovic/q
From: Aleksandar Markovic
Add nanoMIPS CRC32 instruction pool.
Reviewed-by: Stefan Markovic
Signed-off-by: Aleksandar Markovic
---
target/mips/translate.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/target/mips/translate.c b/target/mips/translate.c
index c44a751..4338b9a 1
On 23/10/2018 12:20, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
> [...]
>> diff --git a/hw/m68k/Makefile.objs b/hw/m68k/Makefile.obj
On 2018-10-25 09:52, Gerd Hoffmann wrote:
> We have a lovely, guest-triggerable buffer overflow in opl2 emulation.
>
> Reproducer:
> outw(0xff60, 0x220);
> outw(0x1020, 0x220);
> outw(0xffb0, 0x220);
> Result:
> Will overflow FM_OPL->AR_TABLE[] (see hw/audio/fmopl.[ch])
>
> The sp
On 23/10/2018 07:49, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
>> hw/input/adb.c| 2 +
>> hw/misc/mac_via.c
On 23/10/2018 08:36, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> Co-developed-by: Mark Cave-Ayland
>> Signed-off-by: Mark Cave-Ayland
>> Signed-off-by: Laurent Vivier
>> ---
> [...]
>> +static void nubus_register_format_block(NubusDevice *dev
On 23/10/2018 08:18, Thomas Huth wrote:
> On 2018-10-18 19:28, Mark Cave-Ayland wrote:
>> From: Laurent Vivier
>>
>> This is broken as the linux driver seems broken too...
>
> So is this required for the initial version, or does Linux also boot
> without this device in the emulated machine? In t
+-- On Thu, 25 Oct 2018, Peter Maydell wrote --+
| Hi; thanks for this patch. Looking at the SA1110 manual,
| it says that writes to the reserved bits [31:28] are
| ignored. So I think that rather than doing this check
| here, we should do what the strongarm_ppc_* code in the
| same file does -- ma
On 2018-10-25 09:52, Gerd Hoffmann wrote:
> While being at it deprecate cirrus too.
>
> Reason (short version): use stdvga instead.
> Verbose version:
> https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful
>
> Signed-off-by: Gerd Hoffmann
> ---
> hw/display/cirrus_vga.c
On 2018-10-23 11:04, Laurent Vivier wrote:
> Hi,
>
> I'm going to collect patches for the next pull request for the
> qemu-trivial I'd like to do before the softfreeze.
>
> As we didn't have any pull request for more than 3 months and some of
> the patches have been pushed through another maintai
From: Prasad J Pandit
While writing a message in 'lsi_do_msgin', message length value
in msg_len could be invalid, add check to avoid OOB access issue.
Reported-by: Ameya More
Signed-off-by: Prasad J Pandit
---
hw/scsi/lsi53c895a.c | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-
On 25 October 2018 at 01:52, Michael S. Tsirkin wrote:
> The following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:
>
> Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22'
> into staging (2018-10-23 17:20:23 +0100)
>
> are available in the Git repository a
On 4 October 2018 at 21:06, Alistair Francis wrote:
> Connect the gpex PCIe device based on the device tree included in the
> HiFive Unleashed ROM.
>
> Signed-off-by: Alistair Francis
> ---
> default-configs/riscv32-softmmu.mak | 6 ++-
> default-configs/riscv64-softmmu.mak | 6 ++-
> hw/riscv
On 17 October 2018 at 22:54, Palmer Dabbelt wrote:
> The following changes since commit 09558375a634e17cea6cfbfec883ac2376d2dc7f:
>
> Merge remote-tracking branch
> 'remotes/pmaydell/tags/pull-target-arm-20181016-1' into staging (2018-10-16
> 17:42:56 +0100)
>
> are available in the Git reposi
On Tue, Oct 23, 2018 at 11:04:36 +0100, Laurent Vivier wrote:
> So, it would be helpful if any of you knowing that some patches have to
> be added to the pull request send me their list.
I sent this one in August:
linux-user: fix comment s/atomic_write/atomic_set/
https://lists.gnu.org/archive/
Hi Maciej,
> > Is the membership field intended to be used? The opcodes for CLZ and CLO
> > clash with the R5900 opcodes for MADD1 and MADDU1, resulting in incorrect
> > disassembly of MADD1 and MADDU1. For example:
> >
> > 0x70853020 madd1 a2,a0,a1 disassembles into clz a2 or a1,a0
> >
On Thu, Oct 25, 2018 at 5:06 PM Sameeh Jubran wrote:
>
> From: Sameeh Jubran
>
> Hi all,
>
> Background:
>
> There has been a few attempts to implement the standby feature for vfio
> assigned devices which aims to enable the migration of such devices. This
> is another attempt.
>
> The series imp
Yes, I messed up with `-device`, because I initially tried to do it with
`-device`, later rely only on automatically created device, and so had
automatically created devices.
Thanks for you rich comment, I will study it.
--
You received this bug notification because you are a member of qemu-
dev
Hi Fredrik,
> > NB all but pipeline 1 instructions of these are also implemented by other
> > members of the TXx9 family. They seem to be referred to as just "multiply
> > and multiply-add instructions" in the TX79 manual (cf Section B.3.1).
>
> Would
>
> ASE_TOSHIBA_MMI -- TX79 128-bit mul
Disassemble the R5900 instructions DIV1, DIVU1, MFLO1, MTLO1, MFHI1,
MTHI1, MULT1 and MULTU1.
Signed-off-by: Fredrik Noring
---
disas/mips.c | 12
1 file changed, 12 insertions(+)
diff --git a/disas/mips.c b/disas/mips.c
index 9f01fda8bd..eddfb59325 100644
--- a/disas/mips.c
+++ b/
Hi Fredrik,
> > > Option 3: Extend the mips_opcode::membership field.
> >
> > It's trivial to extend the field to uint64_t.
>
> Is the membership field intended to be used? The opcodes for CLZ and CLO
> clash with the R5900 opcodes for MADD1 and MADDU1, resulting in incorrect
> disassembly of MA
Several vendors have multimedia instruction (MMI) sets and other
extensions of various kinds. ASE vendor namespaces make it clear these
are not generic architectural features and also avoid name clashes.
Reported-by: Maciej W. Rozycki
Signed-off-by: Fredrik Noring
---
target/mips/mips-defs.h
Signed-off-by: Fredrik Noring
---
target/mips/translate.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/target/mips/translate.c b/target/mips/translate.c
index add6203c5a..208a15c0c1 100644
--- a/target/mips/translate.c
+++ b/target/mips/translate.c
@@ -4813,7 +
From: Philippe Mathieu-Daudé
Increase the size of 'membership' holder size to 64 bits. This is
needed for future extensions since existing bits are almost all used.
This change is related to commit f9c9cd63e3 "target/mips: Increase
'supported ISAs/ASEs' flag holder size".
Signed-off-by: Philippe
Amend definition for MIPS ISAs in disassembler with R5900.
Signed-off-by: Fredrik Noring
---
disas/mips.c | 8
1 file changed, 8 insertions(+)
diff --git a/disas/mips.c b/disas/mips.c
index d73d4094d8..9f01fda8bd 100644
--- a/disas/mips.c
+++ b/disas/mips.c
@@ -611,6 +611,9 @@ struct m
Signed-off-by: Fredrik Noring
---
tests/tcg/mips/mipsr5900/Makefile | 1 +
tests/tcg/mips/mipsr5900/madd.c | 45 +++
2 files changed, 46 insertions(+)
create mode 100644 tests/tcg/mips/mipsr5900/madd.c
diff --git a/tests/tcg/mips/mipsr5900/Makefile
b/tests/tcg/mi
For those of you who need some context: "plugins" are dynamic
libraries that are loaded at run-time. These plugins can
subscribe to interesting events (e.g. instruction execution)
via an API, to then do something interesting with them. This
functionality is similar to what other instrumentation too
Signed-off-by: Fredrik Noring
---
tests/tcg/mips/mipsr5900/maddu.c | 37 ++--
1 file changed, 35 insertions(+), 2 deletions(-)
diff --git a/tests/tcg/mips/mipsr5900/maddu.c b/tests/tcg/mips/mipsr5900/maddu.c
index e4e552102d..30936fb2b4 100644
--- a/tests/tcg/mips/mip
On Thu, Oct 25, 2018 at 10:32:23AM -0300, Eduardo Habkost wrote:
> From: Philippe Mathieu-Daudé
>
> Signed-off-by: Philippe Mathieu-Daudé
> Reviewed-by: Artyom Tarasenko
> Reviewed-by: Cédric Le Goater
> Message-Id: <20181002212522.23303-3-f4...@amsat.org>
> Signed-off-by: Eduardo Habkost
> -
Signed-off-by: Fredrik Noring
---
target/mips/translate.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/target/mips/translate.c b/target/mips/translate.c
index 8547a6e6f6..18167df26d 100644
--- a/target/mips/translate.c
+++ b/target/mips/translate.c
@@ -26100,7 +26100,
Signed-off-by: Emilio G. Cota
---
include/exec/tb-hash.h | 2 +-
include/{exec/tb-hash-xx.h => qemu/xxhash.h} | 6 +++---
tests/qht-bench.c| 2 +-
util/qsp.c | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-
Signed-off-by: Fredrik Noring
---
tests/tcg/mips/mipsr5900/Makefile | 1 +
tests/tcg/mips/mipsr5900/maddu.c | 37 +++
2 files changed, 38 insertions(+)
create mode 100644 tests/tcg/mips/mipsr5900/maddu.c
diff --git a/tests/tcg/mips/mipsr5900/Makefile
b/tests/tcg/m
This takes the TCGHelperInfo directly, which will allow us to generate
helpers at run-time.
Signed-off-by: Emilio G. Cota
---
tcg/tcg.h | 2 ++
tcg/tcg.c | 50 +-
2 files changed, 47 insertions(+), 5 deletions(-)
diff --git a/tcg/tcg.h b/tcg/tcg.
This series amends the R5900 support with the following noncritical
features:
- The vendor-specific Application-Specific Extension (ASE) ASE_MMI is
renamed to ASE_TOSHIBA_MMI, because several vendors have multimedia
instruction (MMI) sets and other extensions of various kinds. ASE
vendor nam
Signed-off-by: Fredrik Noring
---
tests/tcg/mips/mipsr5900/madd.c | 43 +
1 file changed, 38 insertions(+), 5 deletions(-)
diff --git a/tests/tcg/mips/mipsr5900/madd.c b/tests/tcg/mips/mipsr5900/madd.c
index 9ad2ea6dbb..f6f215e1c3 100644
--- a/tests/tcg/mips/mipsr
In preparation for plugin support.
Signed-off-by: Emilio G. Cota
---
accel/tcg/atomic_template.h | 92 +++--
1 file changed, 57 insertions(+), 35 deletions(-)
diff --git a/accel/tcg/atomic_template.h b/accel/tcg/atomic_template.h
index 8d177fefef..b13318c1ce 1006
This will allow us to trace 16B-long memory accesses.
While at it, add some defines for the mem_info bits and simplify
trace_mem_get_info by making it a wrapper around trace_mem_build_info.
Signed-off-by: Emilio G. Cota
---
trace-events | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
dif
From: Philippe Mathieu-Daudé
The three-operand MADD and MADDU are specific to the
Toshiba TX19/TX39/TX79 cores.
The "32-Bit TX System RISC TX39 Family Architecture manual"
is available at https://wiki.qemu.org/File:DSAE0022432.pdf
Signed-off-by: Philippe Mathieu-Daudé
Signed-off-by: Fredrik Nor
Signed-off-by: Emilio G. Cota
---
bsd-user/syscall.c | 3 +++
linux-user/exit.c | 1 +
2 files changed, 4 insertions(+)
diff --git a/bsd-user/syscall.c b/bsd-user/syscall.c
index 66492aaf5d..b7818af450 100644
--- a/bsd-user/syscall.c
+++ b/bsd-user/syscall.c
@@ -332,6 +332,7 @@ abi_long do_free
In preparation for adding plugin support. One of the clean-up
actions when uninstalling plugins will be to flush the code
cache. We'll also have to clear the runtime helpers, since
some of those runtime helpers may belong to the plugin
being uninstalled.
Signed-off-by: Emilio G. Cota
---
tcg/tcg
Signed-off-by: Emilio G. Cota
---
accel/tcg/atomic_template.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/accel/tcg/atomic_template.h b/accel/tcg/atomic_template.h
index efde12fdb2..8d177fefef 100644
--- a/accel/tcg/atomic_template.h
+++ b/accel/tcg/atomic_template.h
@@ -2
From: Lluís Vilanova
Signed-off-by: Lluís Vilanova
[ cota: s/instrument/plugin ]
Signed-off-by: Emilio G. Cota
---
linux-user/main.c | 18 ++
1 file changed, 18 insertions(+)
diff --git a/linux-user/main.c b/linux-user/main.c
index 923cbb753a..0244ad736c 100644
--- a/linux-use
Before moving them all to include/qemu/xxhash.h.
Signed-off-by: Emilio G. Cota
---
include/exec/tb-hash-xx.h | 41 +--
include/exec/tb-hash.h| 2 +-
tests/qht-bench.c | 2 +-
util/qsp.c| 12 ++--
4 files changed, 39 insert
Signed-off-by: Emilio G. Cota
---
accel/tcg/translate-all.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index 3423cf74db..1690e3fd5b 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -1233,6 +1233,8 @@ sta
Afterwise is "wise after the fact", as in "hindsight".
Here we meant "afterwards" (as in "subsequently"). Fix it.
Signed-off-by: Emilio G. Cota
---
tcg/README | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tcg/README b/tcg/README
index d22ee084b8..3fa8a7059f 100644
--- a/tcg
Signed-off-by: Emilio G. Cota
---
qemu-plugins.symbols | 32
1 file changed, 32 insertions(+)
create mode 100644 qemu-plugins.symbols
diff --git a/qemu-plugins.symbols b/qemu-plugins.symbols
new file mode 100644
index 00..76a57e62bb
--- /dev/null
+++ b/q
This will allow us to add TCG helpers at run-time.
While at it, rename tcg_find_helper to tcg_helper_find for consistency
with the added tcg_helper_foo functions.
Signed-off-by: Emilio G. Cota
---
tcg/tcg.c | 59 +--
1 file changed, 49 inserti
It will be used for TB hashing soon.
Signed-off-by: Emilio G. Cota
---
include/qemu/xxhash.h | 40 +++-
1 file changed, 27 insertions(+), 13 deletions(-)
diff --git a/include/qemu/xxhash.h b/include/qemu/xxhash.h
index fe35dde328..450427eeaa 100644
--- a/incl
The goals are to:
- Have a simple implementation that shares nothing with tracing code.
- Make sure we cannot deadlock, particularly under MTTCG. For this,
we acquire a lock when called from plugin code, and keep
RCU lists of callbacks so that we do not have to hold the lock
when calling the
Signed-off-by: Emilio G. Cota
---
include/exec/translator.h | 4
1 file changed, 4 insertions(+)
diff --git a/include/exec/translator.h b/include/exec/translator.h
index a28147b3dd..e20ca9f854 100644
--- a/include/exec/translator.h
+++ b/include/exec/translator.h
@@ -106,6 +106,8 @@ typedef
Signed-off-by: Emilio G. Cota
---
tcg/tcg.h | 7 +++
tcg/tcg.c | 7 ---
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/tcg/tcg.h b/tcg/tcg.h
index f4efbaa680..9f9643b470 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -480,6 +480,13 @@ typedef TCGv_ptr TCGv_env;
/* Used to alig
Signed-off-by: Emilio G. Cota
---
target/arm/translate-a64.c | 8 ++--
target/arm/translate.c | 25 +
2 files changed, 27 insertions(+), 6 deletions(-)
diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c
index 8b1e20dd59..dab5f6efd3 100644
--- a/
This allows us to queue synchronous CPU work without the BQL.
Will gain a user soon.
Signed-off-by: Emilio G. Cota
---
include/qom/cpu.h | 13 +
cpus-common.c | 28 ++--
2 files changed, 35 insertions(+), 6 deletions(-)
diff --git a/include/qom/cpu.h b/i
This will allow communication between guest and plugins.
Signed-off-by: Emilio G. Cota
---
Makefile.target | 2 +
include/hw/pci/pci.h| 2 +
include/qemu/plugin.h | 1 +
hw/plugin/plugin-chan.c | 136
plugin.c| 4 ++
This will be used by plugin code to flush the code cache as well
as doing other bookkeeping in a safe work environment.
Signed-off-by: Emilio G. Cota
---
include/exec/exec-all.h | 1 +
accel/tcg/translate-all.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/exec/
Signed-off-by: Emilio G. Cota
---
include/exec/exec-all.h | 2 ++
include/exec/tb-hash.h| 6 --
include/exec/tb-lookup.h | 1 +
accel/tcg/cpu-exec.c | 6 +-
accel/tcg/translate-all.c | 6 --
5 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/include/exec/exec-
Signed-off-by: Emilio G. Cota
---
bsd-user/syscall.c | 9 +
linux-user/syscall.c | 3 +++
2 files changed, 12 insertions(+)
diff --git a/bsd-user/syscall.c b/bsd-user/syscall.c
index b7818af450..4993f81b2b 100644
--- a/bsd-user/syscall.c
+++ b/bsd-user/syscall.c
@@ -323,6 +323,8 @@ abi
These "hooks" are callbacks from the guest to plugins. This is
useful when we need guest-host communication, for instance to
signal the beginning/end of a certain "region of interest" in
the guest program. Simulators typically would use "magic"
instructions for this, but that is painful to maintain
Signed-off-by: Emilio G. Cota
---
target/riscv/translate.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/riscv/translate.c b/target/riscv/translate.c
index a33cf6802b..6f5be8e7d7 100644
--- a/target/riscv/translate.c
+++ b/target/riscv/translate.c
@@ -1851,6 +1851,7 @@ static void
The second pass only occurs when a plugin has subscribed to
TB translation events.
Signed-off-by: Emilio G. Cota
---
tcg/tcg.h | 8
accel/tcg/translator.c | 91 +-
2 files changed, 97 insertions(+), 2 deletions(-)
diff --git a/tcg/tcg.h
XXX: store hostaddr from non-i386 TCG backends
XXX: what hostaddr to return for I/O accesses?
XXX: what hostaddr to return for cross-page accesses?
Here the trickiest feature is passing the host address to
memory callbacks that request it. Perhaps it would be more
appropriate to pass a "physical"
Signed-off-by: Emilio G. Cota
---
plugin-examples/bbcount_avgsize_racy.c | 50 ++
plugin-examples/mem_count_racy_both.c | 58 ++
plugin-examples/Makefile | 31 ++
3 files changed, 139 insertions(+)
create mode 100644 plugin-e
Here we implement several features:
- Inlining TCG code for simple operations. Crucially, we do not
export TCG ops to plugins. Instead, we give them a C API to
insert inlined ops. So far we only support adding an immediate
to a u64, e.g. to count events.
- "Direct" callbacks. These are call
Add the API first to ease review.
Signed-off-by: Emilio G. Cota
---
include/qemu/plugin-api.h | 227 ++
1 file changed, 227 insertions(+)
create mode 100644 include/qemu/plugin-api.h
diff --git a/include/qemu/plugin-api.h b/include/qemu/plugin-api.h
new file
Signed-off-by: Emilio G. Cota
---
cpus.c| 10 ++
exec.c| 2 ++
qom/cpu.c | 2 ++
3 files changed, 14 insertions(+)
diff --git a/cpus.c b/cpus.c
index 28e39f045a..3efe89354d 100644
--- a/cpus.c
+++ b/cpus.c
@@ -43,6 +43,7 @@
#include "exec/exec-all.h"
#include "qemu/thread.h
For now only add it for ELF platforms, since we rely on the linker's
--dynamic-list flag to pass a list of symbols to be exported to the
executable. An alternative would be to use -rdynamic, but that would
expose all of QEMU's objects to plugins.
I have no experience with non-ELF systems but I sus
Signed-off-by: Emilio G. Cota
---
target/ppc/translate.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 34c3ed0a41..88f88adaff 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -7565,6 +7565,9 @@ static void ppc_tr_
Signed-off-by: Emilio G. Cota
---
include/exec/translator.h | 4 +++-
accel/tcg/translator.c | 4 ++--
target/alpha/translate.c| 3 ++-
target/arm/translate-a64.c | 3 ++-
target/arm/translate.c | 6 --
target/hppa/translate.c | 3 ++-
target/i386/translate.c | 3 ++-
Signed-off-by: Emilio G. Cota
---
target/alpha/translate.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/alpha/translate.c b/target/alpha/translate.c
index 72a302e102..21405df2b8 100644
--- a/target/alpha/translate.c
+++ b/target/alpha/translate.c
@@ -2990,6 +2990,7 @@ static void
From: Lluís Vilanova
Signed-off-by: Lluís Vilanova
[ cota: s/instrument/plugin ]
Signed-off-by: Emilio G. Cota
---
vl.c| 11 +++
qemu-options.hx | 17 +
2 files changed, 28 insertions(+)
diff --git a/vl.c b/vl.c
index 4e25c78bff..ebb188552e 100644
--- a/vl.
Signed-off-by: Emilio G. Cota
---
target/sparc/translate.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/target/sparc/translate.c b/target/sparc/translate.c
index 2fa8b68e0a..74889de426 100644
--- a/target/sparc/translate.c
+++ b/target/sparc/translate.c
@@ -5902,6 +5902,7 @@ static void
Signed-off-by: Emilio G. Cota
---
include/qemu/plugin-api.h | 9 +
include/qemu/plugin.h | 5 +++
plugin.c | 79 +++
stubs/plugin.c| 9 +
util/qemu-timer.c | 3 ++
qemu-plugins.symbols | 1 +
stubs/Make
1 - 100 of 282 matches
Mail list logo