summaryrefslogtreecommitdiffstats
path: root/arch/s390x
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390x')
-rw-r--r--arch/s390x/kernel/binfmt_elf32.c4
-rw-r--r--arch/s390x/kernel/entry.S2
-rw-r--r--arch/s390x/kernel/exec32.c5
-rw-r--r--arch/s390x/kernel/linux32.c4
-rw-r--r--arch/s390x/kernel/sys_s390.c4
-rw-r--r--arch/s390x/mm/fault.c10
-rw-r--r--arch/s390x/tools/dasdfmt/dasdfmt.c2
7 files changed, 15 insertions, 16 deletions
diff --git a/arch/s390x/kernel/binfmt_elf32.c b/arch/s390x/kernel/binfmt_elf32.c
index b08f0f686..d21f6966b 100644
--- a/arch/s390x/kernel/binfmt_elf32.c
+++ b/arch/s390x/kernel/binfmt_elf32.c
@@ -193,11 +193,11 @@ elf_map32 (struct file *filep, unsigned long addr, struct elf_phdr *eppnt, int p
if(!addr)
addr = 0x40000000;
- down(&current->mm->mmap_sem);
+ down_write(&current->mm->mmap_sem);
map_addr = do_mmap(filep, ELF_PAGESTART(addr),
eppnt->p_filesz + ELF_PAGEOFFSET(eppnt->p_vaddr), prot, type,
eppnt->p_offset - ELF_PAGEOFFSET(eppnt->p_vaddr));
- up(&current->mm->mmap_sem);
+ up_write(&current->mm->mmap_sem);
return(map_addr);
}
diff --git a/arch/s390x/kernel/entry.S b/arch/s390x/kernel/entry.S
index c5fbdd61f..0dddf63c7 100644
--- a/arch/s390x/kernel/entry.S
+++ b/arch/s390x/kernel/entry.S
@@ -724,7 +724,7 @@ pgm_no_sv:
stosm 48(%r15),0x03 # reenable interrupts
lghi %r3,0x7f
nr %r3,%r8 # clear per-event-bit & move to r3
- je pgm_dn # none of Martins exceptions occured bypass
+ je pgm_dn # none of Martins exceptions occurred bypass
sll %r3,3
larl %r9,pgm_check_table
lg %r9,0(%r3,%r9) # load address of handler routine
diff --git a/arch/s390x/kernel/exec32.c b/arch/s390x/kernel/exec32.c
index 3e6f44558..8c517456a 100644
--- a/arch/s390x/kernel/exec32.c
+++ b/arch/s390x/kernel/exec32.c
@@ -54,7 +54,7 @@ int setup_arg_pages32(struct linux_binprm *bprm)
if (!mpnt)
return -ENOMEM;
- down(&current->mm->mmap_sem);
+ down_write(&current->mm->mmap_sem);
{
mpnt->vm_mm = current->mm;
mpnt->vm_start = PAGE_MASK & (unsigned long) bprm->p;
@@ -73,12 +73,11 @@ int setup_arg_pages32(struct linux_binprm *bprm)
struct page *page = bprm->page[i];
if (page) {
bprm->page[i] = NULL;
- current->mm->rss++;
put_dirty_page(current,page,stack_base);
}
stack_base += PAGE_SIZE;
}
- up(&current->mm->mmap_sem);
+ up_write(&current->mm->mmap_sem);
return 0;
}
diff --git a/arch/s390x/kernel/linux32.c b/arch/s390x/kernel/linux32.c
index 668ac46c4..c567d4b49 100644
--- a/arch/s390x/kernel/linux32.c
+++ b/arch/s390x/kernel/linux32.c
@@ -4184,9 +4184,9 @@ static inline long do_mmap2(
goto out;
}
- down(&current->mm->mmap_sem);
+ down_write(&current->mm->mmap_sem);
error = do_mmap_pgoff(file, addr, len, prot, flags, pgoff);
- up(&current->mm->mmap_sem);
+ up_write(&current->mm->mmap_sem);
if (file)
fput(file);
diff --git a/arch/s390x/kernel/sys_s390.c b/arch/s390x/kernel/sys_s390.c
index 4c06bd326..e05a8be0b 100644
--- a/arch/s390x/kernel/sys_s390.c
+++ b/arch/s390x/kernel/sys_s390.c
@@ -61,9 +61,9 @@ static inline long do_mmap2(
goto out;
}
- down(&current->mm->mmap_sem);
+ down_write(&current->mm->mmap_sem);
error = do_mmap_pgoff(file, addr, len, prot, flags, pgoff);
- up(&current->mm->mmap_sem);
+ up_write(&current->mm->mmap_sem);
if (file)
fput(file);
diff --git a/arch/s390x/mm/fault.c b/arch/s390x/mm/fault.c
index 4c324b690..cd60eb61d 100644
--- a/arch/s390x/mm/fault.c
+++ b/arch/s390x/mm/fault.c
@@ -122,7 +122,7 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long error_code)
* task's user address space, so we search the VMAs
*/
- down(&mm->mmap_sem);
+ down_read(&mm->mmap_sem);
vma = find_vma(mm, address);
if (!vma) {
@@ -176,7 +176,7 @@ good_area:
goto out_of_memory;
}
- up(&mm->mmap_sem);
+ up_read(&mm->mmap_sem);
return;
/*
@@ -184,7 +184,7 @@ good_area:
* Fix it, but check if it's kernel or user first..
*/
bad_area:
- up(&mm->mmap_sem);
+ up_read(&mm->mmap_sem);
/* User mode accesses just cause a SIGSEGV */
if (psw_mask & PSW_PROBLEM_STATE) {
@@ -243,14 +243,14 @@ no_context:
* us unable to handle the page fault gracefully.
*/
out_of_memory:
- up(&mm->mmap_sem);
+ up_read(&mm->mmap_sem);
printk("VM: killing process %s\n", tsk->comm);
if (psw_mask & PSW_PROBLEM_STATE)
do_exit(SIGKILL);
goto no_context;
do_sigbus:
- up(&mm->mmap_sem);
+ up_read(&mm->mmap_sem);
/*
* Send a sigbus, regardless of whether we were in kernel
diff --git a/arch/s390x/tools/dasdfmt/dasdfmt.c b/arch/s390x/tools/dasdfmt/dasdfmt.c
index 2820fc91d..560feff6b 100644
--- a/arch/s390x/tools/dasdfmt/dasdfmt.c
+++ b/arch/s390x/tools/dasdfmt/dasdfmt.c
@@ -477,7 +477,7 @@ do_format_dasd(char *dev_name,format_data_t format_params,int testmode,
rc=stat(dev_name,&stat_buf);
if (rc) {
- ERRMSG_EXIT(EXIT_FAILURE,"%s: error occured during stat: " \
+ ERRMSG_EXIT(EXIT_FAILURE,"%s: error occurred during stat: " \
"%s\n",prog_name,strerror(errno));
} else {
if (!S_ISBLK(stat_buf.st_mode))