qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Cédric Le Goater" <clg@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Alex Williamson" <alex.williamson@redhat.com>,
	"Mark Cave-Ayland" <mark.caveayland@nutanix.com>,
	"Cédric Le Goater" <clg@redhat.com>,
	"Steve Sistare" <steven.sistare@oracle.com>
Subject: [PULL 13/31] hw/vfio/cpr-legacy.c: use QOM casts where appropriate
Date: Mon,  8 Sep 2025 18:53:36 +0200	[thread overview]
Message-ID: <20250908165354.1731444-14-clg@redhat.com> (raw)
In-Reply-To: <20250908165354.1731444-1-clg@redhat.com>

From: Mark Cave-Ayland <mark.caveayland@nutanix.com>

Use QOM casts to convert between VFIOContainer and VFIOContainerBase instead
of accessing bcontainer directly.

Signed-off-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Steve Sistare <steven.sistare@oracle.com>
Link: https://lore.kernel.org/qemu-devel/20250715093110.107317-4-mark.caveayland@nutanix.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 hw/vfio/cpr-legacy.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/hw/vfio/cpr-legacy.c b/hw/vfio/cpr-legacy.c
index 553b203e9b60b3a08159e2224a887b4d76162428..8f437194fae035b37de3f7c3f88e332c4ef88302 100644
--- a/hw/vfio/cpr-legacy.c
+++ b/hw/vfio/cpr-legacy.c
@@ -41,8 +41,8 @@ static int vfio_legacy_cpr_dma_map(const VFIOContainerBase *bcontainer,
                                    hwaddr iova, ram_addr_t size, void *vaddr,
                                    bool readonly, MemoryRegion *mr)
 {
-    const VFIOContainer *container = container_of(bcontainer, VFIOContainer,
-                                                  bcontainer);
+    const VFIOContainer *container = VFIO_IOMMU_LEGACY(bcontainer);
+
     struct vfio_iommu_type1_dma_map map = {
         .argsz = sizeof(map),
         .flags = VFIO_DMA_MAP_FLAG_VADDR,
@@ -65,7 +65,7 @@ static void vfio_region_remap(MemoryListener *listener,
 {
     VFIOContainer *container = container_of(listener, VFIOContainer,
                                             cpr.remap_listener);
-    vfio_container_region_add(&container->bcontainer, section, true);
+    vfio_container_region_add(VFIO_IOMMU(container), section, true);
 }
 
 static bool vfio_cpr_supported(VFIOContainer *container, Error **errp)
@@ -98,7 +98,7 @@ static int vfio_container_pre_save(void *opaque)
 static int vfio_container_post_load(void *opaque, int version_id)
 {
     VFIOContainer *container = opaque;
-    VFIOContainerBase *bcontainer = &container->bcontainer;
+    VFIOContainerBase *bcontainer = VFIO_IOMMU(container);
     VFIOIOMMUClass *vioc = VFIO_IOMMU_GET_CLASS(bcontainer);
     dma_map_fn saved_dma_map = vioc->dma_map;
     Error *local_err = NULL;
@@ -135,7 +135,7 @@ static int vfio_cpr_fail_notifier(NotifierWithReturn *notifier,
 {
     VFIOContainer *container =
         container_of(notifier, VFIOContainer, cpr.transfer_notifier);
-    VFIOContainerBase *bcontainer = &container->bcontainer;
+    VFIOContainerBase *bcontainer = VFIO_IOMMU(container);
 
     if (e->type != MIG_EVENT_PRECOPY_FAILED) {
         return 0;
@@ -167,7 +167,7 @@ static int vfio_cpr_fail_notifier(NotifierWithReturn *notifier,
 
 bool vfio_legacy_cpr_register_container(VFIOContainer *container, Error **errp)
 {
-    VFIOContainerBase *bcontainer = &container->bcontainer;
+    VFIOContainerBase *bcontainer = VFIO_IOMMU(container);
     Error **cpr_blocker = &container->cpr.blocker;
 
     migration_add_notifier_mode(&bcontainer->cpr_reboot_notifier,
@@ -191,7 +191,7 @@ bool vfio_legacy_cpr_register_container(VFIOContainer *container, Error **errp)
 
 void vfio_legacy_cpr_unregister_container(VFIOContainer *container)
 {
-    VFIOContainerBase *bcontainer = &container->bcontainer;
+    VFIOContainerBase *bcontainer = VFIO_IOMMU(container);
 
     migration_remove_notifier(&bcontainer->cpr_reboot_notifier);
     migrate_del_blocker(&container->cpr.blocker);
-- 
2.51.0



  parent reply	other threads:[~2025-09-08 16:55 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-08 16:53 [PULL 00/31] vfio queue Cédric Le Goater
2025-09-08 16:53 ` [PULL 01/31] MAINTAINERS: Add myself as reviewer for PowerNV and XIVE Cédric Le Goater
2025-09-08 16:53 ` [PULL 02/31] vfio/igd: Enable quirks when IGD is not the primary display Cédric Le Goater
2025-09-08 16:53 ` [PULL 03/31] vfio: Remove 'vfio-amd-xgbe' device Cédric Le Goater
2025-09-08 16:53 ` [PULL 04/31] vfio: Remove 'vfio-calxeda-xgmac' device Cédric Le Goater
2025-09-08 16:53 ` [PULL 05/31] vfio: Remove 'vfio-platform' Cédric Le Goater
2025-09-08 16:53 ` [PULL 06/31] vfio: Move vfio-region.h under hw/vfio/ Cédric Le Goater
2025-09-08 16:53 ` [PULL 07/31] vfio/container: set error on cpr failure Cédric Le Goater
2025-09-08 16:53 ` [PULL 08/31] vfio: Report an error when the 'dma_max_mappings' limit is reached Cédric Le Goater
2025-09-08 16:53 ` [PULL 09/31] hw/vfio-user: add x-pci-class-code Cédric Le Goater
2025-09-08 16:53 ` [PULL 10/31] vfio: Introduce helper vfio_pci_from_vfio_device() Cédric Le Goater
2025-09-08 16:53 ` [PULL 11/31] vfio/vfio-container-base.h: update VFIOContainerBase declaration Cédric Le Goater
2025-09-08 16:53 ` [PULL 12/31] vfio/vfio-container.h: update VFIOContainer declaration Cédric Le Goater
2025-09-08 16:53 ` Cédric Le Goater [this message]
2025-09-08 16:53 ` [PULL 14/31] hw/vfio/container.c: use QOM casts where appropriate Cédric Le Goater
2025-09-08 16:53 ` [PULL 15/31] ppc/spapr_pci_vfio.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 16/31] vfio/spapr.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 17/31] vfio/vfio-container.h: rename VFIOContainer bcontainer field to parent_obj Cédric Le Goater
2025-09-08 16:53 ` [PULL 18/31] vfio-user/container.h: update VFIOUserContainer declaration Cédric Le Goater
2025-09-08 16:53 ` [PULL 19/31] vfio/container.c: use QOM casts where appropriate Cédric Le Goater
2025-09-08 16:53 ` [PULL 20/31] vfio-user/container.h: rename VFIOUserContainer bcontainer field to parent_obj Cédric Le Goater
2025-09-08 16:53 ` [PULL 21/31] vfio-user/pci.c: update VFIOUserPCIDevice declaration Cédric Le Goater
2025-09-08 16:53 ` [PULL 22/31] vfio-user/pci.c: use QOM casts where appropriate Cédric Le Goater
2025-09-08 16:53 ` [PULL 23/31] vfio-user/pci.c: rename VFIOUserPCIDevice device field to parent_obj Cédric Le Goater
2025-09-08 16:53 ` [PULL 24/31] vfio/pci.h: update VFIOPCIDevice declaration Cédric Le Goater
2025-09-08 16:53 ` [PULL 25/31] vfio/pci.c: use QOM casts where appropriate Cédric Le Goater
2025-09-08 16:53 ` [PULL 26/31] vfio/pci-quirks.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 27/31] vfio/cpr.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 28/31] vfio/igd.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 29/31] vfio-user/pci.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 30/31] s390x/s390-pci-vfio.c: " Cédric Le Goater
2025-09-08 16:53 ` [PULL 31/31] vfio/pci.h: rename VFIOPCIDevice pdev field to parent_obj Cédric Le Goater
2025-09-11 13:11 ` [PULL 00/31] vfio queue Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250908165354.1731444-14-clg@redhat.com \
    --to=clg@redhat.com \
    --cc=alex.williamson@redhat.com \
    --cc=mark.caveayland@nutanix.com \
    --cc=qemu-devel@nongnu.org \
    --cc=steven.sistare@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).