diff options
| -rw-r--r-- | arch/s390/mm/vmem.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/arch/s390/mm/vmem.c b/arch/s390/mm/vmem.c index 8ea3144b45b8..90165e7ca04e 100644 --- a/arch/s390/mm/vmem.c +++ b/arch/s390/mm/vmem.c | |||
| @@ -71,12 +71,8 @@ static pte_t __ref *vmem_pte_alloc(void) | |||
| 71 | pte = alloc_bootmem(PTRS_PER_PTE * sizeof(pte_t)); | 71 | pte = alloc_bootmem(PTRS_PER_PTE * sizeof(pte_t)); |
| 72 | if (!pte) | 72 | if (!pte) |
| 73 | return NULL; | 73 | return NULL; |
| 74 | if (MACHINE_HAS_HPAGE) | 74 | clear_table((unsigned long *) pte, _PAGE_TYPE_EMPTY, |
| 75 | clear_table((unsigned long *) pte, _PAGE_TYPE_EMPTY | _PAGE_CO, | 75 | PTRS_PER_PTE * sizeof(pte_t)); |
| 76 | PTRS_PER_PTE * sizeof(pte_t)); | ||
| 77 | else | ||
| 78 | clear_table((unsigned long *) pte, _PAGE_TYPE_EMPTY, | ||
| 79 | PTRS_PER_PTE * sizeof(pte_t)); | ||
| 80 | return pte; | 76 | return pte; |
| 81 | } | 77 | } |
| 82 | 78 | ||
| @@ -117,8 +113,7 @@ static int vmem_add_mem(unsigned long start, unsigned long size, int ro) | |||
| 117 | if (MACHINE_HAS_HPAGE && !(address & ~HPAGE_MASK) && | 113 | if (MACHINE_HAS_HPAGE && !(address & ~HPAGE_MASK) && |
| 118 | (address + HPAGE_SIZE <= start + size) && | 114 | (address + HPAGE_SIZE <= start + size) && |
| 119 | (address >= HPAGE_SIZE)) { | 115 | (address >= HPAGE_SIZE)) { |
| 120 | pte_val(pte) |= _SEGMENT_ENTRY_LARGE | | 116 | pte_val(pte) |= _SEGMENT_ENTRY_LARGE; |
| 121 | _SEGMENT_ENTRY_CO; | ||
| 122 | pmd_val(*pm_dir) = pte_val(pte); | 117 | pmd_val(*pm_dir) = pte_val(pte); |
| 123 | address += HPAGE_SIZE - PAGE_SIZE; | 118 | address += HPAGE_SIZE - PAGE_SIZE; |
| 124 | continue; | 119 | continue; |
