On 12/18/2023 9:46 PM, Markus Armbruster wrote:
Xiaoyao Li writes:
On 12/1/2023 7:00 PM, Markus Armbruster wrote:
Xiaoyao Li writes:
From: Isaku Yamahata
Three sha384 hash values, mrconfigid, mrowner and mrownerconfig, of a TD
can be provided for TDX attestation.
So far they were hard c
On 2023/12/10 13:05, Akihiko Odaki wrote:
Introduction
This series is based on the RFC series submitted by Yui Washizu[1].
See also [2] for the context.
This series enables SR-IOV emulation for virtio-net. It is useful
to test SR-IOV support on the guest, or to expose several vDP
Am 18.12.23 um 15:49 schrieb Paolo Bonzini:
> On Mon, Dec 18, 2023 at 1:41 PM Fiona Ebner wrote:
>> I think it's because of nested drains, because when additionally
>> checking that the drain count is zero and only executing the loop then,
>> that issue doesn't seem to manifest
>
> But isn't virt
Hi Huang Rui,
Thank you for this new version.
All patches which I did not sign off are reviewed by me :)
Cheers,
Antonio Caggiano
On 19/12/2023 08:53, Huang Rui wrote:
Configure a new feature flag (context_create_with_flags) for
virglrenderer.
Originally-by: Antonio Caggiano
Signed-off-by:
Hi Ray, Antonio,
Le 19/12/2023 à 08:53, Huang Rui a écrit :
From: Antonio Caggiano
Add support for the Venus capset, which enables Vulkan support through
the Venus Vulkan driver for virtio-gpu.
Signed-off-by: Antonio Caggiano
Signed-off-by: Huang Rui
---
No change in v6.
hw/display/vir
Use PPC_FEATURE2_ISEL and PPC_FEATURE2_VEC_CRYPTO from linux headers
instead of the GNU specific PPC_FEATURE2_HAS_ISEL and
PPC_FEATURE2_HAS_VEC_CRYPTO. This fixes build with musl libc.
Fixes: 623d7e3551a6 (util: Add cpuinfo-ppc.c)
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1861
Signe
Signed-off-by: Nikita Ostrenkov
---
hw/arm/Kconfig| 1 +
hw/arm/fsl-imx6.c | 3 +++
2 files changed, 4 insertions(+)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 3ada335a24..386f06840c 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -536,6 +536,7 @@ config FSL_IMX6
select IMX_
On Mon, 18 Dec 2023 at 18:34, Daniel Henrique Barboza
wrote:
> On 12/18/23 14:53, Peter Maydell wrote:
> > On Mon, 18 Dec 2023 at 17:22, Daniel Henrique Barboza
> > wrote:
> > We don't seem to worry about that in any of the other
> > KVM code -- accel/kvm/ has lots of places that
> > use strerror
On Tue, 19 Dec 2023 at 04:49, Tomoyuki Hirose
wrote:
>
> I would be grateful if you would any comments on my patch.
It's on my todo list, but at this point I'm afraid I'm
not going to be able to get to it before I break for
the holidays, so it will be January before I can look at
it. (It's a bit
On Tue, Dec 19, 2023 at 05:09:27PM +0800, Antonio Caggiano wrote:
> Hi Huang Rui,
>
> Thank you for this new version.
>
> All patches which I did not sign off are reviewed by me :)
Thanks Antonio! May I have your RB in next version?
Best Regards,
Ray
>
> Cheers,
> Antonio Caggiano
>
> On 19/
g_spawn_sync() gives an informative message if it fails to execute
the script instead of reporting exiting status 1.
g_spawn_check_wait_status() also gives an message easier to understand
than the raw value returned by waitpid().
Signed-off-by: Akihiko Odaki
---
net/tap.c | 52 +
g_spawn_check_exit_status() is renamed to g_spawn_check_wait_status()
in 2.70.
Signed-off-by: Akihiko Odaki
---
include/glib-compat.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/glib-compat.h b/include/glib-compat.h
index 43a562974d80..5f76fbd28e6b 100644
--- a/include/glib-com
: 9c74490bff6c8886a922008d0c9ce6cae70dd17e
change-id: 20231219-glib-034a34bb05d8
Best regards,
--
Akihiko Odaki
On 2023/12/18 23:02, Markus Armbruster wrote:
Akihiko Odaki writes:
On 2023/12/11 15:51, Markus Armbruster wrote:
Akihiko Odaki writes:
The HotplugHandler of the machine will be used when the parent bus does
not exist, but the machine may not have one. Report an error in such a
case instea
Am 05.12.2023 um 19:20 hat Stefan Hajnoczi geschrieben:
> The AioContext lock no longer exists.
>
> There is one noteworthy change:
>
> - * More specifically, these functions use BDRV_POLL_WHILE(bs), which
> - * requires the caller to be either in the main thread and hold
> - * the Blockdri
On 2023/12/19 0:07, Rene Engel wrote:
--- Ursprüngliche Nachricht ---
Von: Akihiko Odaki
Datum: 18.12.2023 08:59:41
An: Rene Engel
Betreff: Re: [PATCH v7] ui/cocoa: Use NSWindow's ability to resize
On 2023/12/17 18:46, Rene Engel wrote:
--- Ursprüngliche Nachricht ---
Von: Akihiko Odaki
D
On 2023/12/19 16:53, Huang Rui wrote:
Sync up kernel headers to update venus macro till they are merged into
mainline.
Thanks for sorting things out with the kernel and spec.
Signed-off-by: Huang Rui
---
Changes in v6:
- Venus capset is applied in kernel, so update it in qemu for future us
The debug Sdtrig extension defines an CSR "mcontext". This commit
implements its predicate and read/write operations into CSR table.
Its value is reset as 0 when the trigger module is reset.
Signed-off-by: Alvin Chang
---
Changes from v1: Remove dedicated cfg, always implement mcontext.
target/
On 2023/12/19 16:53, Huang Rui wrote:
Introduce a new virgl_gpu_resource data structure and helper functions
for virgl. It's used to add new member which is specific for virgl in
following patches of blob memory support.
The name is ambigious. It should tell that it's specific for virgl.
Am 05.12.2023 um 19:19 hat Stefan Hajnoczi geschrieben:
> v2:
> - Add Patch 2 "scsi: assert that callbacks run in the correct AioContext"
> [Kevin]
> - Add Patch 7 "block: remove bdrv_co_lock()" [Eric and Kevin]
> - Remove stray goto label in Patch 8 [Kevin]
> - Fix "eeked" -> "eked" typo in Patch
Hao Xiang writes:
>>
>> > +}
>> > +
>> > +void dsa_start(void) {}
>> > +
>> > +void dsa_stop(void) {}
>> > +
>> > +void dsa_cleanup(void) {}
>> > +
>> > +#endif
>>
>> These could all be in the header.
>
> The function definitions are already in dsa.h Do you mean moving the
> function implementati
On Tue, Dec 19, 2023 at 08:35:27PM +0800, Akihiko Odaki wrote:
> On 2023/12/19 16:53, Huang Rui wrote:
> > Introduce a new virgl_gpu_resource data structure and helper functions
> > for virgl. It's used to add new member which is specific for virgl in
> > following patches of blob memory support.
>
On Thu, 2 Mar 2023 at 12:37, Paolo Bonzini wrote:
>
> From: David Woodhouse
>
> The way that Xen handles MSI PIRQs is kind of awful.
>
> There is a special MSI message which targets a PIRQ. The vector in the
> low bits of data must be zero. The low 8 bits of the PIRQ# are in the
> destination ID
On Tue, Dec 19, 2023 at 08:20:22PM +0800, Akihiko Odaki wrote:
> On 2023/12/19 16:53, Huang Rui wrote:
> > Sync up kernel headers to update venus macro till they are merged into
> > mainline.
>
> Thanks for sorting things out with the kernel and spec.
>
> >
> > Signed-off-by: Huang Rui
> > ---
Am 14.09.2023 um 16:00 hat Stefan Hajnoczi geschrieben:
> The virtio-blk device will soon be able to assign virtqueues to IOThreads,
> eliminating the single IOThread bottleneck. In order to do that, the I/O code
> path must support running in multiple threads.
>
> This patch series removes the Ai
Introduce the Xen variant of Arm ITS. It is hooked into the mmio
subsystem and recieves MSI messages. Upon receiving the MSI messages it
gets transfered to the Xen hypervisor with the new device model call for
further processing.
This change will allow for virtio-pci backends to send MSI interrupt
On Tue, 19 Dec 2023 at 13:49, Huang Rui wrote:
>
> On Tue, Dec 19, 2023 at 08:20:22PM +0800, Akihiko Odaki wrote:
> > On 2023/12/19 16:53, Huang Rui wrote:
> > > Sync up kernel headers to update venus macro till they are merged into
> > > mainline.
> >
> > Thanks for sorting things out with the ke
On 07/12/2023 16.58, Fabiano Rosas wrote:
Signed-off-by: Fabiano Rosas
---
tests/qtest/libqtest.c | 24
tests/qtest/libqtest.h | 10 ++
2 files changed, 34 insertions(+)
diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c
index f33a210861..7cee68a83
On 08/12/2023 16.02, Fabiano Rosas wrote:
Fabiano Rosas writes:
We can run the migration tests with two different QEMU binaries to
test migration compatibility between QEMU versions. This means we'll
be running the tests with an older QEMU in either source or
destination.
We need to avoid try
Since QEMU v8.0.0 the RISC-V virt machine has a switch to disable ACPI
table generation. Add it to the documentation.
Fixes: 168b8c29cedb ("hw/riscv/virt: Add a switch to disable ACPI")
Signed-off-by: Heinrich Schuchardt
---
docs/system/riscv/virt.rst | 5 +
1 file changed, 5 insertions(+)
Stefan Hajnoczi writes:
> StringOutputVisitor crashes when it visits a struct because
> ->start_struct() is NULL.
>
> Show "" instead of crashing. This is necessary because the
> virtio-blk-pci iothread-vq-mapping parameter that I'd like to introduce
> soon is a list of IOThreadMapping structs.
>
Hi all,
On Mon, Dec 11, 2023 at 03:01:48AM +0800, Ruihan Li wrote:
> When emulated with QEMU, interrupts will never come in the following
> loop. However, if the NOP instruction is uncommented, interrupts will
> fire as normal.
>
> loop:
> cli
> call do_sti
>
On Tue, 19 Dec 2023 at 09:49, Markus Armbruster wrote:
>
> Stefan Hajnoczi writes:
>
> > StringOutputVisitor crashes when it visits a struct because
> > ->start_struct() is NULL.
> >
> > Show "" instead of crashing. This is necessary because the
> > virtio-blk-pci iothread-vq-mapping parameter th
Am 04.12.2023 um 17:42 hat Stefan Hajnoczi geschrieben:
> Stop depending on the AioContext lock and instead access
> SCSIDevice->requests from only one thread at a time:
> - When the VM is running only the BlockBackend's AioContext may access
> the requests list.
> - When the VM is stopped only t
On Sat, Oct 14, 2023 at 09:35:14AM +0200, Markus Armbruster wrote:
> Stefan Hajnoczi writes:
> > +##
> > +# @IOThreadVirtQueueMappings:
> > +#
> > +# IOThreadVirtQueueMapping list. This struct is not actually used but the
> > +# IOThreadVirtQueueMappingList type it generates is!
>
> Two spaces be
On 12/19/23 11:38, Heinrich Schuchardt wrote:
Since QEMU v8.0.0 the RISC-V virt machine has a switch to disable ACPI
table generation. Add it to the documentation.
Fixes: 168b8c29cedb ("hw/riscv/virt: Add a switch to disable ACPI")
Signed-off-by: Heinrich Schuchardt
---
Reviewed-by: Daniel
v3:
- Rebased onto Kevin's block branch
- Add StringOutputVisitor "" patch to fix "info qtree" crash
- Fix QAPI schema formatting [Markus]
- Eliminate unnecessary local variable in get_iothread_vq_mapping_list()
[Markus]
virtio-blk and virtio-scsi devices need a way to specify the mapping between
qdev_alias_all_properties() aliases a DeviceState's qdev properties onto
an Object. This is used for VirtioPCIProxy types so that --device
virtio-blk-pci has properties of its embedded --device virtio-blk-device
object.
Currently this function is implemented using qdev properties. Change the
funct
StringOutputVisitor crashes when it visits a struct because
->start_struct() is NULL.
Show "" instead of crashing. This is necessary because the
virtio-blk-pci iothread-vq-mapping parameter that I'd like to introduce
soon is a list of IOThreadMapping structs.
This patch is a quick fix to solve th
virtio-blk and virtio-scsi devices will need a way to specify the
mapping between IOThreads and virtqueues. At the moment all virtqueues
are assigned to a single IOThread or the main loop. This single thread
can be a CPU bottleneck, so it is necessary to allow finer-grained
assignment to spread the
Add the iothread-vq-mapping parameter to assign virtqueues to IOThreads.
Store the vq:AioContext mapping in the new struct
VirtIOBlockDataPlane->vq_aio_context[] field and refactor the code to
use the per-vq AioContext instead of the BlockDriverState's AioContext.
Reimplement --device virtio-blk-p
Am 05.12.2023 um 19:20 hat Stefan Hajnoczi geschrieben:
> aio_context_acquire()/aio_context_release() has been replaced by
> fine-grained locking to protect state shared by multiple threads. The
> AioContext lock still plays the role of balancing locking in
> AIO_WAIT_WHILE() and many functions in
Am 05.12.2023 um 19:20 hat Stefan Hajnoczi geschrieben:
> This is the big patch that removes
> aio_context_acquire()/aio_context_release() from the block layer and
> affected block layer users.
>
> There isn't a clean way to split this patch and the reviewers are likely
> the same group of people,
On Tue, 19 Dec 2023 at 10:12, Kevin Wolf wrote:
>
> Am 04.12.2023 um 17:42 hat Stefan Hajnoczi geschrieben:
> > Stop depending on the AioContext lock and instead access
> > SCSIDevice->requests from only one thread at a time:
> > - When the VM is running only the BlockBackend's AioContext may acce
On Sun, 17 Dec 2023 at 07:37, Samuel Tardieu wrote:
>
>
> > Samuel Tardieu (3):
> > hw/intc/armv7m_nvic: add "num-prio-bits" property
> > hw/arm/armv7m: alias the NVIC "num-prio-bits" property
> > hw/arm/socs: configure priority bits for existing SOCs
>
> Any idea to why patchew fails to app
On Tue, 19 Dec 2023 at 10:55, Nikita Ostrenkov wrote:
>
> Signed-off-by: Nikita Ostrenkov
> ---
> hw/arm/Kconfig| 1 +
> hw/arm/fsl-imx6.c | 3 +++
> 2 files changed, 4 insertions(+)
Thanks for this patch; it looks fairly obviously right,
but I wanted to let you know I won't be able to do p
Am 19.12.2023 um 16:13 hat Stefan Hajnoczi geschrieben:
> On Sat, Oct 14, 2023 at 09:35:14AM +0200, Markus Armbruster wrote:
> > Stefan Hajnoczi writes:
> > > +##
> > > +# @IOThreadVirtQueueMappings:
> > > +#
> > > +# IOThreadVirtQueueMapping list. This struct is not actually used but the
> > > +#
On Fri, 8 Dec 2023 at 02:32, Sergey Kambalin wrote:
>
> Introducing Raspberry Pi 4B model.
> It contains new BCM2838 SoC, PCIE subsystem,
> RNG200, Thermal sensor and Genet network controller.
>
> It can work with recent linux kernels 6.x.x.
> Two avocado tests was added to check that.
>
> Unit te
Gustavo Romero writes:
> This patchset introduces a new device, ivshmem-flat, which is similar to the
> current ivshmem device but does not require a PCI bus. It implements the
> ivshmem
> status and control registers as MMRs and the shared memory as a directly
> accessible memory region in the
Thank you a lot for the review Peter!
May I kindly ask you to take just a brief look at the first patches of GENET?
I'd like to know if I've chosen the right way to replace bitfields with QEMU
REG32/FIELD32 macros.
Thanks,
Sergey Kambalin
Software Developer,
Auriga Inc.
___
On Tue, 19 Dec 2023 at 16:18, Kambalin, Sergey
wrote:
>
> Thank you a lot for the review Peter!
>
>
> May I kindly ask you to take just a brief look at the first patches of GENET?
> I'd like to know if I've chosen the right way to replace bitfields with QEMU
> REG32/FIELD32 macros.
The FIELD a
Thomas Huth writes:
> On 07/12/2023 16.58, Fabiano Rosas wrote:
>> Signed-off-by: Fabiano Rosas
>> ---
>> tests/qtest/libqtest.c | 24
>> tests/qtest/libqtest.h | 10 ++
>> 2 files changed, 34 insertions(+)
>>
>> diff --git a/tests/qtest/libqtest.c b/tests/q
Thomas Huth writes:
> On 08/12/2023 16.02, Fabiano Rosas wrote:
>> Fabiano Rosas writes:
>>
>>> We can run the migration tests with two different QEMU binaries to
>>> test migration compatibility between QEMU versions. This means we'll
>>> be running the tests with an older QEMU in either sourc
Thanks!
I know about the 'offset' parameter, but in this particular case I use these
structures as layouts only and don't 'switch' over them. So I decided to set
the offsets to 0 in order to simplify the code.
And extra thanks for highlighting the potential issue with memcpy() 😊. I'll fix
it
Thanks!
I know about the 'offset' parameter, but in this particular case I use these
structures as layouts only and don't 'switch' over them. So I decided to set
the offsets to 0 in order to simplify the code.
And extra thanks for highlighting the potential issue with memcpy() 😊. I'll fix
it
On Thu, 14 Dec 2023 at 23:32, Samuel Tardieu wrote:
>
> The `fail_rx`/`fail` block is only entered while `buf_rx` is equal to
> its initial value `MAP_FAILED`. The `munmap(buf_rx, size);` was never
> executed.
>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2030
> Signed-off-by: Samuel
On Thu, 14 Dec 2023 at 23:32, Samuel Tardieu wrote:
>
> `buf_rw` is always `NULL` when jumping to the `fail` label. Move the
> label `down` after the `if (buf_rw) { ... }` statement.
>
> Signed-off-by: Samuel Tardieu
> ---
> tcg/region.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
Peter Maydell writes:
So, well, all of this is definitely removing dead
code, but on the other hand it's also moving away
from the coding-style pattern the function has at
the moment, which is "there is a fail-and-exit
codepath which is robust against wherever you might
choose to jump to it,
Am 19.12.2023 um 16:28 hat Kevin Wolf geschrieben:
> Am 05.12.2023 um 19:20 hat Stefan Hajnoczi geschrieben:
> > aio_context_acquire()/aio_context_release() has been replaced by
> > fine-grained locking to protect state shared by multiple threads. The
> > AioContext lock still plays the role of bal
The `fail_rx`/`fail` block is only entered while `buf_rx` is equal to
its initial value `MAP_FAILED`. The `munmap(buf_rx, size);` was never
executed.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2030
Signed-off-by: Samuel Tardieu
Reviewed-by: Peter Maydell
---
tcg/region.c | 4 +---
Unreachable code in an error handling block is listed in issue
https://gitlab.com/qemu-project/qemu/-/issues/2030.
After removing this code, the `fail` label is now immediately followed
by a test whose condition can never be true when coming explicitly
via this label. Moving the label down preserv
By calling `error_setg_errno()` before jumping to the cleanup-on-error
path at the `fail` label, the cleanup path is clearer.
Signed-off-by: Samuel Tardieu
---
tcg/region.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tcg/region.c b/tcg/region.c
index 467e51cf6f..478
From: Zhenzhong Duan
No functional change intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 11
include/hw/vfio/vfio-container-base.h | 11
hw/vfio/common.c
From: Eric Auger
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 2 --
include/hw/vfio/vfio-containe
From: Eric Auger
dirty_pages_supported field is also moved to the base container
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw
From: Zhenzhong Duan
Meanwhile remove the helper function vfio_free_container as it
only calls g_free now.
No functional change intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 1 -
include/hw/
From: Eric Auger
Move the space field to the base object. Also the VFIOAddressSpace
now contains a list of base containers.
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signe
The following changes since commit bd00730ec0f621706d0179768436f82c39048499:
Open 9.0 development tree (2023-12-19 09:46:22 -0500)
are available in the Git repository at:
https://github.com/legoater/qemu/ tags/pull-vfio-20231219
for you to fetch changes up to
From: Zhenzhong Duan
No functional changes intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 1 -
hw/vfio/spapr.c | 36 +++
2 files changed, 20 insertions(+)
From: Zhenzhong Duan
This adds two helper functions vfio_container_init/destroy which will be
used by both legacy and iommufd containers to do base container specific
initialization and release.
No functional change intended.
Suggested-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Review
From: Zhenzhong Duan
Introduce a dumb VFIOContainerBase object and its targeted interface.
This is willingly not a QOM object because we don't want it to be
visible from the user interface. The VFIOContainerBase will be
smoothly populated in subsequent patches as well as interfaces.
No functiona
From: Zhenzhong Duan
This gives management tools like libvirt a chance to open the vfio
cdev with privilege and pass FD to qemu. This way qemu never needs
to have privilege to open a VFIO or iommu cdev node.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Matthew Rosato
Reviewed-by: Cédric Le Goate
From: Zhenzhong Duan
Currently iommufd doesn't support dirty page sync yet,
but it will not block us doing live migration if VFIO
migration is force enabled.
So in this case we allow set_dirty_page_tracking to be NULL.
Note we don't need same change for query_dirty_bitmap because
when dirty page
From: Eric Auger
Introduce an iommufd object which allows the interaction
with the host /dev/iommu device.
The /dev/iommu can have been already pre-opened outside of qemu,
in which case the fd can be passed directly along with the
iommufd object:
This allows the iommufd object to be shared accr
From: Zhenzhong Duan
Introduce an empty spapr backend which will hold spapr specific
content, currently only prereg_listener and hostwin_list.
Also introduce two spapr specific callbacks add/del_window into
VFIOIOMMUOps. Instantiate a spapr ops with a helper setup_spapr_ops
and assign it to bcon
From: Yi Liu
The iommufd backend is implemented based on the new /dev/iommu user API.
This backend obviously depends on CONFIG_IOMMUFD.
So far, the iommufd backend doesn't support dirty page sync yet.
Co-authored-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Zhenzhong Duan
Reviewed-by:
From: Eric Auger
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 2 --
include/hw/vfio/vfio-contain
From: Zhenzhong Duan
Now we support two types of iommu backends, let's add the capability
to select one of them. This depends on whether an iommufd object has
been linked with the vfio-ap device:
if the user wants to use the legacy backend, it shall not
link the vfio-ap device with any iommufd o
From: Zhenzhong Duan
Legacy vfio pci and iommufd cdev have different process to hot reset
vfio device, expand current code to abstract out pci_hot_reset callback
for legacy vfio, this same interface will also be used by iommufd
cdev vfio device.
Rename vfio_pci_hot_reset to vfio_legacy_pci_hot_r
From: Zhenzhong Duan
Now we support two types of iommu backends, let's add the capability
to select one of them. This depends on whether an iommufd object has
been linked with the vfio-ccw device:
If the user wants to use the legacy backend, it shall not
link the vfio-ccw device with any iommufd
From: Eric Auger
Move the giommu_list field in the base container and store
the base container in the VFIOGuestIOMMU.
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-
From: Zhenzhong Duan
Now we support two types of iommu backends, let's add the capability
to select one of them. This depends on whether an iommufd object has
been linked with the vfio-platform device:
If the user wants to use the legacy backend, it shall not
link the vfio-platform device with a
Signed-off-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Reviewed-by: Eric Auger
Tested-by: Nicolin Chen
Signed-off-by: Cédric Le Goater
---
hw/i386/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig
index
55850791df4148f5535eb06b76e09dabf75d84
From: Eric Auger
Move listener to base container. Also error and initialized fields
are moved at the same time.
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cé
From: Zhenzhong Duan
Some of the VFIODevice initializations is in vfio_platform_realize,
move all of them in vfio_platform_instance_init.
No functional change intended.
Suggested-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Reviewed-by: Philippe Mathieu-Daudé
Tested-by: Nicolin Chen
S
From: Zhenzhong Duan
Some of the callbacks in VFIOIOMMUOps pass VFIOContainerBase poiner,
those callbacks only need read access to the sub object of VFIOContainerBase.
So make VFIOContainerBase, VFIOContainer and VFIOIOMMUFDContainer as const
in these callbacks.
Local functions called by those c
Signed-off-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Reviewed-by: Eric Auger
Tested-by: Eric Auger
Tested-by: Nicolin Chen
Signed-off-by: Cédric Le Goater
---
hw/arm/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index
3ada335a24374d4d54
From: Zhenzhong Duan
VFIO Device is also changed to point to base container instead of
legacy container.
No functional change intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 3 +--
include/hw/
From: Zhenzhong Duan
Introduce a helper function to replace the common code to initialize
VFIODevice in pci, platform, ap and ccw VFIO device.
No functional change intended.
Suggested-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Tested-by: Nicolin Chen
Signed-off-by: Cédric Le Goater
From: Yi Liu
/dev/vfio/devices/vfioX may not exist. In that case it is still possible
to open /dev/char/$major:$minor instead. Add helper function to abstract
the cdev open.
Suggested-by: Jason Gunthorpe
Signed-off-by: Yi Liu
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Review
From: Eric Auger
In the prospect to get rid of VFIOContainer refs
in common.c lets convert misc functions to use the base
container object instead:
vfio_devices_all_dirty_tracking
vfio_devices_all_device_dirty_tracking
vfio_devices_all_running_and_mig_active
vfio_devices_query_dirty_bitmap
vfio_
From: Zhenzhong Duan
This gives management tools like libvirt a chance to open the vfio
cdev with privilege and pass FD to qemu. This way qemu never needs
to have privilege to open a VFIO or iommu cdev node.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Tested-by: Nicolin Chen
S
When the legacy and iommufd backends were introduced, a set of common
vfio-pci routines were exported in pci.c for both backends to use :
vfio_pci_pre_reset
vfio_pci_get_pci_hot_reset_info
vfio_pci_host_match
vfio_pci_post_reset
This introduced a build failure on PPC when --without-defaul
From: Eric Auger
No functional change intended.
Signed-off-by: Eric Auger
Signed-off-by: Yi Liu
Signed-off-by: Yi Sun
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
hw/vfio/common.c| 16
hw/vfio/container.c | 12 +--
From: Zhenzhong Duan
This empty VFIOIOMMUOps named vfio_legacy_ops will hold all general
IOMMU ops of legacy container.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 2 +-
hw/vfio/container.c | 5
From: Zhenzhong Duan
This is a trivial optimization. If there is active container in space,
vfio_reset_handler will never be unregistered. So revert the check of
space->containers and return early.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Reviewed-by: Eric Auger
Tested-by:
From: Zhenzhong Duan
This helper will be used by both legacy and iommufd backends.
No functional changes intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Reviewed-by: Eric Auger
Tested-by: Eric Auger
Tested-by: Nicolin Chen
Signed-off-by: Cédric Le Goater
---
hw/vfio
From: Zhenzhong Duan
No functional changes intended.
Signed-off-by: Zhenzhong Duan
Reviewed-by: Cédric Le Goater
Signed-off-by: Cédric Le Goater
---
include/hw/vfio/vfio-common.h | 1 -
hw/vfio/spapr.c | 24
2 files changed, 16 insertions(+), 9 deletio
From: Zhenzhong Duan
Some of the VFIODevice initializations is in vfio_ap_realize,
move all of them in vfio_ap_instance_init.
No functional change intended.
Suggested-by: Cédric Le Goater
Signed-off-by: Zhenzhong Duan
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Eric Farman
Tested-by: N
From: Zhenzhong Duan
Some vIOMMU such as virtio-iommu use IOVA ranges from host side to
setup reserved ranges for passthrough device, so that guest will not
use an IOVA range beyond host support.
Use an uAPI of IOMMUFD to get IOVA ranges of host side and pass to
vIOMMU just like the legacy backe
1 - 100 of 209 matches
Mail list logo