qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v10 44/59] hw/xen: Support mapping grant frames


From: Paul Durrant
Subject: Re: [PATCH v10 44/59] hw/xen: Support mapping grant frames
Date: Mon, 13 Feb 2023 15:31:57 +0000
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1

On 01/02/2023 14:31, David Woodhouse wrote:
From: David Woodhouse <dwmw@amazon.co.uk>

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
---
  hw/i386/kvm/xen_gnttab.c  | 74 ++++++++++++++++++++++++++++++++++++++-
  hw/i386/kvm/xen_overlay.c |  2 +-
  hw/i386/kvm/xen_overlay.h |  2 ++
  3 files changed, 76 insertions(+), 2 deletions(-)

diff --git a/hw/i386/kvm/xen_gnttab.c b/hw/i386/kvm/xen_gnttab.c
index ef8857e50c..cd8c3ae60d 100644
--- a/hw/i386/kvm/xen_gnttab.c
+++ b/hw/i386/kvm/xen_gnttab.c
@@ -37,13 +37,27 @@ OBJECT_DECLARE_SIMPLE_TYPE(XenGnttabState, XEN_GNTTAB)
  #define XEN_PAGE_SHIFT 12
  #define XEN_PAGE_SIZE (1ULL << XEN_PAGE_SHIFT)
+#define ENTRIES_PER_FRAME_V1 (XEN_PAGE_SIZE / sizeof(grant_entry_v1_t))
+#define ENTRIES_PER_FRAME_V2 (XEN_PAGE_SIZE / sizeof(grant_entry_v2_t))
+
  struct XenGnttabState {
      /*< private >*/
      SysBusDevice busdev;
      /*< public >*/
+ QemuMutex gnt_lock;
+
      uint32_t nr_frames;
      uint32_t max_frames;
+
+    union {
+        grant_entry_v1_t *v1;
+        grant_entry_v2_t *v2;
+    } entries;
+

If you want to have v2 support, don't you need status frames too?

  Paul

+    MemoryRegion gnt_frames;
+    MemoryRegion *gnt_aliases;
+    uint64_t *gnt_frame_gpas;
  };




reply via email to

[Prev in Thread] Current Thread [Next in Thread]