On Fri, Feb 16, 2024 at 2:41 PM Hao Xiang wrote:
> This new parameter controls where the zero page checking is running.
> 1. If this parameter is set to 'legacy', zero page checking is
> done in the migration main thread.
> 2. If this parameter is set to 'none', zero page checking is disabled.
>
On Fri, Feb 16, 2024 at 2:41 PM Hao Xiang wrote:
> This change adds zero page counters and updates multifd send/receive
> tracing format to track the newly added counters.
>
> Signed-off-by: Hao Xiang
> ---
> migration/multifd.c| 43 ++
> migration/mu
On Fri, Feb 16, 2024 at 2:42 PM Hao Xiang wrote:
> 1. Implements the zero page detection and handling on the multifd
> threads for non-compression, zlib and zstd compression backends.
> 2. Added a new value 'multifd' in ZeroPageDetection enumeration.
> 3. Add proper asserts to ensure pages->norma
On Fri, Feb 16, 2024 at 2:42 PM Hao Xiang wrote:
> This change adds a dedicated handler for
> MigrationOps::ram_save_target_page in
> multifd live migration. Now zero page checking can be done in the multifd
> threads
> and this becomes the default configuration. We still provide backward
> compa
Hello Alexander
On Tue, Feb 6, 2024 at 12:50 PM Alexander Monakov
wrote:
> Thanks to early checks in the inline buffer_is_zero wrapper, the SIMD
> routines are invoked much more rarely in normal use when most buffers
> are non-zero. This makes use of AVX512 unprofitable, as it incurs extra
> fre
On Mon, Mar 11, 2019 at 10:20:06AM +, Daniel P. Berrangé wrote:
> On Thu, Mar 07, 2019 at 03:29:41PM -0800, John G Johnson wrote:
> >
> >
Hi Daniel, Stefan
We have not replied in a while as we were trying to figure out
the best approach after multiple comments we have received on the
patch
On Wed, Jun 12, 2019 at 05:24:13PM +0100, Stefan Hajnoczi wrote:
> On Thu, May 30, 2019 at 01:54:35PM -0700, Elena Ufimtseva wrote:
> > On Tue, May 28, 2019 at 08:18:20AM -0700, Elena Ufimtseva wrote:
> > > On Thu, May 23, 2019 at 12:11:30PM +0100, Stefan Hajnoczi wrote:
> &
On Thu, Mar 07, 2019 at 03:16:42PM +0100, Kevin Wolf wrote:
> Am 07.03.2019 um 09:14 hat Thomas Huth geschrieben:
> > On 07/03/2019 08.22, elena.ufimts...@oracle.com wrote:
> > > From: Elena Ufimtseva
> > >
> > > TODO: Make relevant changes to the doc.
> &
> Signed-off-by: Jagannathan Raman
> > Signed-off-by: John G Johnson
> > Signed-off-by: Elena Ufimtseva
> > ---
> > hmp-commands.hx | 14
> > hmp.h | 1 +
> > hw/proxy/monitor.c | 92
> >
On Thu, Mar 07, 2019 at 02:27:57PM +0100, Marc-André Lureau wrote:
> Hi
>
> On Thu, Mar 7, 2019 at 11:46 AM Stefan Hajnoczi wrote:
> >
> > On Wed, Mar 06, 2019 at 11:20:25PM -0800, elena.ufimts...@oracle.com wrote:
> > > From: Elena Ufimtseva
> > >
>
f-by: John G Johnson
> > Signed-off-by: Jagannathan Raman
> > Signed-off-by: Elena Ufimtseva
> > ---
>
> I know the discussion is questioning whether this is even the right way
> to go, but if we DO add a QMP command,
>
> > +++ b/qa
ng people contributed to this patchset:
>
> John G Johnson
> Jagannathan Raman
> Elena Ufimtseva
> Kanth Ghatraju
>
> For full concept writeup about QEMU disaggregation refer to
> docs/devel/qemu-multiprocess.rst. Please refer to
> docs/qemu-multiprocess.txt for usag
On Fri, Dec 13, 2019 at 10:41:16AM +, Stefan Hajnoczi wrote:
> On Mon, Dec 09, 2019 at 10:47:17PM -0800, Elena Ufimtseva wrote:
> > At this moment we are working on the first stage of the project with help of
> > the Nutanix developers.
> > The questions we have ga
Signed-off-by: Elena Ufimtseva
---
include/exec/memory.h | 50 +++
include/sysemu/kvm.h | 15 +
linux-headers/linux/kvm.h | 25
accel/kvm/kvm-all.c | 132 ++
accel/stubs/kvm-stub.c| 1 +
5 files changed, 223
This will be needed later. No functional changes.
Signed-off-by: Elena Ufimtseva
---
include/hw/remote/remote.h | 28
hw/remote/remote-obj.c | 16 +---
MAINTAINERS| 1 +
3 files changed, 30 insertions(+), 15 deletions(-)
create mode
Signed-off-by: Elena Ufimtseva
---
include/hw/remote/proxy.h | 1 +
hw/remote/proxy.c | 66 ---
2 files changed, 63 insertions(+), 4 deletions(-)
diff --git a/include/hw/remote/proxy.h b/include/hw/remote/proxy.h
index 741def71f1..9efef0b935 100644
uential write
read IOPS read BW write IOPS write BW
no ioregionfd367k 1434MiB/s 76k 297MiB/s
ioregionfd 374k 1459MiB/s 77.3k302MiB/s
Please review and send your feedback.
Thank you!
Elena
Elena Ufimtseva (8):
ioregionfd:
Signed-off-by: Elena Ufimtseva
---
include/hw/remote/ioregionfd.h | 2 +
include/hw/remote/remote.h | 2 +
linux-headers/ioregionfd.h | 30 +
hw/remote/ioregionfd.c | 111 +
hw/remote/remote-obj.c | 44 +
5 files
Similar to ioeventfd, introduce the ioregionfd
functions to add and delete ioregionfds.
Signed-off-by: Elena Ufimtseva
---
softmmu/memory.c | 207 +++
1 file changed, 207 insertions(+)
diff --git a/softmmu/memory.c b/softmmu/memory.c
index 7340e19ff5
Signed-off-by: Elena Ufimtseva
---
meson.build| 15 ++-
qapi/qom.json | 32 +-
include/hw/remote/ioregionfd.h | 40 +++
hw/remote/ioregionfd.c | 196 +
Kconfig.host | 3 +
MAINTAINERS
This command is used to request the bar type info from
remote device.
Signed-off-by: Elena Ufimtseva
---
include/hw/remote/ioregionfd.h | 2 ++
include/hw/remote/machine.h | 1 +
include/hw/remote/mpqemu-link.h | 2 ++
hw/remote/ioregionfd.c | 28
hw
Signed-off-by: Elena Ufimtseva
---
include/hw/remote/ioregionfd.h | 1 +
include/hw/remote/remote.h | 1 +
hw/remote/ioregionfd.c | 26 ++
hw/remote/remote-obj.c | 93 ++
4 files changed, 121 insertions(+)
diff --git a/include/hw
(switchover-limit) and total downtime would not
be more than 310ms.
Please send your comments and recommendations.
The patchset idea originally comes from Joao Martins
.
Elena Ufimtseva (2):
migration: abort when switchover limit exceeded
migration: abort on destination if switchover limit exceeded
Introduce capability switchover_abort and migration parameter switchover_limit
to allow for live migration abort when the source downtime exceeded by
switchover_limit.
Signed-off-by: Elena Ufimtseva
---
hw/core/machine.c | 1 +
include/migration/client-options.h | 1
During live migration, receive current downtime from source
and start a downtime timer. When the destination dowtime
and added source downtime exceeds downtime limit for more
than switchover limit, abort live migration on destination.
Signed-off-by: Elena Ufimtseva
---
migration/migration.c
; j...@nvidia.com
; c...@nvidia.com ; David Edmondson
; Elena Ufimtseva ;
Konrad Wilk ; Alessandro Di Federico ;
a...@rev.ng ; shameerali.kolothum.th...@huawei.com
; wei.w.w...@intel.com
; chao.p.p...@linux.intel.com
; qemu-devel@nongnu.org ;
Mark Burton
Subject: Call for agenda for 2023-09
On Tue, Sep 19, 2023 at 02:02:49AM +0200, Juan Quintela wrote:
> Elena Ufimtseva wrote:
> > Hello Juan,
> >
> > Not sure if this is worth its own topic, would be it possible to hear
> > the community thoughts on the live migration series review/pull
> > progres
start with waiting for channels_ready
semaphore.
Changes to commit 90b3cec351996dd8ef4eb847ad38607812c5e7f5
("multifd: Fix the number of channels ready")
Signed-off-by: Elena Ufimtseva
---
migration/multifd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/migration/m
In migration rate limiting atomic operations are used
to read the rate limit variables and transferred bytes and
they are expensive. Check first if rate_limit_max is equal
to RATE_LIMIT_DISABLED and return false immediately if so.
Signed-off-by: Elena Ufimtseva
---
migration/migration-stats.c
t
as iov[0]. The packet_len part should be added to account for
the size of MultiFDPacket and the array of the offsets.
Signed-off-by: Elena Ufimtseva
---
migration/multifd.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index
/4, but fixes the over-accounting in
case of sync only packet.
Thank you in advance and looking forward for your feedback.
Elena
Elena Ufimtseva (4):
multifd: wait for channels_ready before sending sync
migration: check for rate_limit_max for RATE_LIMIT_DISABLED
multifd: fix counters in
multifd_send 136054.792 pid=18602 id=0x1 packet_num=0x574 normal=0x0 flags=0x0
next_packet_size=0x0
If there is a suggestion how to fix this properly, I will be
glad to use it.
Signed-off-by: Elena Ufimtseva
---
migration/multifd.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/migration
On Fri, Sep 22, 2023 at 11:53:17AM -0300, Fabiano Rosas wrote:
> Commit d2026ee117 ("multifd: Fix the number of channels ready") moved
> the "post" of channels_ready to the start of the multifd_send_thread()
> loop and added a missing "wait" at multifd_send_sync_main(). While it
> does work, the pl
On Fri, Sep 22, 2023 at 01:06:53PM -0300, Fabiano Rosas wrote:
> Elena Ufimtseva writes:
>
> > In multifd_send_sync_main we need to wait for channels_ready
> > before submitting sync packet as the threads may still be sending
> > their previous pages.
> > Ther
t
as iov[0]. The packet_len part should be added to account for
the size of MultiFDPacket and the array of the offsets.
Signed-off-by: Elena Ufimtseva
Reviewed-by: Fabiano Rosas
---
migration/multifd.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/migration/m
calling qemu_fflush() from migration_transferred_bytes()
if the migration rate is not exceeded.
This should be fine since migration thread calls in the loop
migration_update_counters from migration_rate_limit() that
calls the migration_transferred_bytes() and flushes there.
Signed-off-by: Elena
Sometimes multifd sends just sync packet with no pages
(normal_num is 0). In this case the old value is being
preserved and being accounted for while only packet_len
is being transferred.
Reset it to 0 after sending and accounting for.
Signed-off-by: Elena Ufimtseva
Reviewed-by: Fabiano Rosas
and moved discussion
of the other issues under "---".
Thank you in advance and looking forward for your feedback.
Elena Ufimtseva (4):
migration: check for rate_limit_max for RATE_LIMIT_DISABLED
multifd: document packet_len, next_packet_size
multifd: fix counters in multifd_s
used to indicate
the size of the compressed buffer on source and destination.
Will be it helpful to rename it as data_size or dirty_data_size?
Signed-off-by: Elena Ufimtseva
---
migration/multifd.h | 35 ++-
1 file changed, 30 insertions(+), 5 deletions(-)
diff
Hello Hao,
On Mon, Nov 13, 2023 at 9:42 PM Hao Xiang wrote:
>
> v2
> * Rebase on top of 3e01f1147a16ca566694b97eafc941d62fa1e8d8.
> * Leave Juan's changes in their original form instead of squashing them.
> * Add a new commit to refactor the multifd_send_thread function to prepare
> for introduc
On Fri, Oct 12, 2018 at 07:48:34PM -0400, Jagannathan Raman wrote:
> From: Elena Ufimtseva
>
> Define PCI Device proxy object as a parent of TYPE_PCI_DEVICE.
> PCI Proxy Object will register PCI BARs, MemoryRegionOps to handle
> access to the BARs and forward those to the remot
On Wed, Jun 26, 2024 at 02:41:34PM -0400, Peter Xu wrote:
> On Wed, Jun 26, 2024 at 12:04:43PM +0100, Joao Martins wrote:
> > Are you thinking in something specifically?
>
> Not really. I don't think I have any idea on how to make it better,
> unfortunately, but we did some measurement too quite s
On Thu, Feb 27, 2020 at 05:18:30PM +, Stefan Hajnoczi wrote:
> On Mon, Feb 24, 2020 at 03:55:39PM -0500, Jagannathan Raman wrote:
> > From: Elena Ufimtseva
> >
> > Validate the incoming commands to confirm that they would not cause any
> > errors in the remote proc
On Thu, Feb 27, 2020 at 04:58:04PM +, Stefan Hajnoczi wrote:
> On Mon, Feb 24, 2020 at 03:55:41PM -0500, Jagannathan Raman wrote:
> > From: Elena Ufimtseva
> >
> > Signed-off-by: Elena Ufimtseva
> > Signed-off-by: Jagannathan Raman
> > Signed-off-by: John
On Thu, Feb 27, 2020 at 05:11:40PM +, Stefan Hajnoczi wrote:
> On Mon, Feb 24, 2020 at 03:55:40PM -0500, Jagannathan Raman wrote:
> > From: John G Johnson
> >
> > Signed-off-by: John G Johnson
> > Signed-off-by: Elena Ufimtseva
> > Signed-off-by: Jagannath
On Mon, Mar 02, 2020 at 05:47:45PM +, Daniel P. Berrangé wrote:
> On Mon, Mar 02, 2020 at 06:36:13PM +0100, Philippe Mathieu-Daudé wrote:
> > typo "multi" in patch subject.
> >
Thank Philippe, will fix.
> > On 2/24/20 9:55 PM, Jagannathan Raman wro
On Wed, Mar 04, 2020 at 11:00:32AM +, Daniel P. Berrangé wrote:
> On Mon, Mar 02, 2020 at 02:39:37PM -0800, Elena Ufimtseva wrote:
> > On Mon, Mar 02, 2020 at 05:47:45PM +, Daniel P. Berrangé wrote:
> > > On Mon, Mar 02, 2020 at 06:36:13PM +0100, Philippe Mathieu-Daudé w
On Wed, Mar 04, 2020 at 04:33:57PM +, Daniel P. Berrangé wrote:
> On Wed, Mar 04, 2020 at 08:25:34AM -0800, Elena Ufimtseva wrote:
> > On Wed, Mar 04, 2020 at 11:00:32AM +, Daniel P. Berrangé wrote:
> > > On Mon, Mar 02, 2020 at 02:39:37PM -0800, Elena Ufimtseva wrote:
&
On Thu, Mar 05, 2020 at 02:39:49PM +, Dr. David Alan Gilbert wrote:
> * Jagannathan Raman (jag.ra...@oracle.com) wrote:
> > The remote process sends the VMSD to the Proxy object, on the source
> > side
> >
> > Signed-off-by: Elena Ufimtseva
> > Signed-off-b
gt; >
> > > > On 3/4/2020 10:58 AM, Dr. David Alan Gilbert wrote:
> > > > > * Jagannathan Raman (jag.ra...@oracle.com) wrote:
> > > > > > Add Makefile support to enable migration in remote process
> > > > > >
> > >
On Tue, Aug 11, 2020 at 03:41:30PM +0100, Stefan Hajnoczi wrote:
> On Fri, Jul 31, 2020 at 02:20:24PM -0400, Jagannathan Raman wrote:
> > @@ -343,3 +349,49 @@ static void probe_pci_info(PCIDevice *dev, Error
> > **errp)
> > }
> > }
> > }
> > +
> > +static void hb_msg(PCIProxyDev *de
On Tue, Mar 10, 2020 at 04:09:41PM +, Stefan Hajnoczi wrote:
> On Mon, Feb 24, 2020 at 03:54:58PM -0500, Jagannathan Raman wrote:
> > +/*
> > + * TODO: Dont use mpqemu link object since it is
> > + * not needed to be created via -object.
> > + */
>
> Please investigate and resolve this TODO.
>
From: Elena Ufimtseva
Hello
This is a resend of v6 patchset since we regrettably omitted few comments
from v5 review in the previously sent series
(see in https://lists.gnu.org/archive/html/qemu-devel/2020-04/msg00828.html).
We also run more tests and fixed the build errors that were found in
From: Elena Ufimtseva
Refactor command-line parser code so that it could be used by
other processes as well.
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
MAINTAINERS | 2 +
Makefile.objs| 2 +
include/qemu-parse.h | 42
From: Jagannathan Raman
Allow RAM MemoryRegion to be created from an offset in a file, instead
of allocating at offset of 0 by default. This is needed to synchronize
RAM between QEMU & remote process.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: E
From: Elena Ufimtseva
Some of the initialization helper functions w.r.t chardev
in vl.c are also used by the remote process. Therefore, these functions
are refactored into shared files that both QEMU & remote process
could use.
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Joh
From: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Reviewed-by: Dr. David Alan Gilbert
---
hmp-commands.hx| 4 +-
monitor/misc.c | 76 +++---
monitor/monitor
From: Jagannathan Raman
Send a message to the remote process to connect PCI device with the
corresponding Proxy object in QEMU
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
hw/proxy/qemu-proxy.c| 34
: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 ++
hw/pci/Makefile.objs | 2 +-
include/remote/pcihost.h | 45
remote/Makefile.objs | 1 +
remote/pcihost.c | 64
From: Elena Ufimtseva
Some of the initialization helper functions w.r.t monitor
in vl.c are also used by the remote process. Therefore, these functions
are refactored into shared files that both QEMU & remote process
could use.
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Joh
From: Jagannathan Raman
Add a configuration option to separate multi-process code
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
---
configure | 11 +++
1 file changed, 11 insertions(+)
diff --git a/configure b/configure
index
.
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
---
hw/proxy/qemu-proxy.c | 64 ++
include/hw/proxy/qemu-proxy.h | 20 -
include/io/mpqemu-link.h | 12 +
io/mpqemu-link.c | 6 +++
remote
From: Elena Ufimtseva
Add "targets" field to HMP command definition to select the targets
which would be supported by each command
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
hmp-commands-info.hx | 10 ++
hmp-c
From: Elena Ufimtseva
Can be used with -d rdebug command options when starting qemu.
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Reviewed-by: Stefan Hajnoczi
---
include/qemu/log.h | 1 +
util/log.c | 2 ++
2 files changed, 3
From: Elena Ufimtseva
Build system changes to enable QMP module in the remote process
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
Makefile.objs | 10 ++
Makefile.target | 35
changes to memory, the remote process receives
the message and processes it in the handler for SYNC_SYSMEM message.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS| 2 +
Makefile.target| 3 +
hw
From: Jagannathan Raman
Adds the handler to process message from QEMU,
Initialize remote process main loop, handles SYNC_SYSMEM
message by updating its "system_memory" container using
shared file descriptors received from QEMU.
Signed-off-by: John G Johnson
Signed-off-by: Elena
.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 ++
Makefile.target | 2 ++
exec.c | 17 +++
include/exec/ram_addr.h | 2 ++
include/io/mpqemu-link.h | 12
include
From: Jagannathan Raman
Add "socket" object property which initializes the communication channel
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
hw/proxy/qemu-proxy.c | 20
1 file changed, 20 insertions(+)
di
From: Elena Ufimtseva
The Proxy Object sends the PCI config space accesses as messages
to the remote process over the communication channel
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
hw/proxy/qemu-proxy.c| 61
From: Elena Ufimtseva
If the remote process is alive, it responds to proxy's heartbeat
messages
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
remote/remote-main.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/remote/r
From: Elena Ufimtseva
Perform device reset in the remote process when QEMU performs
device reset. This is required to reset the internal state
(like registers, etc...) of emulated devices
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
hw
-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 +
Makefile.target | 1 +
hw/Makefile.objs | 2 -
hw/proxy/Makefile.objs| 1 -
hw/proxy/qemu-proxy.c | 52
From: Elena Ufimtseva
Enable remote process to parse device command line option
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
remote/remote-opts.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/remote/remote-opts.c b
From: Elena Ufimtseva
Introduce SCSI_PROCESS & REMOTE_PROCESS build flags to separate
code that applies only to remote processes.
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
Makefile.target | 4
rules.mak | 2 +-
2 f
From: Elena Ufimtseva
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
remote/remote-main.c | 13 +
remote/remote-opts.c | 11 +++
2 files changed, 24 insertions(+)
diff --git a/remote/remote-main.c b/remote/remote-main.c
From: Elena Ufimtseva
QMP module doesn't need some functions to run independently on the
remote processes. However, these functions are necessary for
compilation. Therefore, these functions are stub'ed out. The
stub functions raise an assert if QEMU is built in debug mode
(--en
From: Jagannathan Raman
Modify Makefile to support the building of the remote
device process. Implements main() function of remote
device process.
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 8 ++
Makefile
From: Elena Ufimtseva
Relocate machine_int and exit notifiers into common code
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
MAINTAINERS | 1 +
Makefile.objs | 1 +
include/sysemu/sysemu.h | 2
From: John G Johnson
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
---
MAINTAINERS | 1 +
docs/devel/index.rst | 1 +
docs/devel/multi-process.rst | 957 +++
3 files changed, 959
From: Jagannathan Raman
Add stub functions that are needed during compile time but not in
runtime.
To avoid duplicate symbol while linking for monitor_get_fd, put in
a separate file.
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
From: Elena Ufimtseva
Defines a PCI Device proxy object as a parent of TYPE_PCI_DEVICE.
PCI Proxy Object registers as a PCI device with QEMU and forwards all
PCI accesses to the remote process using the communication channel.
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
From: Jagannathan Raman
In some cases, for example MMIO read, QEMU has to wait for the remote to
complete a command before proceeding. An eventfd based mechanism is
added to synchronize QEMU & remote process.
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: E
ents received on the communication channel.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 +
include/io/mpqemu-link.h | 127
io/Makefile.objs | 2 +
io/mpqemu-link.c |
From: Jagannathan Raman
Retrieve PCI configuration info about the remote device and
configure the Proxy PCI object based on the returned information
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
hw/proxy/qemu-proxy.c| 84
From: Elena Ufimtseva
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
MAINTAINERS | 2 ++
remote/Makefile.objs | 1 +
remote/remote-main.c | 21 -
remote/remote-opts.c | 75
From: Jagannathan Raman
remote-machine object sets up various subsystems of the remote device
process. Instantiate PCI host bridge object and initialize RAM, IO &
PCI memory regions.
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimt
From: Elena Ufimtseva
In order to detect remote processes which are hung, the
proxy periodically sends heartbeat messages to confirm if
the remote process is alive
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
hw/proxy/qemu-proxy.c
From: Elena Ufimtseva
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
MAINTAINERS | 2 +
docs/multi-process.rst | 85 +
scripts/mpqemu-launcher-perf-mode.py | 92
.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 ++
hw/i386/Makefile.objs | 1 +
hw/i386/remote-memory.c | 58 +
include/hw/i386/remote-memory.h | 20
From: Jagannathan Raman
Allow RAM MemoryRegion to be created from an offset in a file, instead
of allocating at offset of 0 by default. This is needed to synchronize
RAM between QEMU & remote process.
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: E
From: Elena Ufimtseva
process to avoid blocking the main loop during the message exchanges.
To be used by proxy device.
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
include/io/mpqemu-link.h | 16 +
io/mpqemu-link.c | 78
From: Elena Ufimtseva
Defines MPQemuMsg, which is the message that is sent to the remote
process. This message is sent over QIOChannel and is used to
command the remote process to perform various tasks.
Also defined the helper functions to send and receive messages over the
QIOChannel
Signed
From: Elena Ufimtseva
Defines a PCI Device proxy object as a child of TYPE_PCI_DEVICE.
Signed-off-by: Elena Ufimtseva
Signed-off-by: Jagannathan Raman
Signed-off-by: John G Johnson
---
MAINTAINERS| 2 ++
hw/pci/Makefile.objs | 1 +
hw/pci/proxy.c | 70
From: Elena Ufimtseva
Hello
This is the v7 of the patchset.
Thank you very much for the detailed feedback for v6. We appreciate your time.
We have addressed the latest comments and suggestions that were
provided on v6 patch series and incorporated to this patchset.
This is the list of changes
From: Jagannathan Raman
Send a message to the remote process to connect PCI device with the
corresponding Proxy object in QEMU
Signed-off-by: Elena Ufimtseva
Signed-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
---
hw/i386/remote-msg.c | 39
From: Elena Ufimtseva
The Proxy Object sends the PCI config space accesses as messages
to the remote process over the communication channel
TODO:
Investigate if the local PCI config writes can be dropped.
Without the proxy local PCI config space writes for the device,
the driver in the guest
From: Elena Ufimtseva
In order to detect remote processes which are hung, the
proxy periodically sends heartbeat messages to confirm if
the remote process is alive. The remote process responds
to this heartbeat message to confirm it is alive.
Signed-off-by: Jagannathan Raman
Signed-off-by
-off-by: John G Johnson
Signed-off-by: Jagannathan Raman
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 2 +
hw/Makefile.objs | 1 +
hw/i386/remote-msg.c | 4 +
hw/i386/remote.c | 15
hw/pci/proxy.c| 52 +
hw/remote
: Jagannathan Raman
Signed-off-by: John G Johnson
Signed-off-by: Elena Ufimtseva
---
MAINTAINERS | 8 +
hw/pci-host/Makefile.objs| 1 +
hw/pci-host/remote.c | 63
include/hw/pci-host/remote.h | 34 +++
4 files
1 - 100 of 365 matches
Mail list logo