s390/mm: missing pte for gmap_ipte_notify should trigger a VM_BUG
authorDominik Dingel <dingel@linux.vnet.ibm.com>
Wed, 15 Oct 2014 13:29:01 +0000 (15:29 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 27 Oct 2014 12:27:29 +0000 (13:27 +0100)
After fixup_user_fault does not fail we have a writeable pte.
That pte might transform but it should not vanish.

Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/mm/pgtable.c

index b1871d3..9c8a6dd 100644 (file)
@@ -752,8 +752,7 @@ int gmap_ipte_notify(struct gmap *gmap, unsigned long gaddr, unsigned long len)
                        break;
                /* Walk the process page table, lock and get pte pointer */
                ptep = get_locked_pte(gmap->mm, addr, &ptl);
-               if (unlikely(!ptep))
-                       continue;
+               VM_BUG_ON(!ptep);
                /* Set notification bit in the pgste of the pte */
                entry = *ptep;
                if ((pte_val(entry) & (_PAGE_INVALID | _PAGE_PROTECT)) == 0) {