Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / include / asm-s390 / pgalloc.h
index 9030813..0259469 100644 (file)
 #define _S390_PGALLOC_H
 
 #include <linux/config.h>
-#include <asm/processor.h>
 #include <linux/threads.h>
 #include <linux/gfp.h>
 #include <linux/mm.h>
 
+#define arch_add_exec_range(mm, limit) do { ; } while (0)
+#define arch_flush_exec_range(mm)      do { ; } while (0)
+#define arch_remove_exec_range(mm, limit) do { ; } while (0)
+
 #define check_pgt_cache()      do {} while (0)
 
 extern void diag10(unsigned long addr);
@@ -130,8 +133,10 @@ pte_alloc_one_kernel(struct mm_struct *mm, unsigned long vmaddr)
 
        pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT);
        if (pte != NULL) {
-               for (i=0; i < PTRS_PER_PTE; i++)
-                       pte_clear(pte+i);
+               for (i=0; i < PTRS_PER_PTE; i++) {
+                       pte_clear(mm, vmaddr, pte+i);
+                       vmaddr += PAGE_SIZE;
+               }
        }
        return pte;
 }
@@ -157,11 +162,4 @@ static inline void pte_free(struct page *pte)
 
 #define __pte_free_tlb(tlb,pte) tlb_remove_page(tlb,pte)
 
-/*
- * This establishes kernel virtual mappings (e.g., as a result of a
- * vmalloc call).  Since s390-esame uses a separate kernel page table,
- * there is nothing to do here... :)
- */
-#define set_pgdir(addr,entry) do { } while(0)
-
 #endif /* _S390_PGALLOC_H */