So we do not want to allow sleep during call to mmu_notifier_invalidate_page() but some code do not have surrounding mmu_notifier_invalidate_range_start()/ mmu_notifier_invalidate_range_end() or mmu_notifier_invalidate_range() This patch serie just make sure that there is at least a call (outside spinlock section) to mmu_notifier_invalidate_range() after mmu_notifier_invalidate_page() This fix issue with AMD IOMMU v2 while avoiding to introduce issue for others user of the mmu_notifier API. For releavent threads see: https://lkml.kernel.org/r/20170809204333.27485-1-jglisse@xxxxxxxxxx https://lkml.kernel.org/r/20170804134928.l4klfcnqatni7vsc@xxxxxxxxxxxxxxxxxx https://marc.info/?l=kvm&m=150327081325160&w=2 Signed-off-by: Jérôme Glisse <jglisse@xxxxxxxxxx> Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> Cc: Bernhard Held <berny156@xxxxxx> Cc: Adam Borowski <kilobyte@xxxxxxxxxx> Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> Cc: Radim Krčmář <rkrcmar@xxxxxxxxxx> Cc: Wanpeng Li <kernellwp@xxxxxxxxx> Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx> Cc: Takashi Iwai <tiwai@xxxxxxx> Cc: Nadav Amit <nadav.amit@xxxxxxxxx> Cc: Mike Galbraith <efault@xxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: axie <axie@xxxxxxx> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: Dan Williams <dan.j.williams@xxxxxxxxx> Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx> Jérôme Glisse (4): mm/mmu_notifier: document new behavior for mmu_notifier_invalidate_page() dax/mmu_notifier: update to new mmu_notifier semantic mm/rmap: update to new mmu_notifier_invalidate_page() semantic iommu/amd: update to new mmu_notifier_invalidate_page() semantic drivers/iommu/amd_iommu_v2.c | 8 -------- fs/dax.c | 8 ++++++-- include/linux/mmu_notifier.h | 6 ++++++ mm/rmap.c | 18 +++++++++++++++++- 4 files changed, 29 insertions(+), 11 deletions(-) -- 2.13.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>