Nadav Amit 13e4ad2ce8 hugetlbfs: flush before unlock on move_hugetlb_page_tables()
We must flush the TLB before releasing i_mmap_rwsem to avoid the
potential reuse of an unshared PMDs page.  This is not true in the case
of move_hugetlb_page_tables().  The last reference on the page table can
therefore be dropped before the TLB flush took place.

Prevent it by reordering the operations and flushing the TLB before
releasing i_mmap_rwsem.

Fixes: 550a7d60bd5e ("mm, hugepages: add mremap() support for hugepage backed vma")
Signed-off-by: Nadav Amit <namit@vmware.com>
Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
Cc: Mina Almasry <almasrymina@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-11-22 11:36:46 -08:00
..
2021-05-07 00:26:35 -07:00
2021-05-05 11:27:24 -07:00
2021-05-05 11:27:24 -07:00
2021-06-29 10:53:52 -07:00
2021-10-18 07:49:41 -04:00
2021-11-01 08:47:59 -07:00
2021-10-18 07:49:39 -04:00
2021-10-14 13:29:22 +02:00
2021-11-10 11:29:30 -08:00
2021-11-11 09:34:35 -08:00
2021-11-10 16:02:08 -08:00
2021-11-06 13:30:34 -07:00
2021-11-01 09:19:50 -07:00
2021-06-05 20:43:15 +00:00
2021-05-07 00:26:35 -07:00
2021-04-16 16:10:37 -07:00
2021-10-18 07:49:39 -04:00
2021-05-07 00:26:35 -07:00