From: "Dr. David Alan Gilbert"
Rmove the avocado test for virtiofsd, since we're about to remove
the C implementation.
Signed-off-by: Dr. David Alan Gilbert
---
.../org.centos/stream/8/x86_64/test-avocado | 7 -
tests/avocado/virtiofs_submounts.py | 217 --
2 file
From: "Dr. David Alan Gilbert"
The following changes since commit 6dffbe36af79e26a4d23f94a9a1c1201de99c261:
Merge tag 'migration-20230215-pull-request' of
https://gitlab.com/juan.quintela/qemu into staging (2023-02-16 13:09:51 +)
are available in the Git repository at:
https://gitlab.
From: "Dr. David Alan Gilbert"
Move the deprecation message, since it's now gone.
Signed-off-by: Dr. David Alan Gilbert
Acked-by: Stefan Hajnoczi
---
docs/about/deprecated.rst | 18 --
docs/about/removed-features.rst | 13 +
2 files changed, 13 insertions(+),
From: "Dr. David Alan Gilbert"
Rmove the avocado test for virtiofsd, since we're about to remove
the C implementation.
Signed-off-by: Dr. David Alan Gilbert
Acked-by: Stefan Hajnoczi
---
.../org.centos/stream/8/x86_64/test-avocado | 7 -
tests/avocado/virtiofs_submounts.py | 217
From: "Dr. David Alan Gilbert"
Remove all the virtiofsd build and docs infrastructure.
Signed-off-by: Dr. David Alan Gilbert
Acked-by: Stefan Hajnoczi
---
MAINTAINERS| 2 --
docs/conf.py | 4
docs/meson.build
From: "Dr. David Alan Gilbert"
Move the deprecation message, since it's now gone.
Signed-off-by: Dr. David Alan Gilbert
---
docs/about/deprecated.rst | 18 --
docs/about/removed-features.rst | 13 +
2 files changed, 13 insertions(+), 18 deletions(-)
diff --gi
From: "Dr. David Alan Gilbert"
Remove all the virtiofsd build and docs infrastructure.
Signed-off-by: Dr. David Alan Gilbert
---
MAINTAINERS| 2 --
docs/conf.py | 4
docs/meson.build | 1
From: "Dr. David Alan Gilbert"
We deprecated the C virtiofsd in commit 34deee7b6a1418f3d62a
in v7.0 in favour of the Rust implementation at
https://gitlab.com/virtio-fs/virtiofsd
since then, the Rust version has had more development and
has held up well. It's time to say goodbye to the C ver
From: "Dr. David Alan Gilbert"
I'm leaving Red Hat next week, so clean up the maintainer entries.
'virtiofs' is just the device code now, so is pretty small, and
Stefan is still a maintainer there.
'migration' still has Juan.
For 'HMP' I'll swing that over to my personal email.
Signed-off-by:
From: "Dr. David Alan Gilbert"
Inspired by Julia Lawall's fixing of Linux
kernel comments, I looked at qemu, although I did it manually.
Signed-off-by: Dr. David Alan Gilbert
---
hw/intc/openpic.c| 2 +-
hw/net/imx_fec.c | 2 +-
hw/pci/pcie_aer.c
From: "Dr. David Alan Gilbert"
'namespace' is misspelled in a bunch of places.
Signed-off-by: Dr. David Alan Gilbert
---
hw/9pfs/9p-xattr-user.c | 8
hw/acpi/nvdimm.c| 2 +-
hw/nvme/ctrl.c | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/hw/9pfs/
From: "Dr. David Alan Gilbert"
I've sent the 3 char set last month, but have updated
it a little; I cleaned up a comment style that was already
broken so checkpatch is happy.
The 'namesapce' is a new patch; it's amazing how many places
make the same typo!
Dave
Dr. David Alan Gilbert (2):
Tri
From: Leonardo Bras
During implementation of MSG_ZEROCOPY feature, a lot of #ifdefs were
introduced, particularly at qio_channel_socket_writev().
Rewrite some of those changes so it's easier to read.
Also, introduce an assert to help detect incorrect zero-copy usage is when
it's disabled on bui
From: Juan Quintela
Nobody has ever showed up to unregister individual pages, and another
set of patches written by Daniel P. Berrangé
just remove qemu_rdma_signal_unregister() function needed here.
Signed-off-by: Juan Quintela
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan
From: Leonardo Bras
Somewhere between v6 and v7 the of the zero-copy-send patchset a crucial
part of the flushing mechanism got missing: incrementing zero_copy_queued.
Without that, the flushing interface becomes a no-op, and there is no
guarantee the buffer is really sent.
This can go as bad a
From: Daniel P. Berrangé
Introduce a QIOChannelBlock class that exposes the BlockDriverState
VMState region for I/O.
This is kept in the migration/ directory rather than io/, to avoid
a mutual dependancy between block/ <-> io/ directories. Also the
VMState should only be used by the migration co
From: Daniel P. Berrangé
The name 'ftell' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
reflects
From: Leonardo Bras
When originally implemented, zero_copy_send was designed as a Migration
paramenter.
But taking into account how is that supposed to work, and how
the difference between a capability and a parameter, it only makes sense
that zero-copy-send would work better as a capability.
T
From: "Dr. David Alan Gilbert"
The following changes since commit 2b049d2c8dc01de750410f8f1a4eac498c04c723:
Merge tag 'pull-aspeed-20220622' of https://github.com/legoater/qemu into
staging (2022-06-22 07:27:06 -0700)
are available in the Git repository at:
https://gitlab.com/dagrh/qemu.g
From: Daniel P. Berrangé
The qemu_file_update_transfer name doesn't give a clear guide on what
its purpose is, and how it differs from the qemu_file_credit_transfer
method. The latter is specifically for accumulating for total migration
traffic, while the former is specifically for accounting in
From: Daniel P. Berrangé
This is for code which needs a portable equivalent to a QIOChannelFile
connected to /dev/null.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
include/io/channel-null.h | 55
From: Daniel P. Berrangé
This renames the following QEMUFile fields
* bytes_xfer -> rate_limit_used
* xfer_limit -> rate_limit_max
The intent is to make it clear that 'bytes_xfer' is specifically related
to rate limiting of data and applies to data queued, which need not have
been transferred
From: Daniel P. Berrangé
This removes one further custom impl of QEMUFile, in favour of a
QIOChannel based impl.
Reviewed-by: Eric Blake
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 7 +
From: Hyman Huang(黄勇)
Add a non-required argument 'CPUState' to kvm_dirty_ring_reap so
that it can cover single vcpu dirty-ring-reaping scenario.
Signed-off-by: Hyman Huang(黄勇)
Reviewed-by: Peter Xu
Message-Id:
Signed-off-by: Dr. David Alan Gilbert
---
accel/kvm/kvm-all.c | 23
From: Daniel P. Berrangé
The QEMUFile 'save_hook' callback has a 'size_t size' parameter.
The RDMA impl of this has logic that takes different actions
depending on whether the value is zero or non-zero. It has
commented out logic that would have taken further actions
if the value was negative.
From: Daniel P. Berrangé
The only callers of qemu_fopen_ops pass 'true' for the 'has_ioc'
parameter, so hardcode this assumption in QEMUFile, by passing in
the QIOChannel object as a non-opaque parameter.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Q
From: Daniel P. Berrangé
With this change, all QEMUFile usage is backed by QIOChannel at
last.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Wrap long lines
---
From: Hyman Huang(黄勇)
abstract out dirty log change logic into function
global_dirty_log_change.
abstract out dirty page rate calculation logic via
dirty-ring into function vcpu_calculate_dirtyrate.
abstract out mathematical dirty page rate calculation
into do_calculate_dirtyrate, decouple it f
From: Daniel P. Berrangé
The field name 'pos' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
refl
From: Daniel P. Berrangé
The qemu_update_position method name gives the misleading impression
that it is changing the current file offset. Most of the files are
just streams, however, so there's no concept of a file offset in the
general case.
What this method is actually used for is to report o
From: Daniel P. Berrangé
This directly implements the shutdown logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channel.c
From: Daniel P. Berrangé
The only user of the hooks is RDMA which provides a QIOChannel backed
impl of QEMUFile. It can thus use the qemu_file_get_ioc() method.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signe
From: Daniel P. Berrangé
Prepare for the elimination of QEMUFileOps by introducing a pair of new
constructors. This lets us distinguish between an input and output file
object explicitly rather than via the existance of specific callbacks.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dani
From: Daniel P. Berrangé
Now that all QEMUFile callbacks are removed, the entire concept can be
deleted.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/channel
From: Daniel P. Berrangé
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file.h | 5 -
1 file changed, 5 deletions(-)
diff --git a/migration/qemu-file.
From: Hyman Huang(黄勇)
Introduce kvm_dirty_ring_size util function to help calculate
dirty ring ful time.
Signed-off-by: Hyman Huang(黄勇)
Acked-by: Peter Xu
Message-Id:
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Fixed up excess #endif
---
accel/kvm/kvm-all.c| 5 +
accel/stubs/
From: Daniel P. Berrangé
This directly implements the get_return_path logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-cha
From: Daniel P. Berrangé
This directly implements the get_buffer logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channel.
From: Hyman Huang(黄勇)
Introduce the third method GLOBAL_DIRTY_LIMIT of dirty
tracking for calculate dirtyrate periodly for dirty page
rate limit.
Add dirtylimit.c to implement dirtyrate calculation periodly,
which will be used for dirty page rate limit.
Add dirtylimit.h to export util functions
From: Daniel P. Berrangé
This directly implements the set_blocking logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channe
From: Daniel P. Berrangé
This directly implements the writev_buffer logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-chann
From: Hyman Huang(黄勇)
Setup a negative feedback system when vCPU thread
handling KVM_EXIT_DIRTY_RING_FULL exit by introducing
throttle_us_per_full field in struct CPUState. Sleep
throttle_us_per_full microseconds to throttle vCPU
if dirtylimit is in service.
Signed-off-by: Hyman Huang(黄勇)
Revie
From: Daniel P. Berrangé
This directly implements the close logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channel.c | 1
From: Hyman Huang(黄勇)
Implement dirtyrate calculation periodically basing on
dirty-ring and throttle virtual CPU until it reachs the quota
dirty page rate given by user.
Introduce qmp commands "set-vcpu-dirty-limit",
"cancel-vcpu-dirty-limit", "query-vcpu-dirty-limit"
to enable, disable, query d
From: Hyman Huang(黄勇)
Add dirty page rate limit test if kernel support dirty ring.
The following qmp commands are covered by this test case:
"calc-dirty-rate", "query-dirty-rate", "set-vcpu-dirty-limit",
"cancel-vcpu-dirty-limit" and "query-vcpu-dirty-limit".
Signed-off-by: Hyman Huang(黄勇)
Ack
From: Hyman Huang(黄勇)
Introduce cpu_list_generation_id to track cpu list generation so
that cpu hotplug/unplug can be detected during measurement of
dirty page rate.
cpu_list_generation_id could be used to detect changes of cpu
list, which is prepared for dirty page rate measurement.
Signed-off
From: Daniel P. Berrangé
This is for code which needs a portable equivalent to a QIOChannelFile
connected to /dev/null.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
include/io/channel-null.h | 55
From: "Dr. David Alan Gilbert"
The following changes since commit 2b049d2c8dc01de750410f8f1a4eac498c04c723:
Merge tag 'pull-aspeed-20220622' of https://github.com/legoater/qemu into
staging (2022-06-22 07:27:06 -0700)
are available in the Git repository at:
https://gitlab.com/dagrh/qemu.g
From: Leonardo Bras
Somewhere between v6 and v7 the of the zero-copy-send patchset a crucial
part of the flushing mechanism got missing: incrementing zero_copy_queued.
Without that, the flushing interface becomes a no-op, and there is no
guarantee the buffer is really sent.
This can go as bad a
From: Daniel P. Berrangé
This removes one further custom impl of QEMUFile, in favour of a
QIOChannel based impl.
Reviewed-by: Eric Blake
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 7 +
From: Daniel P. Berrangé
The QEMUFile 'save_hook' callback has a 'size_t size' parameter.
The RDMA impl of this has logic that takes different actions
depending on whether the value is zero or non-zero. It has
commented out logic that would have taken further actions
if the value was negative.
From: Daniel P. Berrangé
With this change, all QEMUFile usage is backed by QIOChannel at
last.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Wrap long lines
---
From: Daniel P. Berrangé
The name 'ftell' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
reflects
From: Juan Quintela
Nobody has ever showed up to unregister individual pages, and another
set of patches written by Daniel P. Berrangé
just remove qemu_rdma_signal_unregister() function needed here.
Signed-off-by: Juan Quintela
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan
From: Daniel P. Berrangé
Prepare for the elimination of QEMUFileOps by introducing a pair of new
constructors. This lets us distinguish between an input and output file
object explicitly rather than via the existance of specific callbacks.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dani
From: Leonardo Bras
During implementation of MSG_ZEROCOPY feature, a lot of #ifdefs were
introduced, particularly at qio_channel_socket_writev().
Rewrite some of those changes so it's easier to read.
Also, introduce an assert to help detect incorrect zero-copy usage is when
it's disabled on bui
From: Daniel P. Berrangé
The only user of the hooks is RDMA which provides a QIOChannel backed
impl of QEMUFile. It can thus use the qemu_file_get_ioc() method.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signe
From: Leonardo Bras
When originally implemented, zero_copy_send was designed as a Migration
paramenter.
But taking into account how is that supposed to work, and how
the difference between a capability and a parameter, it only makes sense
that zero-copy-send would work better as a capability.
T
From: Daniel P. Berrangé
This renames the following QEMUFile fields
* bytes_xfer -> rate_limit_used
* xfer_limit -> rate_limit_max
The intent is to make it clear that 'bytes_xfer' is specifically related
to rate limiting of data and applies to data queued, which need not have
been transferred
From: Daniel P. Berrangé
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file.h | 5 -
1 file changed, 5 deletions(-)
diff --git a/migration/qemu-file.
From: Daniel P. Berrangé
This directly implements the shutdown logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channel.c
From: Daniel P. Berrangé
This directly implements the set_blocking logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channe
From: Daniel P. Berrangé
The qemu_update_position method name gives the misleading impression
that it is changing the current file offset. Most of the files are
just streams, however, so there's no concept of a file offset in the
general case.
What this method is actually used for is to report o
From: Daniel P. Berrangé
This directly implements the close logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-channel.c | 1
From: Hyman Huang(黄勇)
Implement dirtyrate calculation periodically basing on
dirty-ring and throttle virtual CPU until it reachs the quota
dirty page rate given by user.
Introduce qmp commands "set-vcpu-dirty-limit",
"cancel-vcpu-dirty-limit", "query-vcpu-dirty-limit"
to enable, disable, query d
From: Daniel P. Berrangé
Now that all QEMUFile callbacks are removed, the entire concept can be
deleted.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/channel
From: Daniel P. Berrangé
Introduce a QIOChannelBlock class that exposes the BlockDriverState
VMState region for I/O.
This is kept in the migration/ directory rather than io/, to avoid
a mutual dependancy between block/ <-> io/ directories. Also the
VMState should only be used by the migration co
From: Daniel P. Berrangé
This directly implements the writev_buffer logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-chann
From: Hyman Huang(黄勇)
Add a non-required argument 'CPUState' to kvm_dirty_ring_reap so
that it can cover single vcpu dirty-ring-reaping scenario.
Signed-off-by: Hyman Huang(黄勇)
Reviewed-by: Peter Xu
Message-Id:
Signed-off-by: Dr. David Alan Gilbert
---
accel/kvm/kvm-all.c | 23
From: Hyman Huang(黄勇)
Introduce cpu_list_generation_id to track cpu list generation so
that cpu hotplug/unplug can be detected during measurement of
dirty page rate.
cpu_list_generation_id could be used to detect changes of cpu
list, which is prepared for dirty page rate measurement.
Signed-off
From: Daniel P. Berrangé
The field name 'pos' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
refl
From: Daniel P. Berrangé
This directly implements the get_buffer logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Fixup len = *-*EIO as
From: Hyman Huang(黄勇)
Introduce kvm_dirty_ring_size util function to help calculate
dirty ring ful time.
Signed-off-by: Hyman Huang(黄勇)
Acked-by: Peter Xu
Message-Id:
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Fixed up excess #endif
---
accel/kvm/kvm-all.c| 5 +
accel/stubs/
From: Daniel P. Berrangé
The only callers of qemu_fopen_ops pass 'true' for the 'has_ioc'
parameter, so hardcode this assumption in QEMUFile, by passing in
the QIOChannel object as a non-opaque parameter.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Q
From: Hyman Huang(黄勇)
Introduce the third method GLOBAL_DIRTY_LIMIT of dirty
tracking for calculate dirtyrate periodly for dirty page
rate limit.
Add dirtylimit.c to implement dirtyrate calculation periodly,
which will be used for dirty page rate limit.
Add dirtylimit.h to export util functions
From: Daniel P. Berrangé
The qemu_file_update_transfer name doesn't give a clear guide on what
its purpose is, and how it differs from the qemu_file_credit_transfer
method. The latter is specifically for accumulating for total migration
traffic, while the former is specifically for accounting in
From: Daniel P. Berrangé
This directly implements the get_return_path logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-cha
From: Hyman Huang(黄勇)
Add dirty page rate limit test if kernel support dirty ring.
The following qmp commands are covered by this test case:
"calc-dirty-rate", "query-dirty-rate", "set-vcpu-dirty-limit",
"cancel-vcpu-dirty-limit" and "query-vcpu-dirty-limit".
Signed-off-by: Hyman Huang(黄勇)
Ack
From: Hyman Huang(黄勇)
abstract out dirty log change logic into function
global_dirty_log_change.
abstract out dirty page rate calculation logic via
dirty-ring into function vcpu_calculate_dirtyrate.
abstract out mathematical dirty page rate calculation
into do_calculate_dirtyrate, decouple it f
From: Hyman Huang(黄勇)
Setup a negative feedback system when vCPU thread
handling KVM_EXIT_DIRTY_RING_FULL exit by introducing
throttle_us_per_full field in struct CPUState. Sleep
throttle_us_per_full microseconds to throttle vCPU
if dirtylimit is in service.
Signed-off-by: Hyman Huang(黄勇)
Revie
From: Leonardo Bras
Somewhere between v6 and v7 the of the zero-copy-send patchset a crucial
part of the flushing mechanism got missing: incrementing zero_copy_queued.
Without that, the flushing interface becomes a no-op, and there is no
guarantee the buffer is really sent.
This can go as bad a
From: Leonardo Bras
During implementation of MSG_ZEROCOPY feature, a lot of #ifdefs were
introduced, particularly at qio_channel_socket_writev().
Rewrite some of those changes so it's easier to read.
Also, introduce an assert to help detect incorrect zero-copy usage is when
it's disabled on bui
From: "Dr. David Alan Gilbert"
The following changes since commit 2b049d2c8dc01de750410f8f1a4eac498c04c723:
Merge tag 'pull-aspeed-20220622' of https://github.com/legoater/qemu into
staging (2022-06-22 07:27:06 -0700)
are available in the Git repository at:
https://gitlab.com/dagrh/qemu.g
From: Leonardo Bras
When originally implemented, zero_copy_send was designed as a Migration
paramenter.
But taking into account how is that supposed to work, and how
the difference between a capability and a parameter, it only makes sense
that zero-copy-send would work better as a capability.
T
From: Juan Quintela
Nobody has ever showed up to unregister individual pages, and another
set of patches written by Daniel P. Berrangé
just remove qemu_rdma_signal_unregister() function needed here.
Signed-off-by: Juan Quintela
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan
From: Daniel P. Berrangé
The QEMUFile 'save_hook' callback has a 'size_t size' parameter.
The RDMA impl of this has logic that takes different actions
depending on whether the value is zero or non-zero. It has
commented out logic that would have taken further actions
if the value was negative.
From: Daniel P. Berrangé
The name 'ftell' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
reflects
From: Daniel P. Berrangé
This removes one further custom impl of QEMUFile, in favour of a
QIOChannel based impl.
Reviewed-by: Eric Blake
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 7 +
From: Daniel P. Berrangé
This is for code which needs a portable equivalent to a QIOChannelFile
connected to /dev/null.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
include/io/channel-null.h | 55
From: Daniel P. Berrangé
The field name 'pos' gives the misleading impression that the QEMUFile
objects are seekable. This is not the case, as in general we just
have an opaque stream. The users of this method are only interested
in the total bytes processed. This switches to a new name that
refl
From: Daniel P. Berrangé
With this change, all QEMUFile usage is backed by QIOChannel at
last.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
dgilbert: Wrap long lines
---
From: Daniel P. Berrangé
This renames the following QEMUFile fields
* bytes_xfer -> rate_limit_used
* xfer_limit -> rate_limit_max
The intent is to make it clear that 'bytes_xfer' is specifically related
to rate limiting of data and applies to data queued, which need not have
been transferred
From: Daniel P. Berrangé
The qemu_file_update_transfer name doesn't give a clear guide on what
its purpose is, and how it differs from the qemu_file_credit_transfer
method. The latter is specifically for accumulating for total migration
traffic, while the former is specifically for accounting in
From: Daniel P. Berrangé
Prepare for the elimination of QEMUFileOps by introducing a pair of new
constructors. This lets us distinguish between an input and output file
object explicitly rather than via the existance of specific callbacks.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dani
From: Daniel P. Berrangé
The only user of the hooks is RDMA which provides a QIOChannel backed
impl of QEMUFile. It can thus use the qemu_file_get_ioc() method.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signe
From: Daniel P. Berrangé
Introduce a QIOChannelBlock class that exposes the BlockDriverState
VMState region for I/O.
This is kept in the migration/ directory rather than io/, to avoid
a mutual dependancy between block/ <-> io/ directories. Also the
VMState should only be used by the migration co
From: Daniel P. Berrangé
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file.h | 5 -
1 file changed, 5 deletions(-)
diff --git a/migration/qemu-file.
From: Daniel P. Berrangé
The only callers of qemu_fopen_ops pass 'true' for the 'has_ioc'
parameter, so hardcode this assumption in QEMUFile, by passing in
the QIOChannel object as a non-opaque parameter.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Q
From: Daniel P. Berrangé
The qemu_update_position method name gives the misleading impression
that it is changing the current file offset. Most of the files are
just streams, however, so there's no concept of a file offset in the
general case.
What this method is actually used for is to report o
From: Daniel P. Berrangé
This directly implements the get_return_path logic using QIOChannel APIs.
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Juan Quintela
Signed-off-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/qemu-file-cha
1201 - 1300 of 3600 matches
Mail list logo