[PATCH v6 1/8] mm/mmu_notifier: helper to test if a range invalidation is blockable

jglisse at redhat.com jglisse at redhat.com
Tue Mar 26 16:47:40 UTC 2019


From: Jérôme Glisse <jglisse at redhat.com>

Simple helpers to test if range invalidation is blockable. Latter
patches use cocinnelle to convert all direct dereference of range->
blockable to use this function instead so that we can convert the
blockable field to an unsigned for more flags.

Signed-off-by: Jérôme Glisse <jglisse at redhat.com>
Cc: Andrew Morton <akpm at linux-foundation.org>
Cc: linux-mm at kvack.org
Cc: Christian König <christian.koenig at amd.com>
Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Cc: Jani Nikula <jani.nikula at linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
Cc: Jan Kara <jack at suse.cz>
Cc: Andrea Arcangeli <aarcange at redhat.com>
Cc: Peter Xu <peterx at redhat.com>
Cc: Felix Kuehling <Felix.Kuehling at amd.com>
Cc: Jason Gunthorpe <jgg at mellanox.com>
Cc: Andrew Morton <akpm at linux-foundation.org>
Cc: Ross Zwisler <zwisler at kernel.org>
Cc: Dan Williams <dan.j.williams at intel.com>
Cc: Paolo Bonzini <pbonzini at redhat.com>
Cc: Radim Krčmář <rkrcmar at redhat.com>
Cc: Michal Hocko <mhocko at kernel.org>
Cc: Christian Koenig <christian.koenig at amd.com>
Cc: Ralph Campbell <rcampbell at nvidia.com>
Cc: John Hubbard <jhubbard at nvidia.com>
Cc: kvm at vger.kernel.org
Cc: dri-devel at lists.freedesktop.org
Cc: linux-rdma at vger.kernel.org
Cc: linux-fsdevel at vger.kernel.org
Cc: Arnd Bergmann <arnd at arndb.de>
---
 include/linux/mmu_notifier.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h
index 4050ec1c3b45..e630def131ce 100644
--- a/include/linux/mmu_notifier.h
+++ b/include/linux/mmu_notifier.h
@@ -226,6 +226,12 @@ extern void __mmu_notifier_invalidate_range_end(struct mmu_notifier_range *r,
 extern void __mmu_notifier_invalidate_range(struct mm_struct *mm,
 				  unsigned long start, unsigned long end);
 
+static inline bool
+mmu_notifier_range_blockable(const struct mmu_notifier_range *range)
+{
+	return range->blockable;
+}
+
 static inline void mmu_notifier_release(struct mm_struct *mm)
 {
 	if (mm_has_notifiers(mm))
@@ -455,6 +461,11 @@ static inline void _mmu_notifier_range_init(struct mmu_notifier_range *range,
 #define mmu_notifier_range_init(range, mm, start, end) \
 	_mmu_notifier_range_init(range, start, end)
 
+static inline bool
+mmu_notifier_range_blockable(const struct mmu_notifier_range *range)
+{
+	return true;
+}
 
 static inline int mm_has_notifiers(struct mm_struct *mm)
 {
-- 
2.20.1



More information about the dri-devel mailing list