qemu-arm
[Top][All Lists]
Advanced

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

Re: [RFC v8 03/28] header update against 5.11-rc2 and IOMMU/VFIO nested


From: Kunkun Jiang
Subject: Re: [RFC v8 03/28] header update against 5.11-rc2 and IOMMU/VFIO nested stage APIs
Date: Thu, 4 Mar 2021 17:18:17 +0800
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0

On 2021/2/25 18:52, Eric Auger wrote:
Signed-off-by: Eric Auger <eric.auger@redhat.com>
---
  .../infiniband/hw/vmw_pvrdma/pvrdma_ring.h    |  14 +-
  linux-headers/linux/iommu.h                   | 395 ++++++++++++++++++
  linux-headers/linux/vfio.h                    | 141 ++++++-
  3 files changed, 542 insertions(+), 8 deletions(-)
  create mode 100644 linux-headers/linux/iommu.h

diff --git 
a/include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_ring.h 
b/include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_ring.h
index 7b4062a1a1..acd4c8346d 100644
--- a/include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_ring.h
+++ b/include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_ring.h
@@ -68,7 +68,7 @@ static inline int pvrdma_idx_valid(uint32_t idx, uint32_t 
max_elems)
static inline int32_t pvrdma_idx(int *var, uint32_t max_elems)
  {
-       const unsigned int idx = qatomic_read(var);
+       const unsigned int idx = atomic_read(var);
if (pvrdma_idx_valid(idx, max_elems))
                return idx & (max_elems - 1);
@@ -77,17 +77,17 @@ static inline int32_t pvrdma_idx(int *var, uint32_t 
max_elems)
static inline void pvrdma_idx_ring_inc(int *var, uint32_t max_elems)
  {
-       uint32_t idx = qatomic_read(var) + 1;   /* Increment. */
+       uint32_t idx = atomic_read(var) + 1;    /* Increment. */
idx &= (max_elems << 1) - 1; /* Modulo size, flip gen. */
-       qatomic_set(var, idx);
+       atomic_set(var, idx);
  }
static inline int32_t pvrdma_idx_ring_has_space(const struct pvrdma_ring *r,
                                              uint32_t max_elems, uint32_t 
*out_tail)
  {
-       const uint32_t tail = qatomic_read(&r->prod_tail);
-       const uint32_t head = qatomic_read(&r->cons_head);
+       const uint32_t tail = atomic_read(&r->prod_tail);
+       const uint32_t head = atomic_read(&r->cons_head);
if (pvrdma_idx_valid(tail, max_elems) &&
            pvrdma_idx_valid(head, max_elems)) {
@@ -100,8 +100,8 @@ static inline int32_t pvrdma_idx_ring_has_space(const 
struct pvrdma_ring *r,
  static inline int32_t pvrdma_idx_ring_has_data(const struct pvrdma_ring *r,
                                             uint32_t max_elems, uint32_t 
*out_head)
  {
-       const uint32_t tail = qatomic_read(&r->prod_tail);
-       const uint32_t head = qatomic_read(&r->cons_head);
+       const uint32_t tail = atomic_read(&r->prod_tail);
+       const uint32_t head = atomic_read(&r->cons_head);
if (pvrdma_idx_valid(tail, max_elems) &&
            pvrdma_idx_valid(head, max_elems)) {
The atomic_ has been renamed to qatomic_ in the patch d73415a3154.
It seems that the pvrdma_ring.h doesn't need to be updated.

Best Regards.

Kunkun Jiang

diff --git a/linux-headers/linux/iommu.h b/linux-headers/linux/iommu.h
new file mode 100644
index 0000000000..0a6326bd36
--- /dev/null
+++ b/linux-headers/linux/iommu.h
[...]
  /* -------- Additional API for SPAPR TCE (Server POWERPC) IOMMU -------- */
/*





reply via email to

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