From: "Dr. David Alan Gilbert"
If a new setmemtable command comes in once the vhost threads are
running, it will remap the guests address space and the threads
will now be looking in the wrong place.
Fortunately we're running this command under lock, so we can
update the queue mappings so that t
From: Eryu Guan
Signed-off-by: Eryu Guan
---
tools/virtiofsd/fuse_signals.c | 6 +-
tools/virtiofsd/helper.c | 9 ++---
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/tools/virtiofsd/fuse_signals.c b/tools/virtiofsd/fuse_signals.c
index 10a6f88088..edabf24e0d 1006
From: Misono Tomohiro
When writeback mode is enabled (-o writeback), O_APPEND handling is
done in kernel. Therefore virtiofsd clears O_APPEND flag when open.
Otherwise O_APPEND flag takes precedence over pwrite() and write
data may corrupt.
Currently clearing O_APPEND flag is done in lo_open(),
From: Stefan Hajnoczi
If thread A is using an inode it must not be deleted by thread B when
processing a FUSE_FORGET request.
The FUSE protocol itself already has a counter called nlookup that is
used in FUSE_FORGET messages. We cannot trust this counter since the
untrusted client can manipulat
From: piaojun
Define fuse_buf_writev() which use pwritev and writev to improve io
bandwidth. Especially, the src bufs with 0 size should be skipped as
their mems are not *block_size* aligned which will cause writev failed
in direct io mode.
Signed-off-by: Jun Piao
Suggested-by: Stefan Hajnoczi
From: Stefan Hajnoczi
Introduce a thread pool so that fv_queue_thread() just pops
VuVirtqElements and hands them to the thread pool. For the time being
only one worker thread is allowed since passthrough_ll.c is not
thread-safe yet. Future patches will lift this restriction so that
multiple FUS
From: Marc-André Lureau
The property doesn't make much sense for a vhost-user device.
Signed-off-by: Marc-André Lureau
Message-Id: <20191116112016.14872-1-marcandre.lur...@redhat.com>
Reviewed-by: Stefan Hajnoczi
Signed-off-by: Dr. David Alan Gilbert
---
hw/virtio/vhost-user-fs.c | 1
From: "Dr. David Alan Gilbert"
The following changes since commit b0ca999a43a22b38158a33d3f5881648bb4f:
Update version for v4.2.0 release (2019-12-12 16:45:57 +)
are available in the Git repository at:
git://github.com/dagrh/qemu.git tags/pull-virtiofs-20191213a
for you to fetch c
From: Stefan Hajnoczi
The following MSI-X vectors are required:
* VIRTIO Configuration Change
* hiprio virtqueue
* requests virtqueues
Fix the calculation to reserve enough MSI-X vectors. Otherwise guest
drivers fall back to a sub-optional configuration where all virtqueues
share a single ve
From: "Dr. David Alan Gilbert"
Hi,
A couple more uses of the rcu_read macros; in qsp and
hyperv (neither of which list maintainers, so I guess
best through RCU).
The hyperv case saves a temporary.
The qsp case uses an rcu_read_lock around the lifetime
of a snapshot and carefully comments that;
From: "Dr. David Alan Gilbert"
The automatic rcu read lock maintenance works quite
nicely in this case where it previously relied on a comment to
delimit the lifetime and now has a block.
Signed-off-by: Dr. David Alan Gilbert
---
util/qsp.c | 22 ++
1 file changed, 10 inser
From: "Dr. David Alan Gilbert"
Use RCU_READ_LOCK_GUARD and WITH_RCU_READ_LOCK_GUARD
to replace the manual rcu_read_(un)lock calls.
Signed-off-by: Dr. David Alan Gilbert
---
hw/hyperv/hyperv.c | 22 +-
1 file changed, 9 insertions(+), 13 deletions(-)
diff --git a/hw/hyperv/
From: "Dr. David Alan Gilbert"
I've got a case where usbredir_write manages to call back into itself
via spice; this patch causes the recursion to fail (0 bytes) the write;
this seems to avoid the deadlock I was previously seeing.
I can't say I fully understand the interaction of usbredir and sp
From: "Dr. David Alan Gilbert"
kvm_set_phys_mem can be called to reallocate a slot by something the
guest does (e.g. writing to PAM and other chipset registers).
This can happen in the middle of a migration, and if we're unlucky
it can now happen between the split 'sync' and 'clear'; the clear
as
From: "Dr. David Alan Gilbert"
Python 3.7.5 on f31 doesn't seem to like the old type=file syntax
on argparse.
Signed-off-by: Dr. David Alan Gilbert
---
scripts/vmstate-static-checker.py | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/scripts/vmstate-static-checker.py
From: "Dr. David Alan Gilbert"
We currently enable libcap-dev in build-clang to pick up the 9p proxy
helper. Paolo's patch changes that to use libcap-ng, so switch to using
it. This also means we'll be testing the scsi pr manager and the bridge
helper.
Signed-off-by: Dr. David Alan Gilbert
--
From: "Dr. David Alan Gilbert"
This fixes a symptom I've seen on vhost-user on aarch64 where the
daemon would be falsely notified of memory region changes that didn't
exist.
The underlying problem was me memcmp'ing MemoryRegionSections even
though they had padding in.
(Discovered while getting v
From: "Dr. David Alan Gilbert"
Using memcmp to compare structures wasn't safe,
as I found out on ARM when I was getting false miscompares.
Use the helper function for comparing the MRSs.
Fixes: ade6d081fc33948e56e6
Signed-off-by: Dr. David Alan Gilbert
---
hw/virtio/vhost.c | 9 +++--
1
From: "Dr. David Alan Gilbert"
MemoryRegionSection includes an Int128 'size' field;
on some platforms the compiler causes an alignment of this to
a 128bit boundary, leaving 8 bytes of dead space.
This deadspace can be filled with junk.
Move the size field to the top avoiding unnecsssary alignmen
From: "Dr. David Alan Gilbert"
Provide a comparison function that checks all the fields are the same.
Signed-off-by: Dr. David Alan Gilbert
Reviewed-by: Philippe Mathieu-Daudé
---
include/exec/memory.h | 12
1 file changed, 12 insertions(+)
diff --git a/include/exec/memory.h b/i
From: "Dr. David Alan Gilbert"
This fixes a symptom I've seen on vhost-user on aarch64 where the
daemon would be falsely notified of memory region changes that didn't
exist.
The underlying problem was me memcmp'ing MemoryRegionSections even
though they had padding in.
(Discovered while getting v
From: "Dr. David Alan Gilbert"
MemoryRegionSection includes an Int128 'size' field;
on some platforms the compiler causes an alignment of this to
a 128bit boundary, leaving 8 bytes of dead space.
This deadspace can be filled with junk.
Move the size field to the top avoiding unnecessary alignmen
From: "Dr. David Alan Gilbert"
Using memcmp to compare structures wasn't safe,
as I found out on ARM when I was getting falce miscompares.
Use the helper function for comparing the MRSs.
Fixes: ade6d081fc33948e56e6
Signed-off-by: Dr. David Alan Gilbert
---
hw/virtio/vhost.c | 9 +++--
1
From: Wei Yang
When one is equal or bigger then end, it means there is no page to
discard. Just break the loop in this case instead of processing it.
No functional change, just refactor it a little.
Signed-off-by: Wei Yang
Message-Id: <20190627020822.15485-3-richardw.y...@linux.intel.com>
Revi
From: Marcel Apfelbaum
At some point vmxnet3 live migration stopped working and git-bisect
didn't help finding a working version.
The issue is the PCI configuration space is not being migrated
successfully and MSIX remains masked at destination.
Remove the migration differentiation between PCI a
From: "Dr. David Alan Gilbert"
The following changes since commit f28ed74fd116491e31329044d140fde4aa23b2a0:
Update version for v4.1.0-rc5 release (2019-08-13 15:38:38 +0100)
are available in the Git repository at:
git://github.com/dagrh/qemu.git tags/pull-migration-20190814a
for you to fe
From: Wei Yang
Use common helper function to check the state.
Signed-off-by: Wei Yang
Message-Id: <20190719071129.11880-1-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/rdma.c | 6 +++---
1 file changed, 3 insertions(+),
From: Yury Kotov
Currently, there is no information about error if outgoing migration was failed
because of file channel errors.
Example (QMP session):
-> { "execute": "migrate", "arguments": { "uri": "exec:head -c 1" }}
<- { "return": {} }
...
-> { "execute": "query-migrate" }
<- { "return": { "
From: Wei Yang
If one equals end, it means we have gone through the whole bitmap.
Use a more restrict check to skip a unnecessary condition.
Signed-off-by: Wei Yang
Message-Id: <20190627020822.15485-2-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David
From: Wei Yang
Consolidate time information fill up into its function for better
readability.
Signed-off-by: Wei Yang
Message-Id: <20190716005411.4156-1-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/migration.c | 40 +++
From: Wei Yang
In postcopy-ram.c, we provide three functions to discard certain
RAMBlock range:
* postcopy_discard_send_init()
* postcopy_discard_send_range()
* postcopy_discard_send_finish()
Currently, we allocate/deallocate PostcopyDiscardState for each RAMBlock
on sending discard infor
From: Wei Yang
It would be proper to flush file even for iterable_only case.
Signed-off-by: Wei Yang
Message-Id: <20190709140924.13291-2-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/savevm.c | 3 ++-
1 file changed, 2
From: Wei Yang
Since we break the loop when there is no more page to discard, we are
sure the following process would find some page to discard.
It is not necessary to check it again.
Signed-off-by: Wei Yang
Message-Id: <20190627020822.15485-4-richardw.y...@linux.intel.com>
Reviewed-by: Dr. Da
From: Wei Yang
The purpose of the calculation is to find a HostPage which is partially
dirty.
* fixup_start_addr points to the start of the HostPage to discard
* run_start points to the next HostPage to check
While in the middle stage, there would two cases for run_start:
* aligned with
From: Wei Yang
This means it is not necessary to spare an extra variable to hold this
condition. Use host_offset directly is fine.
Signed-off-by: Wei Yang
Message-Id: <20190710050814.31344-3-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilber
From: Wei Yang
Use the same way for run_end to calculate run_start, which saves one
operation.
Signed-off-by: Wei Yang
Message-Id: <20190710050814.31344-2-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 10 ++-
From: Wei Yang
in_postcopy and iterable_only are not SaveStateEntry specific, it would
be more proper to check them out of iteration.
Signed-off-by: Wei Yang
Message-Id: <20190709140924.13291-4-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gil
From: Wei Yang
Use QEMU_IS_ALIGNED for the check, it would be more consistent with
other align calculations.
Signed-off-by: Wei Yang
Message-Id: <20190806004648.8659-3-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c
From: Wei Yang
PostcopyState is already set to ADVISE at the beginning of
loadvm_postcopy_handle_advise().
Remove the redundant set.
Signed-off-by: Wei Yang
Message-Id: <20190711080816.6405-1-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilb
From: Wei Yang
RAMBlock->used_length is always passed to migration_bitmap_sync_range(),
which could be retrieved from RAMBlock.
Suggested-by: Paolo Bonzini
Signed-off-by: Wei Yang
Message-Id: <20190718012547.16373-1-richardw.y...@linux.intel.com>
Reviewed-by: Peter Xu
Reviewed-by: Paolo Bonzi
From: Wei Yang
This is a preparation patch for further cleanup.
No functional change, just wrap two major part of
qemu_savevm_state_complete_precopy() into function.
Signed-off-by: Wei Yang
Message-Id: <20190709140924.13291-3-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
From: Wei Yang
With the growth of migration capabilities, it is not proper to display
them in "info migrate". Users are recommended to use "info
migrate_capabiltiies" to list them.
Signed-off-by: Wei Yang
Suggested-by: Dr. David Alan Gilbert
Message-Id: <20190806003645.8426-1-richardw.y...@li
From: Wei Yang
After cleanup, it would be clear to audience there are two cases
ram_load:
* precopy
* postcopy
And it is not necessary to check postcopy_running on each iteration for
precopy.
Signed-off-by: Wei Yang
Reviewed-by: Dr. David Alan Gilbert
Message-Id: <20190725002023.2335-3-
From: Ivan Ren
Limit the speed of multifd migration through common speed limitation
qemu file.
Signed-off-by: Ivan Ren
Message-Id: <1564464816-21804-3-git-send-email-ivan...@tencent.com>
Reviewed-by: Wei Yang
Reviewed-by: Juan Quintela
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram
From: Wei Yang
There is only one place to set start_postcopy to true,
qmp_migrate_start_postcopy(), which make sure start_postcopy could be
set to true when migrate_postcopy() return true.
So start_postcopy is true implies the other one.
Signed-off-by: Wei Yang
Message-Id: <20190718083747.5859
From: Wei Yang
MigrationState->bytes_xfer is only set to 0 in migrate_init().
Remove this unnecessary field.
Signed-off-by: Wei Yang
Message-Id: <20190402003106.17614-1-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/mig
From: Ivan Ren
Add qemu_file_update_transfer for just update bytes_xfer for speed
limitation. This will be used for further migration feature such as
multifd migration.
Signed-off-by: Ivan Ren
Reviewed-by: Wei Yang
Reviewed-by: Juan Quintela
Message-Id: <1564464816-21804-2-git-send-email-ivan
From: Wei Yang
LOADVM_QUIT allows a command to quit all layers of nested loadvm loops,
while current return value check is not that proper even it works now.
Current return value check "ret & LOADVM_QUIT" would return true if
bit[0] is 1. This would be true when ret is -1 which is used to indica
From: Juan Quintela
Signed-off-by: Juan Quintela
Message-Id: <20190814020218.1868-6-quint...@redhat.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c| 3 +++
migration/trace-events | 4
2 files changed, 7 insertions(+)
diff --git
From: Wei Yang
For migration incoming side, it either quit in precopy or postcopy. It
is safe to use the mis->bh for both instead of allocating a dedicated
QEMUBH for postcopy.
Signed-off-by: Wei Yang
Reviewed-by: Dr. David Alan Gilbert
Message-Id: <20190805053146.32326-1-richardw.y...@linux.
From: Wei Yang
It is not reasonable to continue when version_id mismatch.
Signed-off-by: Wei Yang
Message-Id: <20190722075339.25121-2-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 2 +-
1 file changed, 1 inserti
From: Juan Quintela
This makes easy to debug things because when you want for all threads
to arrive at that semaphore, you know which one your are waiting for.
Signed-off-by: Juan Quintela
Message-Id: <20190814020218.1868-3-quint...@redhat.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by
From: Ivan Ren
This patch fix a multifd migration bug in migration speed calculation, this
problem can be reproduced as follows:
1. start a vm and give a heavy memory write stress to prevent the vm be
successfully migrated to destination
2. begin a migration with multifd
3. migrate for a long
From: Ivan Ren
Multifd sync will send MULTIFD_FLAG_SYNC flag info to destination, add
these bytes to ram_counters record.
Signed-off-by: Ivan Ren
Suggested-by: Wei Yang
Message-Id: <1564464816-21804-4-git-send-email-ivan...@tencent.com>
Reviewed-by: Juan Quintela
Signed-off-by: Dr. David Alan
From: Wei Yang
Rename for better understanding of the code.
Suggested-by: Paolo Bonzini
Signed-off-by: Wei Yang
Message-Id: <20190808033155.30162-1-richardw.y...@linux.intel.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c | 6 +++---
1 file
From: Marc-André Lureau
Move migration helpers for strings under include/, so they can be used
outside of migration/
Signed-off-by: Marc-André Lureau
Reviewed-by: Juan Quintela
Message-Id: <20190808150325.21939-2-marcandre.lur...@redhat.com>
Signed-off-by: Dr. David Alan Gilbert
---
include/
From: Juan Quintela
Signed-off-by: Juan Quintela
Message-Id: <20190814020218.1868-2-quint...@redhat.com>
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan Gilbert
---
migration/ram.c| 4
migration/trace-events | 2 ++
2 files changed, 6 insertions(+)
diff --git a
From: "Dr. David Alan Gilbert"
The virtio-fs virtio device provides shared file system access using
the FUSE protocol carried ovew virtio.
The actual file server is implemented in an external vhost-user-fs device
backend process.
Signed-off-by: Stefan Hajnoczi
Signed-off-by: Sebastien Boeuf
Si
From: "Dr. David Alan Gilbert"
Hi,
This pair of patches adds the core of the virtio-fs support to qemu;
it's marked experimental since the kernel patch and spec changes aren't
in yet; but they're bubbling along.
While the spec change is still in progress; the ID number is already
reserved.
From: "Dr. David Alan Gilbert"
Add the PCI version of vhost-user-fs.
Launch QEMU like this:
qemu -chardev socket,path=/tmp/vhost-fs.sock,id=chr0
-device x-vhost-user-fs-pci,tag=myfs,chardev=chr0
Signed-off-by: Stefan Hajnoczi
Signed-off-by: Sebastien Boeuf
Signed-off-by: Dr. David A
From: "Dr. David Alan Gilbert"
This reverts commit f2784eed306449c3d04a71a05ed6463b8289aedf
since that accidentally removes the PCIe capabilities from virtio
devices because virtio_pci_dc_realize is called before the new 'mode'
flag is set.
I keep the expanded hw_compat entry because we've lost t
From: "Dr. David Alan Gilbert"
This reverts commit 8fa70dbd8bb478d9483c1da3e9976a2d86b3f9a0.
Because we're about to revert it's neighbour and thus uses an optional
again.
Signed-off-by: Dr. David Alan Gilbert
---
include/hw/qdev-core.h | 3 +++
qom/object.c | 3 +++
2 files changed,
From: "Dr. David Alan Gilbert"
Revert a couple of patches that break PCIe capabilities in virtio
devices. The 'optional' revert is just reverted to make the main
reversion trivial.
Symptom:
Loss of PCIe capabilities in virtio devices hung off PCIe bridges
Signed-off-by: Dr. David Alan Gilbert
From: "Dr. David Alan Gilbert"
This reverts commit f2784eed306449c3d04a71a05ed6463b8289aedf
since that accidentally removes the PCIe capabilities from virtio
devices because virtio_pci_dc_realize is called before the new 'mode'
flag is set.
Signed-off-by: Dr. David Alan Gilbert
---
hw/core/mac
From: "Dr. David Alan Gilbert"
ACS got added in 4.0 unconditionally, that broke older<->4.0 migration
where there was a PCIe root port.
Fix this by turning it off for 3.1 and older machines; note this
fixes compatibility for older QEMUs but breaks compatibility with 4.0
for older machine types.
From: "Dr. David Alan Gilbert"
PCIe ACS (Access Control services) got added in 4.0 and broke
migration to and from 3.1 and earlier. Fix it here
for older machine types, at the cost of breaking that compatibility
with 4.0.
Signed-off-by: Dr. David Alan Gilbert
Dr. David Alan Gilbert (2):
pc
From: "Dr. David Alan Gilbert"
ACS was added in 4.0 unconditionally, this breaks migration
compatibility.
Allow ACS to be disabled by adding a property that's
checked by pcie_root_port.
Unfortunately pcie-root-port doesn't have any instance data,
so there's no where for that flag to live, so stu
From: "Dr. David Alan Gilbert"
Hi,
This is a set of fixes that fixes things that coverity pointed out.
Only the last one (the NULL check in do_read) is probably important.
Dave
Dr. David Alan Gilbert (4):
virtiofsd: Remove fuse_req_getgroups
virtiofsd: fv_create_listen_socket error path s
From: "Dr. David Alan Gilbert"
Missing unlock in error path.
Fixes: Covertiy CID 1413123
Signed-off-by: Dr. David Alan Gilbert
---
tools/virtiofsd/passthrough_ll.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
index e6f2
From: "Dr. David Alan Gilbert"
If we fail when bringing up the socket we can leak the listen_fd;
in practice the daemon will exit so it's not really a problem.
Fixes: Coverity CID 1413121
Signed-off-by: Dr. David Alan Gilbert
---
tools/virtiofsd/fuse_virtio.c | 2 ++
1 file changed, 2 insertio
From: "Dr. David Alan Gilbert"
Remove fuse_req_getgroups that's unused in virtiofsd; it came in
from libfuse but we don't actually use it. It was called from
fuse_getgroups which we previously removed (but had left it's header
in).
Coverity had complained about null termination in it, but remov
From: "Dr. David Alan Gilbert"
Missing a NULL check if the argument fetch fails.
Fixes: Coverity CID 1413119
Signed-off-by: Dr. David Alan Gilbert
---
tools/virtiofsd/fuse_lowlevel.c | 4
1 file changed, 4 insertions(+)
diff --git a/tools/virtiofsd/fuse_lowlevel.c b/tools/virtiofsd/fuse_
From: "Dr. David Alan Gilbert"
The following changes since commit 2b8a51cdb3e8d15a5c35de7a2e76a813ae7358f0:
Merge remote-tracking branch 'remotes/gkurz/tags/9p-next-2020-02-08' into
staging (2020-02-10 16:07:29 +)
are available in the Git repository at:
https://gitlab.com/dagrh/qemu.g
From: "Dr. David Alan Gilbert"
If we fail when bringing up the socket we can leak the listen_fd;
in practice the daemon will exit so it's not really a problem.
Fixes: Coverity CID 1413121
Signed-off-by: Dr. David Alan Gilbert
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Stefan Hajnoczi
--
From: "Dr. David Alan Gilbert"
Missing unlock in error path.
Fixes: Covertiy CID 1413123
Signed-off-by: Dr. David Alan Gilbert
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Stefan Hajnoczi
---
tools/virtiofsd/passthrough_ll.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/virti
From: Stefan Hajnoczi
Document the virtiofsd(1) program and its command-line options. This
man page is a rST conversion of the original texi documentation that I
wrote.
Reviewed-by: Liam Merwick
Signed-off-by: Stefan Hajnoczi
Reviewed-by: Dr. David Alan Gilbert
Signed-off-by: Dr. David Alan
From: "Dr. David Alan Gilbert"
Missing a NULL check if the argument fetch fails.
Fixes: Coverity CID 1413119
Signed-off-by: Dr. David Alan Gilbert
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Stefan Hajnoczi
---
tools/virtiofsd/fuse_lowlevel.c | 4
1 file changed, 4 insertions(+)
d
From: "Dr. David Alan Gilbert"
Remove fuse_req_getgroups that's unused in virtiofsd; it came in
from libfuse but we don't actually use it. It was called from
fuse_getgroups which we previously removed (but had left it's header
in).
Coverity had complained about null termination in it, but remov
From: "Dr. David Alan Gilbert"
rdma_accept_incoming_migration is called from an fd handler and
can't return an Error * anywhere.
Currently it's leaking Error's in errp/local_err - there's
no point putting them in there unless we can report them.
Turn most into fprintf's, and the last into an err
From: "Dr. David Alan Gilbert"
There's an assert in autoconverge that checks that we quit the
iteration when we go below the expected threshold. Philippe
saw a case where this assert fired with the measured value
slightly over the threshold. (about 3k out of a few million).
I can think of two r
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: 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
901 - 1000 of 3600 matches
Mail list logo