This patch has been successfully tested by QE. After configuring two
memory-backends with preallocation context objects, binded to two host
nodes; the result is QEMU being at least three times faster than
before.
# time /usr/libexec/qemu-kvm -M q35 -m 16G,maxmem=32G -numa
node,memdev=mem0,nodeid=0
Am 18.12.23 um 11:13 schrieb Fiona Ebner:
> In many configurations, e.g. multiple vNICs with multiple queues or
> with many Ceph OSDs, the default soft limit of 1024 is not enough.
> QEMU is supposed to work fine with file descriptors >= 1024 and does
> not use select() on POSIX. Bump the soft limi
Hi Zhenzhong,
On 2/2/24 07:51, Duan, Zhenzhong wrote:
> Hi Eric,
>
>> -Original Message-
>> From: Eric Auger
>> pc_q35_9.0 and arm virt
>>
>> Currently the default input range can extend to 64 bits. On x86,
>> when the virtio-iommu protects vfio devices, the physical iommu
>> may support
On Thu, Feb 01, 2024 at 04:06:15PM +0100, Andrew Jones wrote:
> On Wed, Jan 31, 2024 at 10:24:30AM -0800, Palmer Dabbelt wrote:
> > Right now we just report 0 for marchid/mvendorid in QEMU. That's legal,
> > but it's tricky for users that want to check if they're running on QEMU
> > to do so. Thi
On 2/1/24 23:14, Alistair Francis wrote:
On Thu, Feb 1, 2024 at 5:15 AM Daniel Henrique Barboza
wrote:
On 1/29/24 22:10, Alistair Francis wrote:
On Fri, Jan 26, 2024 at 5:54 AM Daniel Henrique Barboza
wrote:
The RVA22U64 and RVA22S64 profiles mandates certain extensions that,
until no
On Thu, Feb 01, 2024 at 07:48:51PM +0100, Cédric Le Goater wrote:
> Hello,
Hi, Cédric,
Thanks for the patches.
>
> Today, close_return_path_on_source() can perform a shutdown to exit
> the return-path thread if an error occured. However, migrate_fd_cleanup()
> does cleanups too early and the sh
Hi Guenter,
On 2/2/24 05:22, Guenter Roeck wrote:
On Sat, Jan 13, 2024 at 06:57:20AM +0100, del...@kernel.org wrote:
From: Helge Deller
Recognize the qemu --nodefaults option, which will disable the
following default devices on hppa:
- lsi53c895a SCSI controller,
- artist graphics card,
- LAS
On Mon, Jan 22, 2024 at 04:37:09PM -0800, Hao Xiang wrote:
> > > +static void set_normal_pages(MultiFDSendParams *p)
> > > +{
> > > +for (int i = 0; i < p->pages->num; i++) {
> > > +p->batch_task->results[i] = false;
> > > +}
> > > +}
> > Please correct me if I am wrong but set_norm
From: Alexey Baturo
Signed-off-by: Alexey Baturo
Reviewed-by: Richard Henderson
Reviewed-by: Alistair Francis
---
target/riscv/cpu.h| 3 +++
target/riscv/cpu_helper.c | 3 +++
target/riscv/translate.c | 5 +
3 files changed, 11 insertions(+)
diff --git a/target/riscv/cpu.h b/ta
From: Alexey Baturo
Signed-off-by: Alexey Baturo
Reviewed-by: Alistair Francis
---
target/riscv/cpu.h | 8
target/riscv/cpu_bits.h | 3 +++
target/riscv/cpu_cfg.h | 3 +++
target/riscv/csr.c | 11 +++
target/riscv/machine.c | 10 +++---
target/riscv/pmp.c
From: Alexey Baturo
Signed-off-by: Alexey Baturo
Reviewed-by: Richard Henderson
Reviewed-by: Alistair Francis
---
target/riscv/translate.c | 22 --
target/riscv/vector_helper.c | 13 +
2 files changed, 29 insertions(+), 6 deletions(-)
diff --git a/target/
From: Alexey Baturo
Signed-off-by: Alexey Baturo
Reviewed-by: Alistair Francis
---
target/riscv/cpu.h| 4 +++
target/riscv/cpu_helper.c | 58 +++
2 files changed, 62 insertions(+)
diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h
index 4c0d7142
From: Alexey Baturo
Hi,
I'm terribly sorry, but previous rebase went wrong and somehow I missed it.
This time I double-checked rebased version.
This patch series is properly rebased on
https://github.com/alistair23/qemu/tree/riscv-to-apply.next
Thanks
[v6]:
This patch series is rebased on
h
From: Alexey Baturo
Zjpm v0.8 is almost frozen and it's much simplier compared to the existing one:
The newer version doesn't allow to specify custom mask or base for masking.
Instead it allows only certain options for masking top bits.
Signed-off-by: Alexey Baturo
Acked-by: Alistair Francis
From: Alexey Baturo
Signed-off-by: Alexey Baturo
Reviewed-by: Alistair Francis
---
target/riscv/cpu.c | 9 +
1 file changed, 9 insertions(+)
diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c
index ded84f2e09..23d1692b59 100644
--- a/target/riscv/cpu.c
+++ b/target/riscv/cpu.c
@@ -
From: Peter Xu
Multifd send side has two fields to indicate error quits:
- MultiFDSendParams.quit
- &multifd_send_state->exiting
Merge them into the global one. The replacement is done by changing all
p->quit checks into the global var check. The global check doesn't need
any lock.
A few
From: Peter Xu
The sender thread will yield the p->mutex before IO starts, trying to not
block the requester thread. This may be unnecessary lock optimizations,
because the requester can already read pending_job safely even without the
lock, because the requester is currently the only one who ca
From: Peter Xu
When a multifd sender thread hit errors, it always needs to kick the main
thread by kicking all the semaphores that it can be waiting upon.
Provide a helper for it and deduplicate the code.
Reviewed-by: Fabiano Rosas
Signed-off-by: Peter Xu
---
migration/multifd.c | 21 +++
From: Peter Xu
This array is redundant when p->pages exists. Now we extended the life of
p->pages to the whole period where pending_job is set, it should be safe to
always use p->pages->offset[] rather than p->normal[]. Drop the array.
Alongside, the normal_num is also redundant, which is the
From: Peter Xu
This patch redefines the interfacing of ->send_prepare(). It further
simplifies multifd_send_thread() especially on zero copy.
Now with the new interface, we require the hook to do all the work for
preparing the IOVs to send. After it's completed, the IOVs should be ready
to be
From: Peter Xu
Move them into fill/unfill of packets. With that, we can further cleanup
the send/recv thread procedure, and remove one more temp var.
Reviewed-by: Fabiano Rosas
Signed-off-by: Peter Xu
---
migration/multifd.c | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
From: Peter Xu
We've already done that with multifd_flush_after_each_section, for multifd
in general. Drop the stale "TODO-like" comment.
Reviewed-by: Fabiano Rosas
Signed-off-by: Peter Xu
---
migration/multifd.c | 11 ---
1 file changed, 11 deletions(-)
diff --git a/migration/multi
From: Peter Xu
Shrink the function by moving relevant works into helpers: move the thread
join()s into multifd_send_terminate_threads(), then create two more helpers
to cover channel/state cleanups.
Add a TODO entry for the thread terminate process because p->running is
still buggy. We need to
From: Peter Xu
Now we reset MultiFDPages_t object in the multifd sender thread in the
middle of the sending job. That's not necessary, because the "*pages"
struct will not be reused anyway until pending_job is cleared.
Move that to the end after the job is completed, provide a helper to reset
a
From: Peter Xu
Use similar logic to cleanup the recv side.
Note that multifd_recv_terminate_threads() may need some similar rework
like the sender side, but let's leave that for later.
Signed-off-by: Peter Xu
---
migration/multifd.c | 52 ++---
1 file c
From: Peter Xu
Introduce a helper multifd_send_prepare_header() to setup the header packet
for multifd sender.
It's fine to setup the IOV[0] _before_ send_prepare() because the packet
buffer is already ready, even if the content is to be filled in.
With this helper, we can already slightly clea
From: Peter Xu
v1: https://lore.kernel.org/r/20240131103111.306523-1-pet...@redhat.com
This v2 patchset contains quite a few refactorings to current multifd:
1) Redefines send_prepare() interface, to be:
p->pages ---> send_prepare() -> IOVs
A major goal of it i
From: Peter Xu
Most of the multifd code uses send/recv to represent the two sides, but
some rare cases use save/load.
Since send/recv is the majority, replacing the save/load use cases to use
send/recv globally. Now we reach a consensus on the naming.
Signed-off-by: Peter Xu
---
migration/mu
From: Peter Xu
Now multifd's logic is designed to have no spurious wakeup. I still
remember a talk to Juan and he seems to agree we should drop it now, and if
my memory was right it was there because multifd used to hit that when
still debugging.
Let's drop it and see what can explode; as long
From: Peter Xu
Just like the previous patch, move the accounting for total_normal_pages on
both src/dst sides into the packet fill/unfill procedures.
Reviewed-by: Fabiano Rosas
Signed-off-by: Peter Xu
---
migration/multifd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --gi
From: Peter Xu
Multifd provide a threaded model for processing jobs. On sender side,
there can be two kinds of job: (1) a list of pages to send, or (2) a sync
request.
The sync request is a very special kind of job. It never contains a page
array, but only a multifd packet telling the dest sid
From: Peter Xu
Now with a split SYNC handler, we always have pages->num set for
pending_job==true. Assert it instead.
Reviewed-by: Fabiano Rosas
Signed-off-by: Peter Xu
---
migration/multifd.c | 13 +++--
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/migration/multifd
From: Peter Xu
The current multifd_queue_page() is not easy to read and follow. It is not
good with a few reasons:
- No helper at all to show what exactly does a condition mean; in short,
readability is low.
- Rely on pages->ramblock being cleared to detect an empty queue. It's
slight
From: Peter Xu
As reported correctly by Fabiano [1], MultiFDSendParams.packet_num is buggy
to be assigned and stored. Consider two consequent operations of: (1)
queue a job into multifd send thread X, then (2) queue another sync request
to the same send thread X. Then the MultiFDSendParams.pack
From: Peter Xu
When reviewing my attempt to refactor send_prepare(), Fabiano suggested we
try out with dropping the mutex in multifd code [1].
I thought about that before but I never tried to change the code. Now
maybe it's time to give it a stab. This only optimizes the sender side.
The tric
From: Peter Xu
Using int is an overkill when there're only two options. Change it to a
boolean.
Signed-off-by: Peter Xu
---
migration/multifd.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 12e587fda8..35d4e
From: Peter Xu
This field, no matter whether on src or dest, is only used for debugging
purpose.
They can even be removed already, unless it still more or less provide some
accounting on "how many packets are sent/recved for this thread". The
other more important one is called packet_num, which
From: Peter Xu
Split multifd_send_terminate_threads() into two functions:
- multifd_send_set_error(): used when an error happened on the sender
side, set error and quit state only
- multifd_send_terminate_threads(): used only by the main thread to kick
all multifd send threads out o
From: Peter Xu
Using int is an overkill when there're only two options. Change it to a
boolean.
Signed-off-by: Peter Xu
---
migration/multifd.h | 2 +-
migration/multifd.c | 9 +
migration/ram.c | 2 +-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/migration/multi
Hi Eugenio and Michael,
Let me make it more clear about the target for this patch. Currently Corigine
is developing the vDPA features on NIC which are based on the QEMU
vhost-vdpa/vhost-user backend. These two virtio features are helpful in data
plane performance.
In my understanding, these tw
On Thu, 1 Feb 2024 at 23:50, Peter Xu wrote:
>
> Fabiano, I think you forgot to reply-to-all.. adding back the list and
> people in the loop.
>
> On Thu, Feb 01, 2024 at 10:12:44AM -0300, Fabiano Rosas wrote:
> > Peter Xu writes:
> >
> > > On Wed, Jan 31, 2024 at 10:09:16AM -0300, Fabiano Rosas w
On 1/31/24 15:24, Palmer Dabbelt wrote:
Right now we just report 0 for marchid/mvendorid in QEMU. That's legal,
but it's tricky for users that want to check if they're running on QEMU
to do so. This sets marchid to 42, which I've proposed as the QEMU
architecture ID (mvendorid remains 0, jus
mcountinhibit, mcounteren, scounteren and hcounteren must always be 32-bit
by privileged spec
Signed-off-by: Vadim Shakirov
---
target/riscv/cpu.h | 8
target/riscv/machine.c | 16
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/target/riscv/cpu.h
Alistair,
I think we should just queue this up since it's all acked. It's still
applicable in riscv-to-apply.next.
Thanks,
Daniel
On 1/22/24 09:33, Daniel Henrique Barboza wrote:
Hi,
This v3 has the same patches from v2 rebased with a newer
riscv-to-apply.next branch (@ 096b6b07298).
No o
On Thu, 1 Feb 2024 11:58:43 -0800
fan wrote:
> On Wed, Jan 24, 2024 at 02:51:18PM +, Jonathan Cameron wrote:
> > On Tue, 7 Nov 2023 10:07:06 -0800
> > nifan@gmail.com wrote:
> >
> > > From: Fan Ni
> > >
> > > Per cxl spec 3.0, add dynamic capacity region representative based on
> >
Peter Xu writes:
> On Fri, Feb 02, 2024 at 08:28:47AM +0800, Peter Xu wrote:
>> > Pages allocated is nonsense. See if you agree with its removal:
>> > https://gitlab.com/farosas/qemu/-/commit/7cfff1a3e31b271e901a6c08d8b5d8c01b680e4d
>> >
>> > ---
>> > From 7cfff1a3e31b271e901a6c08d8b5d8c01b680e4
Richard Henderson writes:
> Without this padding, an unwind through the signal handler
> will pick up the unwind info for the preceding syscall.
>
> This fixes gcc's 30_threads/thread/native_handle/cancel.cc.
>
> Cc: qemu-sta...@nongnu.org
> Fixes: ee95fae075c6 ("linux-user/aarch64: Add vdso")
>
On 01.02.24 16:25, Hanna Czenczek wrote:
On 01.02.24 15:28, Stefan Hajnoczi wrote:
[...]
Did you find a scenario where the virtio-scsi AioContext is different
from the scsi-hd BB's Aiocontext?
Technically, that’s the reason for this thread, specifically that
virtio_scsi_hotunplug() switche
Hello Peter,
Today, close_return_path_on_source() can perform a shutdown to exit
the return-path thread if an error occured. However, migrate_fd_cleanup()
does cleanups too early and the shutdown in close_return_path_on_source()
fails, leaving the source and destination waiting for an event to o
On Mon, 29 Jan 2024 at 03:04, wrote:
>
> From: Fabiano Rosas
>
> The migration tests have support for being passed two QEMU binaries to
> test migration compatibility.
>
> Add a CI job that builds the lastest release of QEMU and another job
> that uses that version plus an already present build o
VDUSE requires that virtqueues are first enabled before the DRIVER_OK
status flag is set; with the current API of the kernel module, it is
impossible to enable the opposite order in our block export code because
userspace is not notified when a virtqueue is enabled.
This requirement also mathces t
Peter Maydell writes:
> On Mon, 29 Jan 2024 at 03:04, wrote:
>>
>> From: Fabiano Rosas
>>
>> The migration tests have support for being passed two QEMU binaries to
>> test migration compatibility.
>>
>> Add a CI job that builds the lastest release of QEMU and another job
>> that uses that versi
On Thu, 1 Feb 2024 at 14:13, Cédric Le Goater wrote:
>
> The following changes since commit bd2e12310b18b51aefbf834e6d54989fd175976f:
>
> Merge tag 'qga-pull-2024-01-30' of https://github.com/kostyanf14/qemu into
> staging (2024-01-30 15:53:46 +)
>
> are available in the Git repository at:
On Thu, 1 Feb 2024 at 07:33, Song Gao wrote:
>
> The following changes since commit bd2e12310b18b51aefbf834e6d54989fd175976f:
>
> Merge tag 'qga-pull-2024-01-30' of https://github.com/kostyanf14/qemu into
> staging (2024-01-30 15:53:46 +)
>
> are available in the Git repository at:
>
> ht
On Mon, 29 Jan 2024 at 22:19, Rayhan Faizel wrote:
>
> This patch series implements the SPI controller for BCM2835 boards.
Applied to target-arm.next, thanks.
-- PMM
Convert to Binary - counterparts of the already implemented Convert
to Decimal (CVD*) instructions.
Example from the Principles of Operation: 25594C becomes 63FA.
Co-developed-by: Pavel Zbitskiy
Signed-off-by: Ilya Leoshkevich
---
target/s390x/helper.h| 2 +
target/s390x/tcg/insn-d
Check the CVB's, CVBY's, and CVBG's corner cases.
Co-developed-by: Pavel Zbitskiy
Signed-off-by: Ilya Leoshkevich
---
tests/tcg/s390x/Makefile.target | 1 +
tests/tcg/s390x/cvb.c | 102
2 files changed, 103 insertions(+)
create mode 100644 tests/tcg
Check the CVD's, CVDY's, and CVDG's corner cases.
Signed-off-by: Ilya Leoshkevich
---
tests/tcg/s390x/Makefile.target | 1 +
tests/tcg/s390x/cvd.c | 63 +
2 files changed, 64 insertions(+)
create mode 100644 tests/tcg/s390x/cvd.c
diff --git a/tests/tc
CVDG is the same as CVD, except that it converts 64 bits into 128,
rather than 32 into 64. Create a new helper, which uses Int128
wrappers.
Reported-by: Ido Plat
Reviewed-by: Richard Henderson
Signed-off-by: Ilya Leoshkevich
---
target/s390x/helper.h| 1 +
target/s390x/tcg/insn-da
v3: https://lists.gnu.org/archive/html/qemu-devel/2024-01/msg06664.html
v3 -> v4: Implement CVB error handling (David/Thomas).
v2: https://lists.gnu.org/archive/html/qemu-devel/2024-01/msg05048.html
v2 -> v3: Resurrect an old CVB* patch (Thomas).
Add Richard's R-b.
v1: https://lists.gnu
On Thu, 2024-02-01 at 17:15 +, Alex Bennée wrote:
> Ilya Leoshkevich writes:
>
> > GDB supports stopping on syscall entry and exit using the "catch
> > syscall" command. It relies on 3 packets, which are currently not
> > supported by QEMU:
> >
> > * qSupported:QCatchSyscalls+ [1]
> > * QCat
Cédric Le Goater writes:
> close_return_path_on_source() retrieves the migration error from the
> the QEMUFile '->to_dst_file' to know if a shutdown is required to exit
> the return-path thread. However, in migrate_fd_cleanup(), '->to_dst_file'
> is cleaned up before calling close_return_path_on_
Sorry for the late post of version 3. The modifications are as follows:
v3:
- Rebase on master
- Use the refined commit message furnished by Markus for [PATCH v2 1/2]
- Drop the [PATCH v2 2/2]
- Add [PATCH v3 2/3] to declare the decoding functions to static
- Add [PATCH v3 3/3] to Define VhostDev
VhostDeviceProtocols and VirtioDeviceFeatures are only used in
virtio-hmp-cmds.c. So define them as plain C types there, and drop
them from the QAPI schema.
Signed-off-by: Hyman Huang
---
hw/virtio/virtio-hmp-cmds.c | 16 +++
qapi/virtio.json| 39
x-query-virtio-status returns several sets of virtio feature and
status flags. It goes back to v7.2.0.
In the initial commit 90c066cd682 (qmp: add QMP command
x-query-virtio-status), we returned them as numbers, using virtio's
well-known binary encoding.
The next commit f3034ad71fc (qmp: decode
qmp_decode_protocols(), qmp_decode_status(), and qmp_decode_features()
are now only used in virtio-hmp-cmds.c. So move them into there,
redeclare them to static, and replace the qmp_ prefix with hmp_.
Signed-off-by: Hyman Huang
---
hw/virtio/meson.build | 3 +-
hw/virtio/virtio-hmp-cmds
Cédric Le Goater writes:
> In case of error, close_return_path_on_source() can perform a shutdown
> to exit the return-path thread. However, in migrate_fd_cleanup(),
> 'to_dst_file' is closed before calling close_return_path_on_source()
> and the shutdown fails, leaving the source and destinatio
On 2/2/24 15:30, Fabiano Rosas wrote:
Cédric Le Goater writes:
close_return_path_on_source() retrieves the migration error from the
the QEMUFile '->to_dst_file' to know if a shutdown is required to exit
the return-path thread. However, in migrate_fd_cleanup(), '->to_dst_file'
is cleaned up bef
Hi,
Without the AioContext lock, a BB's context may kind of change at any
time (unless it has a root node, and I/O requests are pending). That
also means that its own context (BlockBackend.ctx) and that of its root
node can differ sometimes (while the context is being changed).
blk_get_aio_conte
scsi_device_for_each_req_async() currently does not provide any way to
be awaited. One of its callers is scsi_device_purge_requests(), which
therefore currently does not guarantee that all requests are fully
settled when it returns.
We want all requests to be settled, because scsi_device_purge_re
Since AioContext locks have been removed, a BlockBackend's AioContext
may really change at any time (only exception is that it is often
confined to a drained section, as noted in this patch). Therefore,
blk_get_aio_context() cannot rely on its root node's context always
matching that of the BlockB
On 2/2/24 15:42, Fabiano Rosas wrote:
Cédric Le Goater writes:
In case of error, close_return_path_on_source() can perform a shutdown
to exit the return-path thread. However, in migrate_fd_cleanup(),
'to_dst_file' is closed before calling close_return_path_on_source()
and the shutdown fails,
Cédric Le Goater writes:
> On 2/2/24 15:42, Fabiano Rosas wrote:
>> Cédric Le Goater writes:
>>
>>> In case of error, close_return_path_on_source() can perform a shutdown
>>> to exit the return-path thread. However, in migrate_fd_cleanup(),
>>> 'to_dst_file' is closed before calling close_retu
From: Andrew Jones
The hypervisor should decide what it wants to enable. Zero all
configuration enable bits on reset.
Also, commit ed67d63798f2 ("target/riscv: Update CSR bits name for
svadu extension") missed one reference to 'hade'. Change it now.
Fixes: 0af3f115e68e ("target/riscv: Add *envc
From: Andrew Jones
Gate hardware A/D PTE bit updating on {m,h}envcfg.ADUE and only
enable menvcfg.ADUE on reset if svade has not been selected. Now
that we also consider svade, we have four possible configurations:
1) !svade && !svadu
use hardware updating and there's no way to disable it
The RVA22U64 and RVA22S64 profiles mandates certain extensions that,
until now, we were implying that they were available.
We can't do this anymore since named features also has a riscv,isa
entry. Let's add them to riscv_cpu_named_features[].
Instead of adding one bool for each named feature that
Recent changes in options handling removed the 'mmu' default the bare
CPUs had, meaning that we must enable 'mmu' by hand when using the
rva22s64 profile CPU.
Given that this profile is setting a satp mode, it already implies that
we need a 'mmu'. Enable the 'mmu' in this case.
Signed-off-by: Dan
Further discussions after the introduction of rva22 support in QEMU
revealed that what we've been calling 'named features' are actually
regular extensions, with their respective riscv,isa DTs. This is
clarified in [1]. [2] is a bug tracker asking for the profile spec to be
less cryptic about it.
A
Hi,
In this new version we changed patch 3 as suggested by Alistair in v1
[1]. Instead of creating individual always-true bool for each named
feature, create a bool flag will be always 'true' to be used as config
offset for these named extensions.
Patches based on riscv-to-apply.next.
Patches mi
From: Andrew Jones
Named features are extensions which don't make sense for users to
control and are therefore not exposed on the command line. However,
svade is an extension which makes sense for users to control, so treat
it like a "normal" extension. The default is false, even for the max
cpu
The upcoming syscall catchpoint support needs to send stop packets with
an associated reason to GDB. Add an extra parameter to gdb_handlesig()
for that, and rename it to gdb_handlesig_reason(). Provide a
compatibility wrapper with an old name.
Signed-off-by: Ilya Leoshkevich
---
gdbstub/user.c
The upcoming syscall catchpoint support needs to send SIGTRAP stop
packets to GDB. Being able to compile this support only once for all
targets is a good thing, and it requires hiding TARGET_SIGTRAP behind
a function call.
Signed-off-by: Ilya Leoshkevich
---
gdbstub/internals.h | 1 +
gdbstub/
v2: https://lists.gnu.org/archive/html/qemu-devel/2024-01/msg02980.html
v2 -> v3: Simplify the catchpoint state by making "don't catch" a
subset of "catch some".
Factor out several prep patches;
Don't use snprintf;
Add some comments (Alex).
v1: https://lists
The upcoming syscall catchpoint support needs to get control on syscall
entry and return. Provide the necessary hooks for that, which are
no-ops for now.
Signed-off-by: Ilya Leoshkevich
---
gdbstub/user.c | 8
include/gdbstub/user.h | 13 +
include/user/
Check that adding/removing syscall catchpoints works.
Reviewed-by: Alex Bennée
Signed-off-by: Ilya Leoshkevich
---
tests/tcg/multiarch/Makefile.target | 10 +++-
tests/tcg/multiarch/catch-syscalls.c | 51 ++
tests/tcg/multiarch/gdbstub/catch-syscalls.py | 53 +
GDB supports stopping on syscall entry and exit using the "catch
syscall" command. It relies on 3 packets, which are currently not
supported by QEMU:
* qSupported:QCatchSyscalls+ [1]
* QCatchSyscalls: [2]
* T05syscall_entry: and T05syscall_return: [3]
Implement generation and handling of these pa
On Thu, 1 Feb 2024 at 16:48, David Woodhouse wrote:
>
> The following changes since commit 14639717bf379480e937716fcaf1e72b47fd4c5f:
>
> Merge tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu into
> staging (2024-01-31 19:53:45 +)
>
> are available in the Git repository at:
>
>
Commit d3f6f294aeadd5f88caf0155e4360808c95b3146 ("virtio-blk: always set
ioeventfd during startup") has made virtio_blk_start_ioeventfd() always
kick the virtqueue (set the ioeventfd), regardless of whether the BB is
drained. That is no longer necessary, because attaching the host
notifier will no
As of commit 38738f7dbbda90fbc161757b7f4be35b52205552 ("virtio-scsi:
don't waste CPU polling the event virtqueue"), we only attach an io_read
notifier for the virtio-scsi event virtqueue instead, and no polling
notifiers. During operation, the event virtqueue is typically
non-empty, but none of th
v1:
https://lists.nongnu.org/archive/html/qemu-block/2024-01/msg00336.html
Hi,
This is basically the same series as v1: When using
aio_set_event_notifier_poll(), the io_poll_end() callback is only
invoked when polling ends, not when the notifier is being removed while
in a polling section. Thi
During drain, we do not care about virtqueue notifications, which is why
we remove the handlers on it. When removing those handlers, whether vq
notifications are enabled or not depends on whether we were in polling
mode or not; if not, they are enabled (by default); if so, they have
been disabled
On Fri, 2024-02-02 at 15:32 +, Peter Maydell wrote:
>
> This fails "make check' because some of the qom-test and
> test-hmp checks fail when the QEMU binary segfaults.
>
> https://gitlab.com/qemu-project/qemu/-/jobs/6084552256
> https://gitlab.com/qemu-project/qemu/-/jobs/6084044180
Thanks.
From: Hao Wu
Change-Id: Id8a3461fb5042adc4c3fd6f4fbd1ca0d33e22565
Signed-off-by: Hao Wu
Signed-off-by: Nabih Estefan
Reviewed-by: Tyrone Ting
Message-id: 20240131002800.989285-3-nabiheste...@google.com
Reviewed-by: Peter Maydell
Signed-off-by: Peter Maydell
---
include/hw/arm/npcm7xx.h | 2
From: Philippe Mathieu-Daudé
Leverage the common code introduced in commit c9cf636d48 ("machine:
Add a valid_cpu_types property") to check for the single valid CPU
type. Remove the now unused MachineClass::default_cpu_type field.
Reviewed-by: Richard Henderson
Reviewed-by: Gavin Shan
Signed-of
From: Manos Pitsidianakis
Tracing DPRINTFs to stderr might not be desired. A developer that relies
on trace events should be able to opt-in to each trace event and rely on
QEMU's log redirection, instead of stderr by default.
This commit converts DPRINTFs in this file that are used for tracing
i
Switch the s390x virtual-css bus from using BusClass::reset to the
Resettable interface.
This has no behavioural change, because the BusClass code to support
subclasses that use the legacy BusClass::reset will call that method
in the hold phase of 3-phase reset.
Signed-off-by: Peter Maydell
Acke
BusClass currently has transitional infrastructure to support
subclasses which implement the legacy BusClass::reset method rather
than the Resettable interface. We have now removed all the users of
BusClass::reset in the tree, so we can remove the transitional
infrastructure.
Signed-off-by: Peter
From: Philippe Mathieu-Daudé
The npcm7xx Soc is created with a Cortex-A9 core, see in
hw/arm/npcm7xx.c:
static void npcm7xx_init(Object *obj)
{
NPCM7xxState *s = NPCM7XX(obj);
for (int i = 0; i < NPCM7XX_MAX_NUM_CPUS; i++) {
object_initialize_child(obj, "cpu[*]", &s->c
The -serial option documentation is a bit brief about '-serial none'
and '-serial null'. In particular it's not very clear about the
difference between them, and it doesn't mention that it's up to
the machine model whether '-serial none' means "don't create the
serial port" or "don't wire the seria
From: Philippe Mathieu-Daudé
QDev objects created with qdev_new() need to manually add
their parent relationship with object_property_add_child().
Signed-off-by: Philippe Mathieu-Daudé
Reviewed-by: Richard Henderson
Reviewed-by: Gavin Shan
Message-id: 20240129151828.59544-2-phi...@linaro.org
1 - 100 of 194 matches
Mail list logo