On 2/19/19 12:04 PM, jgli...@redhat.com wrote:
From: Jérôme Glisse <jgli...@redhat.com>

Use an unsigned field for flags other than blockable and convert
the blockable field to be one of those flags.

Signed-off-by: Jérôme Glisse <jgli...@redhat.com>
Cc: Christian König <christian.koe...@amd.com>
Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
Cc: Jani Nikula <jani.nik...@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.v...@intel.com>
Cc: Jan Kara <j...@suse.cz>
Cc: Andrea Arcangeli <aarca...@redhat.com>
Cc: Peter Xu <pet...@redhat.com>
Cc: Felix Kuehling <felix.kuehl...@amd.com>
Cc: Jason Gunthorpe <j...@mellanox.com>
Cc: Andrew Morton <a...@linux-foundation.org>
Cc: Ross Zwisler <zwis...@kernel.org>
Cc: Dan Williams <dan.j.willi...@intel.com>
Cc: Paolo Bonzini <pbonz...@redhat.com>
Cc: Radim Krčmář <rkrc...@redhat.com>
Cc: Michal Hocko <mho...@kernel.org>
Cc: Christian Koenig <christian.koe...@amd.com>
Cc: Ralph Campbell <rcampb...@nvidia.com>
Cc: John Hubbard <jhubb...@nvidia.com>
Cc: k...@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Cc: linux-r...@vger.kernel.org
Cc: Arnd Bergmann <a...@arndb.de>
---
  include/linux/mmu_notifier.h | 11 +++++++----
  1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h
index e630def131ce..c8672c366f67 100644
--- a/include/linux/mmu_notifier.h
+++ b/include/linux/mmu_notifier.h
@@ -25,11 +25,13 @@ struct mmu_notifier_mm {
        spinlock_t lock;
  };
+#define MMU_NOTIFIER_RANGE_BLOCKABLE (1 << 0)
+
  struct mmu_notifier_range {
        struct mm_struct *mm;
        unsigned long start;
        unsigned long end;
-       bool blockable;
+       unsigned flags;
  };
struct mmu_notifier_ops {
@@ -229,7 +231,7 @@ extern void __mmu_notifier_invalidate_range(struct 
mm_struct *mm,
  static inline bool
  mmu_notifier_range_blockable(const struct mmu_notifier_range *range)
  {
-       return range->blockable;
+       return (range->flags & MMU_NOTIFIER_RANGE_BLOCKABLE);
  }
static inline void mmu_notifier_release(struct mm_struct *mm)
@@ -275,7 +277,7 @@ static inline void
  mmu_notifier_invalidate_range_start(struct mmu_notifier_range *range)
  {
        if (mm_has_notifiers(range->mm)) {
-               range->blockable = true;
+               range->flags |= MMU_NOTIFIER_RANGE_BLOCKABLE;
                __mmu_notifier_invalidate_range_start(range);
        }
  }
@@ -284,7 +286,7 @@ static inline int
  mmu_notifier_invalidate_range_start_nonblock(struct mmu_notifier_range *range)
  {
        if (mm_has_notifiers(range->mm)) {
-               range->blockable = false;
+               range->flags &= ~MMU_NOTIFIER_RANGE_BLOCKABLE;
                return __mmu_notifier_invalidate_range_start(range);
        }
        return 0;
@@ -331,6 +333,7 @@ static inline void mmu_notifier_range_init(struct 
mmu_notifier_range *range,
        range->mm = mm;
        range->start = start;
        range->end = end;
+       range->flags = 0;
  }
#define ptep_clear_flush_young_notify(__vma, __address, __ptep) \


Reviewed-by: Ralph Campbell <rcampb...@nvidia.com>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to