Record the location of a TCGTemp within a larger object.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
include/tcg/tcg.h | 1 +
tcg/tcg.c | 3 +++
2 files changed, 4 insertions(+)
diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h
index d207bc47be..afa18986b1
Better to re-use the existing function for copying ops.
Signed-off-by: Richard Henderson
---
accel/tcg/plugin-gen.c | 16
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/accel/tcg/plugin-gen.c b/accel/tcg/plugin-gen.c
index 77e6823d6b..a6aaacd053 100644
--- a/accel
This will allow targets to avoid rolling their own.
Signed-off-by: Richard Henderson
---
accel/tcg/tcg-runtime.h | 11 +
include/tcg/tcg-op.h | 5 +++
tcg/tcg-op.c | 85 +++
accel/tcg/atomic_common.c.inc | 45 ++
On 10/11/2022 21.00, Philippe Mathieu-Daudé wrote:
On 10/11/22 14:11, Thomas Huth wrote:
Clang 15 from Fedora 37 complains:
../libdecnumber/dpd/decimal64.c:620:8: error: variable 'n' set but
not used [-Werror,-Wunused-but-set-variable]
Int n; /* output bunch counter
We expect the backend to require register pairs in
host-endian ordering, thus for big-endian the first
register of a pair contains the high part.
We were forcing R0 to contain the low part for calls.
Signed-off-by: Richard Henderson
---
tcg/tci.c | 21 +++--
1 file changed, 11 in
The first thing that temp_sync does is check mem_coherent,
so there's no need for the caller to do so.
Signed-off-by: Richard Henderson
---
tcg/tcg.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/tcg/tcg.c b/tcg/tcg.c
index a82c291369..583677a1c4 100644
--- a/tcg/tc
The function pointer is immediately after the output and input
operands; no need to search.
Signed-off-by: Richard Henderson
---
accel/tcg/plugin-gen.c | 29 +++--
1 file changed, 11 insertions(+), 18 deletions(-)
diff --git a/accel/tcg/plugin-gen.c b/accel/tcg/plugin-ge
There is only one use, and BLR is perhaps even more
self-documentary than CALLR.
Signed-off-by: Richard Henderson
---
tcg/aarch64/tcg-target.c.inc | 7 +--
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/tcg/aarch64/tcg-target.c.inc b/tcg/aarch64/tcg-target.c.inc
index 344b63e20
Replace goto allocate_in_reg with a boolean.
Remove o_preferred_regs which isn't used, except to copy.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
tcg/tcg.c | 45 +
1 file changed, 21 insertions(+), 24 deletions(-)
diff -
On 11/11/2022 05.22, Bin Meng wrote:
From: Guohuai Shi
Windows does not provide the getuid() API. Let's create a local
one and return a fixed value 0 as the uid for testing.
Co-developed-by: Xuzhou Cheng
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- Move getuid()
Add code generation functions for data movement between
TCGv_i128 (mov) and to/from TCGv_i64 (concat, extract).
Signed-off-by: Richard Henderson
---
include/tcg/tcg-op.h | 4
tcg/tcg-internal.h | 13 +
tcg/tcg-op.c | 20
3 files changed, 37 insert
在 2022/11/10 21:47, Eugenio Perez Martin 写道:
On Thu, Nov 10, 2022 at 7:01 AM Jason Wang wrote:
On Wed, Nov 9, 2022 at 1:08 AM Eugenio Pérez wrote:
The memory listener that thells the device how to convert GPA to qemu's
va is registered against CVQ vhost_vdpa. This series try to map the
memo
When allocating a temp to the stack frame, consider the
base type and allocate all parts at once.
Signed-off-by: Richard Henderson
---
tcg/tcg.c | 30 ++
1 file changed, 22 insertions(+), 8 deletions(-)
diff --git a/tcg/tcg.c b/tcg/tcg.c
index 11948256f2..3eabb6ef4d
Prepare to replace a bunch of separate ifdefs with a
consistent way to describe the abi of a function call.
Signed-off-by: Richard Henderson
---
tcg/tcg-internal.h | 15 +++
1 file changed, 15 insertions(+)
diff --git a/tcg/tcg-internal.h b/tcg/tcg-internal.h
index 2c06b5116a..f5747
This eliminates an ifdef for TCI, and will be required for
expanding the call for TCGv_i128.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
tcg/tcg.c| 12 ++--
tcg/aarch64/tcg-target.c.inc | 12 +---
tcg/arm/tcg-target.c.inc
We have been allocating a worst case number of arguments
to support calls. Instead, allow the size to vary.
By default leave space for 4 args, to maximize reuse,
but allow calls to increase the number of args to 32.
Signed-off-by: Richard Henderson
---
include/exec/helper-head.h | 2 --
includ
Fill in the parameters for the host ABI for Int128 for
those backends which require no extra modification.
Signed-off-by: Richard Henderson
---
tcg/aarch64/tcg-target.h | 2 ++
tcg/arm/tcg-target.h | 2 ++
tcg/loongarch64/tcg-target.h | 2 ++
tcg/mips/tcg-target.h| 2 ++
tcg/
Use the official extend/extract functions instead of routines
that will shortly be internal to tcg.
Cc: Mark Cave-Ayland
Signed-off-by: Richard Henderson
---
target/sparc/translate.c | 21 -
1 file changed, 4 insertions(+), 17 deletions(-)
diff --git a/target/sparc/translat
Previously we hard-coded R2 and R3.
Signed-off-by: Richard Henderson
---
tcg/s390x/tcg-target-con-set.h | 4 ++--
tcg/s390x/tcg-target-con-str.h | 8 +--
tcg/s390x/tcg-target.c.inc | 43 +-
3 files changed, 35 insertions(+), 20 deletions(-)
diff --git a
While we initialize this value in cpu_common_reset, that
isn't called during startup, so set it as well in init.
This fixes -singlestep versus the very first TB.
Fixes: 04f5b647ed07 ("accel/tcg: Handle -singlestep in curr_cflags")
Signed-off-by: Richard Henderson
---
hw/core/cpu-common.c | 1 +
在 2022/11/10 21:22, Eugenio Perez Martin 写道:
On Thu, Nov 10, 2022 at 6:51 AM Jason Wang wrote:
On Wed, Nov 9, 2022 at 1:08 AM Eugenio Pérez wrote:
So the caller can choose which ASID is destined.
No need to update the batch functions as they will always be called from
memory listener updat
Pre-compute the function call layout for each helper at startup.
Drop TCG_CALL_DUMMY_ARG, as we no longer need to leave gaps
in the op->args[] array. This allows several places to stop
checking for NULL TCGTemp, to which TCG_CALL_DUMMY_ARG mapped.
For tcg_gen_callN, loop over the arguments once.
For 32-bit hosts when TCG_TARGET_CALL_ALIGN_ARGS was set, use
TCG_CALL_ARG_EVEN. For 64-bit hosts, TCG_TARGET_CALL_ALIGN_ARGS
was silently ignored, so always use TCG_CALL_ARG_NORMAL.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
tcg/aarch64/tcg-target.h | 2 +-
Fill in the parameters for libffi for Int128.
Adjust the interpreter to allow for 16-byte return values.
Adjust tcg_out_call to record the return value length.
Call parameters are no longer all the same size, so we
cannot reuse the same call_slots array for every function.
Compute it each time now
These will be used by some hosts, both 32 and 64-bit, to pass and
return i128. Not yet used, because allocation is not yet enabled.
Signed-off-by: Richard Henderson
---
tcg/tcg-internal.h | 3 +
tcg/tcg.c | 135 -
2 files changed, 135 inser
We will shortly have the possibility of more that two outputs,
though only for calls (for which preferences are moot). Avoid
direct references to op->output_pref[] when possible.
Signed-off-by: Richard Henderson
---
include/tcg/tcg.h | 5 +
tcg/tcg.c | 34 ++
Allocate the first of a pair at the lower address, and the
second of a pair at the higher address. This will make it
easier to find the beginning of the larger memory block.
Signed-off-by: Richard Henderson
---
tcg/tcg-internal.h | 4 ++--
tcg/tcg.c | 58 ++
Signed-off-by: Richard Henderson
---
tcg/tci.c| 1 -
tcg/tci/tcg-target.c.inc | 4
2 files changed, 5 deletions(-)
diff --git a/tcg/tci.c b/tcg/tci.c
index bdfac83492..05a24163d3 100644
--- a/tcg/tci.c
+++ b/tcg/tci.c
@@ -18,7 +18,6 @@
*/
#include "qemu/osdep.h"
-#inclu
We are about to allow passing Int128 to/from tcg helper functions,
but libffi doesn't support __int128_t, so use the structure.
In order for atomic128.h to continue working, we must provide
a mechanism to frob between real __int128_t and the structure.
Provide a new union, Int128Alias, for this.
The hppa host code has been removed since 2013; this
should have been deleted at the same time.
Fixes: 802b5081233a ("tcg-hppa: Remove tcg backend")
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
tcg/aarch64/tcg-target.h | 1 -
tcg/arm/tcg-target.h | 1 -
tcg/tcg
Like CONFIG_TCG, the enabled method of execution is a host property
not a guest property. This exposes the define to compile-once files.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
meson.build | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/m
在 2022/11/10 21:09, Eugenio Perez Martin 写道:
On Thu, Nov 10, 2022 at 6:40 AM Jason Wang wrote:
在 2022/11/9 01:07, Eugenio Pérez 写道:
The next patches will start control SVQ if possible. However, we don't
know if that will be possible at qemu boot anymore.
If I was not wrong, there's no dev
On 11/11/22 4:17 am, Peter Xu wrote:
On Thu, Nov 10, 2022 at 05:59:45PM +0530, manish.mishra wrote:
Hi Everyone, Just a gentle reminder for review. :)
Hi, Manish,
I've got a slightly busy week, sorry! If Daniel and Juan won't have time
to look at it I'll have a closer look at it next Monday
在 2022/11/10 20:54, Eugenio Perez Martin 写道:
On Thu, Nov 10, 2022 at 6:22 AM Jason Wang wrote:
On Wed, Nov 9, 2022 at 1:08 AM Eugenio Pérez wrote:
This function used to trust in v->shadow_vqs != NULL to know if it must
start svq or not.
This is not going to be valid anymore, as qemu is goi
On Nov 11 07:55, Markus Armbruster wrote:
> Klaus Jensen writes:
>
> > On Nov 11 07:36, Markus Armbruster wrote:
> >> Klaus Jensen writes:
> >>
> >> > From: Klaus Jensen
> >> >
> >> > Remove an unnecessary local Error value in nvme_realize(). In the
> >> > process, change nvme_check_constraint
Klaus Jensen writes:
> On Nov 11 07:36, Markus Armbruster wrote:
>> Klaus Jensen writes:
>>
>> > From: Klaus Jensen
>> >
>> > Remove an unnecessary local Error value in nvme_realize(). In the
>> > process, change nvme_check_constraints() into returning a bool.
>> >
>> > Finally, removing the l
Introduce QCryptodevBackendType in cryptodev.json, also apply this to
related codes. Then we can drop 'enum CryptoDevBackendOptionsType'.
Signed-off-by: zhenwei pi
---
MAINTAINERS | 1 +
backends/cryptodev-builtin.c| 2 +-
backends/cryptodev-lkcf.c | 2 +-
backen
On Fri, Nov 11, 2022 at 10:59 AM Ani Sinha wrote:
>
> On Fri, Nov 11, 2022 at 12:38 AM Stefan Weil wrote:
> >
> > Those typos are in files which are used to generate the QEMU manual.
> >
> > Signed-off-by: Stefan Weil
>
> For acpi-bits.rst,
> Reviewed-by: Ani Sinha
>
> > ---
> >
> > I did not f
We have already used qapi to generate crypto device types, this allows
to convert type to a string 'model', so the 'model' field is not
needed.
And the 'name' field is not used by any backend driver, drop it.
Signed-off-by: zhenwei pi
---
backends/cryptodev-builtin.c| 3 +--
backends/crypt
The main changes in this series:
- introduce cryptodev.json to describe the attributes of crypto device, then
drop duplicated type declare, remove some virtio related dependence.
- add statistics: OPS and bandwidth.
- add QMP command: query-cryptodev
- add HMP info command: cryptodev
- misc fix:
Rather than exposing akcipher service/RSA algorithm to virtio crypto
device unconditionally, detect akcipher capability from akcipher
crypto framework. This avoids unsuccessful requests.
Signed-off-by: zhenwei pi
---
backends/cryptodev-builtin.c | 25 +
1 file changed, 21
Introduce cryptodev statistics in QAPI, and record OPS/Bandwidth for
each crypto device.
Example of this feature:
virsh qemu-monitor-command vm '{"execute": "query-cryptodev"}' | jq
{
"return": [
{
"service": [
"akcipher",
"mac",
"hash",
"cipher"
]
Example of this command:
# virsh qemu-monitor-command vm --hmp info cryptodev
cryptodev1: service=[akcipher|mac|hash|cipher]
queue 0: type=builtin
cryptodev0: service=[akcipher]
queue 0: type=lkcf
Signed-off-by: zhenwei pi
---
hmp-commands-info.hx | 14 ++
include/monitor/h
Introduce cryptodev service type in cryptodev.json, then apply this
to related codes. Now we can remove VIRTIO_CRYPTO_SERVICE_xxx
dependence from QEMU cryptodev.
Signed-off-by: zhenwei pi
---
backends/cryptodev-builtin.c| 8
backends/cryptodev-lkcf.c | 2 +-
backends/cryptod
在 2022/11/11 2:53, Michael S. Tsirkin 写道:
On Sun, Oct 30, 2022 at 09:52:37PM +0800, huang...@chinatelecom.cn wrote:
From: Hyman Huang(黄勇)
v3:
-rebase on master
-code clean on [PATCH v2 1/2]: keep the commit self-consistent and
do not modify the logic of saving acked_features. Just abstrac
Gavin Shan writes:
> Hi Zhenyu,
>
> On 11/11/22 11:05 AM, Zhenyu Zhang wrote:
>> Commit ffac16fab3 "hostmem: introduce "prealloc-threads" property"
>> (v5.0.0) changed the default number of threads from number of CPUs
>> to 1. This was deemed a regression, and fixed in commit f8d426a685
>> "host
Introduce cryptodev alg type in cryptodev.json, then apply this to
related codes, and drop 'enum CryptoDevBackendAlgType'.
There are two options:
1, { 'enum': 'QCryptodevBackendAlgType',
'prefix': 'CRYPTODEV_BACKEND_ALG',
'data': ['sym', 'asym']}
Then we can keep 'CRYPTODEV_BACKEND_ALG_SYM' an
Now we have a QMP command to query crypto devices:
virsh qemu-monitor-command vm '{"execute": "query-cryptodev"}' | jq
{
"return": [
{
"service": [
"akcipher",
"mac",
"hash",
"cipher"
],
"id": "cryptodev1",
"client": [
{
On Wed, Nov 9, 2022 at 5:14 PM Philippe Mathieu-Daudé wrote:
>
> Hi Mirek,
>
> On 9/11/22 16:34, mreza...@redhat.com wrote:
> > From: Miroslav Rezanina
> >
> > Commit cfead31326 'acpi: pc: vga: use AcpiDevAmlIf interface to build VGA
> > device descriptors' added
> > a new file - acpi-vga.c. Thi
On Nov 11 07:36, Markus Armbruster wrote:
> Klaus Jensen writes:
>
> > From: Klaus Jensen
> >
> > Remove an unnecessary local Error value in nvme_realize(). In the
> > process, change nvme_check_constraints() into returning a bool.
> >
> > Finally, removing the local Error value also fixes a bug
Klaus Jensen writes:
> From: Klaus Jensen
>
> Remove an unnecessary local Error value in nvme_realize(). In the
> process, change nvme_check_constraints() into returning a bool.
>
> Finally, removing the local Error value also fixes a bug where an error
> returned from nvme_init_subsys() would b
On Thu, Oct 13, 2022 at 4:34 PM LIU Zhiwei wrote:
>
> icount trigger set an instruction count. After one instruction retired,
> the count will be decreased by 1. If the count decreased to 0, the icount
> trigger will fire.
>
> icount trigger is needed by single step ptrace system call and the nati
On Fri, Nov 11, 2022 at 12:38 AM Stefan Weil wrote:
>
> Those typos are in files which are used to generate the QEMU manual.
>
> Signed-off-by: Stefan Weil
For acpi-bits.rst,
Reviewed-by: Ani Sinha
> ---
>
> I did not fix memory_region_init_resizeable_ram. That might be done after 7.2.
>
> Ste
Hi Zhenyu,
On 11/11/22 11:05 AM, Zhenyu Zhang wrote:
Commit ffac16fab3 "hostmem: introduce "prealloc-threads" property"
(v5.0.0) changed the default number of threads from number of CPUs
to 1. This was deemed a regression, and fixed in commit f8d426a685
"hostmem: default the amount of prealloc-
From: Guohuai Shi
Some flags and features are not supported on Windows, like mknod,
readlink, file mode, etc. Update the codes for Windows.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- Use precise platform check in ifdefs to avoid automatically
opting-out other f
This series adds initial Windows support for 9p file system.
'local' file system backend driver is supported on Windows,
including open, read, write, close, rename, remove, etc.
All security models are supported. The mapped (mapped-xattr)
security model is implemented using NTFS Alternate Data Str
From: Guohuai Shi
On Windows 'struct dirent' does not have current directory offset.
Update qemu_dirent_off() to support Windows.
While we are here, add a build time check to error out if a new
host does not implement this helper.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Chang
From: Guohuai Shi
Enable virtfs configuration option for Windows host.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
(no changes since v1)
meson.build | 10 +-
fsdev/meson.build | 1 +
hw/9pfs/meson.build | 8 +---
3 files changed, 11 insertions(+), 8 delet
As Windows host does not have stat->st_rdev field, we use the first
3 characters of the root path to build a device id.
Add a helper qemu_stat_rdev() to use it to avoid direct access to
stat->st_rdev.
Co-developed-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- new patch: "hw/9pf
From: Guohuai Shi
Use _getmaxstdio() to set the fd limit on Windows.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- new patch: "hw/9pfs: Update v9fs_set_fd_limit() for Windows"
hw/9pfs/9p.c | 23 ---
1 file changed, 20 insertions(+), 3 deletions
Windows does not have .
Signed-off-by: Bin Meng
---
(no changes since v1)
include/qemu/xattr.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/include/qemu/xattr.h b/include/qemu/xattr.h
index f1d0f7be74..b08a934acc 100644
--- a/include/qemu/xattr.h
+++ b/include/qemu/xa
From: Guohuai Shi
Windows does not provide the getuid() API. Let's create a local
one and return a fixed value 0 as the uid for testing.
Co-developed-by: Xuzhou Cheng
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- Move getuid() to virtio-9p-client.h
tests/qtest/li
As Windows host does not have stat->st_blksize field, we use the one
we calculated in init_win32_root_directory().
Add a helper qemu_stat_blksize() and use it to avoid direct access to
stat->st_blksize.
Co-developed-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- new patch: "hw/9
From: Guohuai Shi
Some definitions currently used by the 9pfs codes are only available
on POSIX platforms. Let's add our own ones in preparation to adding
9pfs support for Windows.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- Add S_IFLNK related macros to support s
From: Guohuai Shi
Adapt synth fs driver for Windows in preparation to running qtest
9p testing on Windows.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
(no changes since v1)
hw/9pfs/9p-synth.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/hw/9pfs/9p-synth
From: Guohuai Shi
Windows POSIX API and MinGW library do not provide the NO_FOLLOW
flag, and do not allow opening a directory by POSIX open(). This
causes all xxx_at() functions cannot work directly. However, we
can provide Windows handle based functions to emulate xxx_at()
functions (e.g.: opena
From: Guohuai Shi
Some of Windows error numbers have different value from Linux ones.
For example, ENOTEMPTY is defined to 39 in Linux, but is defined to
41 in Windows. So deleting a directory from a Linux guest on top
of QEMU from a Windows host complains:
# rmdir tmp
rmdir: 'tmp': Unknown
From: Guohuai Shi
When using 9p2000.L protocol, the errno should use the Linux errno.
Currently magic numbers with comments are used. Replace these with
macros for future expansion.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
Changes in v2:
- Use a more compact solution in the swi
From: Guohuai Shi
We don't plan to support 'proxy' file system driver for 9pfs on
Windows. Disable it for Windows build.
Signed-off-by: Guohuai Shi
Signed-off-by: Bin Meng
---
(no changes since v1)
fsdev/qemu-fsdev.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fsdev/qemu-fsdev.c b
These are not used anywhere in the source tree. Drop them.
Signed-off-by: Bin Meng
---
(no changes since v1)
hw/9pfs/9p-util.h | 11 ---
1 file changed, 11 deletions(-)
diff --git a/hw/9pfs/9p-util.h b/hw/9pfs/9p-util.h
index c3526144c9..ccfc8b1cb3 100644
--- a/hw/9pfs/9p-util.h
+++ b
xxxat() APIs are only available on POSIX platforms. For future
extension to Windows, let's replace the direct call to xxxat()
APIs with a wrapper.
Signed-off-by: Bin Meng
---
(no changes since v1)
hw/9pfs/9p-util.h | 15 +++
hw/9pfs/9p-local.c | 32
Introduce a new QemuFd_t type to represent a file descriptor for
different platforms. On POSIX platforms, this is a file descriptor
On Windows, this is a file handle.
Signed-off-by: Bin Meng
---
Changes in v2:
- Change to introduce QemuFd_t in osdep.h
include/qemu/osdep.h | 26 +++
From: Guohuai Shi
Update the 9p 'local' file system driver to support Windows,
including open, read, write, close, rename, remove, etc.
All security models are supported. The mapped (mapped-xattr)
security model is implemented using NTFS Alternate Data Stream
(ADS) so the 9p export path shall be
With this new QemuFd_t type, it significantly reduces the number of
deviated code paths when adding Windows support.
Signed-off-by: Bin Meng
---
Changes in v2:
- Use the new QemuFd_t type
hw/9pfs/9p-local.h | 6 +-
hw/9pfs/9p-util.h| 26 +++---
hw/9pfs/9p-local.c | 174
On Thu, Nov 10, 2022 at 11:37 PM John Snow wrote:
>
> Hiya, on today's origin/master
> (2ccad61746ca7de5dd3e25146062264387e43bd4) I'm finding that "make
> check-avocado" is failing on the new biosbits test on my local
> development machine:
>
> (001/193) tests/avocado/acpi-bits.py:AcpiBitsTest.te
Commit ffac16fab3 "hostmem: introduce "prealloc-threads" property"
(v5.0.0) changed the default number of threads from number of CPUs
to 1. This was deemed a regression, and fixed in commit f8d426a685
"hostmem: default the amount of prealloc-threads to smp-cpus".
Except the documentation remained
Hi Taylor,
QEMU is frozen for the 7.2 release cycle. Only bug fixes can be merged
as the tree is being stabilized. You can find the release schedule
here:
https://wiki.qemu.org/Planning/7.2
Please resend with only the bug fixes needed for the 7.2 release. Thanks!
Stefan
On Thu, Nov 10, 2022 at 3:35 PM Richard Henderson
wrote:
>
> On 11/10/22 13:15, LIU Zhiwei wrote:
> >>> +static int debug_post_load(void *opaque, int version_id)
> >>> +{
> >>> +RISCVCPU *cpu = opaque;
> >>> +CPURISCVState *env = &cpu->env;
> >>> +
> >>> +if (icount_enabled()) {
> >>>
Direct block chaining is documented here
https://qemu.readthedocs.io/en/latest/devel/tcg.html#direct-block-chaining
Hexagon inner loops end with the endloop0 instruction
To go back to the beginning of the loop, this instructions writes to PC
from register SA0 (start address 0). To use direct bloc
The imported files don't properly mark all CONDEXEC instructions, so
we add some logic to hex_common.py to add the attribute.
Acked-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <20221108162906.3166-7-tsimp...@quicinc.com>
---
target/hexagon/cpu.h| 1 -
target
The following changes since commit 2ccad61746ca7de5dd3e25146062264387e43bd4:
Merge tag 'pull-tcg-20221109' of https://gitlab.com/rth7680/qemu into staging
(2022-11-09 13:26:45 -0500)
are available in the Git repository at:
https://github.com/quic/qemu tags/pull-hex-20221110
Add pc field to Packet structure
For helpers that need PC, pass an extra argument
Remove slot arg from conditional jump helpers
On a trap0, copy pkt->pc into hex_gpr[HEX_REG_PC]
Reviewed-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <20221108162906.3166-6-tsimp...@quicinc.com>
Acked-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <20221108162906.3166-9-tsimp...@quicinc.com>
---
target/hexagon/gen_tcg.h | 177 +++
target/hexagon/genptr.c | 90
2 files changed, 267 insertions(+)
diff --git a/tar
Here are example instructions with a predicated .tmp/.cur assignment
if (p1) v12.tmp = vmem(r7 + #0)
if (p0) v12.cur = vmem(r9 + #0)
The .tmp/.cur indicates that references to v12 in the same packet
take the result of the load. However, when the predicate is false,
the value at the start o
This enables us to reduce the number of parameters to many functions
In particular, the generated functions previously took all 3 as arguments
Not only does this simplify the code, it improves the translation time
Reviewed-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <2022110
These instructions will not be generated by idef-parser, so we override
them manually.
Test cases added to tests/tcg/hexagon/usr.c
Co-authored-by: Matheus Tavares Bernardino
Signed-off-by: Matheus Tavares Bernardino
Signed-off-by: Taylor Simpson
Reviewed-by: Richard Henderson
Message-Id: <202
Add overrides for
J2_call
J2_callt
J2_callf
Reviewed-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <20221108162906.3166-8-tsimp...@quicinc.com>
---
target/hexagon/gen_tcg.h | 8 ++
target/hexagon/genptr.c | 55
2 files
Direct block chaining is documented here
https://qemu.readthedocs.io/en/latest/devel/tcg.html#direct-block-chaining
Recall that Hexagon allows packets with multiple jumps where only the
first one with a true predicate will actually jump. We can use
tcg_gen_goto_tb/tcg_gen_exit_tb when the packet
When a packet has more than one change-of-flow instruction, only the first
one to branch is considered. We use the branch_taken variable to keep
track of this.
However, when there is a single cof instruction, we don't need the same
amount of bookkeeping.
We add the pkt_has_multi_cof member to th
Reviewed-by: Richard Henderson
Signed-off-by: Taylor Simpson
Message-Id: <20221108162906.3166-10-tsimp...@quicinc.com>
---
target/hexagon/gen_tcg.h | 201 +++
target/hexagon/genptr.c | 43 +
2 files changed, 244 insertions(+)
diff --git a/target/hex
On Fri, Nov 11, 2022 at 2:51 AM Mauro Matteo Cascella
wrote:
>
> On Wed, Nov 9, 2022 at 5:19 PM Bin Meng wrote:
> >
> > On Wed, Nov 9, 2022 at 6:10 PM Mauro Matteo Cascella
> > wrote:
> > >
> > > On Wed, Nov 9, 2022 at 10:45 AM Siqi Chen wrote:
> > > >
> > > > Hi,
> > > >
> > > > >This reproduc
On Wed, Oct 26, 2022 at 3:39 PM Marc-André Lureau
wrote:
>
> On Tue, Oct 25, 2022 at 6:15 PM Bin Meng wrote:
> >
> > At present when pressing Ctrl+C from a guest running on QEMU Windows
> > with a multiplexed monitor, e.g.: -serial mon:stdio, QEMU executable
> > just exits. This behavior is incon
On Thu, 10 Nov 2022 at 20:51, Stefan Hajnoczi wrote:
>
> Preventing this class of bugs is important but QEMU is currently
> frozen for the 7.2 release. I'm a little concerned about regressions
> in a patch series that changes core device emulation code.
>
> I'll review the series on Monday and if
On Thu, Nov 10, 2022 at 05:59:45PM +0530, manish.mishra wrote:
> Hi Everyone, Just a gentle reminder for review. :)
Hi, Manish,
I've got a slightly busy week, sorry! If Daniel and Juan won't have time
to look at it I'll have a closer look at it next Monday (holiday tomorrow).
--
Peter Xu
Hi, Alex,
On Thu, Nov 10, 2022 at 05:55:51PM +, Alex Bennée wrote:
>
> Alex Bennée writes:
>
> > Hi,
> >
> > I've been trying to remove current_cpu hacks from our hw/ emulation and
> > replace them with an explicit cpu_index derived from MemTxAttrs. So far
> > this has been going mostly ok
From: Klaus Jensen
Fix a couple of invalid errp usages.
v3:
- reword the commit message in patch 1
- fix an embarrassing bug in patch 2
Klaus Jensen (2):
hw/nvme: fix incorrect use of errp/local_err
hw/nvme: cleanup error reporting in nvme_init_pci()
hw/nvme/ctrl.c | 71
From: Klaus Jensen
Replace the local Error variable with errp and ERRP_GUARD() and change
the return value to bool.
Signed-off-by: Klaus Jensen
---
hw/nvme/ctrl.c | 23 ++-
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index
From: Klaus Jensen
Remove an unnecessary local Error value in nvme_realize(). In the
process, change nvme_check_constraints() into returning a bool.
Finally, removing the local Error value also fixes a bug where an error
returned from nvme_init_subsys() would be lost.
Reviewed-by: Philippe Math
On Nov 10 11:00, Markus Armbruster wrote:
> Klaus Jensen writes:
>
> > From: Klaus Jensen
> >
> > Replace the local Error variable with errp and ERRP_GUARD() and change
> > the return value to bool.
> >
> > Reviewed-by: Markus Armbruster
> > Signed-off-by: Klaus Jensen
> > ---
> > hw/nvme/ctr
On Nov 10 10:59, Philippe Mathieu-Daudé wrote:
> On 10/11/22 07:23, Klaus Jensen wrote:
> > From: Klaus Jensen
> >
> > Make nvme_check_constraints() return a bool and fix an invalid error
> > propagation where the actual error is thrown away in favor of an unused
> > local Error value.
> >
> > S
1 - 100 of 248 matches
Mail list logo