Fix up lots of missing conversions of do_brk(). --- 25-akpm/arch/ia64/ia32/binfmt_elf32.c | 3 ++- 25-akpm/arch/ia64/kernel/sys_ia64.c | 2 +- 25-akpm/arch/mips/kernel/irixelf.c | 8 ++++---- 25-akpm/arch/mips/kernel/sysirix.c | 2 +- 25-akpm/arch/sparc/kernel/sys_sunos.c | 2 +- 25-akpm/arch/sparc64/kernel/binfmt_aout32.c | 14 ++++++++------ 6 files changed, 17 insertions(+), 14 deletions(-) diff -puN arch/ia64/kernel/sys_ia64.c~bssprot-more-fixes arch/ia64/kernel/sys_ia64.c --- 25/arch/ia64/kernel/sys_ia64.c~bssprot-more-fixes 2004-04-26 19:28:34.919803408 -0700 +++ 25-akpm/arch/ia64/kernel/sys_ia64.c 2004-04-26 19:28:34.928802040 -0700 @@ -147,7 +147,7 @@ ia64_brk (unsigned long brk) goto out; /* Ok, looks good - let it rip. */ - if (do_brk(oldbrk, newbrk-oldbrk) != oldbrk) + if (do_brk(oldbrk, newbrk-oldbrk, VM_DATA_DEFAULT_FLAGS) != oldbrk) goto out; set_brk: mm->brk = brk; diff -puN arch/mips/kernel/irixelf.c~bssprot-more-fixes arch/mips/kernel/irixelf.c --- 25/arch/mips/kernel/irixelf.c~bssprot-more-fixes 2004-04-26 19:28:34.921803104 -0700 +++ 25-akpm/arch/mips/kernel/irixelf.c 2004-04-26 19:28:34.929801888 -0700 @@ -127,7 +127,7 @@ static void set_brk(unsigned long start, end = PAGE_ALIGN(end); if (end <= start) return; - do_brk(start, end - start); + do_brk(start, end - start, VM_DATA_DEFAULT_FLAGS); } @@ -376,7 +376,7 @@ static unsigned int load_irix_interp(str /* Map the last of the bss segment */ if (last_bss > len) { - do_brk(len, (last_bss - len)); + do_brk(len, (last_bss - len), VM_DATA_DEFAULT_FLAGS); } kfree(elf_phdata); @@ -564,7 +564,7 @@ void irix_map_prda_page (void) unsigned long v; struct prda *pp; - v = do_brk (PRDA_ADDRESS, PAGE_SIZE); + v = do_brk(PRDA_ADDRESS, PAGE_SIZE, VM_DATA_DEFAULT_FLAGS); if (v < 0) return; @@ -856,7 +856,7 @@ static int load_irix_library(struct file len = (elf_phdata->p_filesz + elf_phdata->p_vaddr+ 0xfff) & 0xfffff000; bss = elf_phdata->p_memsz + elf_phdata->p_vaddr; if (bss > len) - do_brk(len, bss-len); + do_brk(len, bss-len, VM_DATA_DEFAULT_FLAGS); kfree(elf_phdata); return 0; } diff -puN arch/mips/kernel/sysirix.c~bssprot-more-fixes arch/mips/kernel/sysirix.c --- 25/arch/mips/kernel/sysirix.c~bssprot-more-fixes 2004-04-26 19:28:34.922802952 -0700 +++ 25-akpm/arch/mips/kernel/sysirix.c 2004-04-26 19:28:34.931801584 -0700 @@ -586,7 +586,7 @@ asmlinkage int irix_brk(unsigned long br * Ok, looks good - let it rip. */ mm->brk = brk; - do_brk(oldbrk, newbrk-oldbrk); + do_brk(oldbrk, newbrk-oldbrk, VM_DATA_DEFAULT_FLAGS); ret = 0; out: diff -puN arch/sparc64/kernel/binfmt_aout32.c~bssprot-more-fixes arch/sparc64/kernel/binfmt_aout32.c --- 25/arch/sparc64/kernel/binfmt_aout32.c~bssprot-more-fixes 2004-04-26 19:28:34.923802800 -0700 +++ 25-akpm/arch/sparc64/kernel/binfmt_aout32.c 2004-04-26 19:28:34.931801584 -0700 @@ -49,7 +49,7 @@ static void set_brk(unsigned long start, end = PAGE_ALIGN(end); if (end <= start) return; - do_brk(start, end - start); + do_brk(start, end - start, VM_DATA_DEFAULT_FLAGS); } /* @@ -246,10 +246,10 @@ static int load_aout32_binary(struct lin if (N_MAGIC(ex) == NMAGIC) { loff_t pos = fd_offset; /* Fuck me plenty... */ - error = do_brk(N_TXTADDR(ex), ex.a_text); + error = do_brk(N_TXTADDR(ex), ex.a_text, VM_DATA_DEFAULT_FLAGS); bprm->file->f_op->read(bprm->file, (char *) N_TXTADDR(ex), ex.a_text, &pos); - error = do_brk(N_DATADDR(ex), ex.a_data); + error = do_brk(N_DATADDR(ex), ex.a_data, VM_DATA_DEFAULT_FLAGS); bprm->file->f_op->read(bprm->file, (char *) N_DATADDR(ex), ex.a_data, &pos); goto beyond_if; @@ -258,7 +258,8 @@ static int load_aout32_binary(struct lin if (N_MAGIC(ex) == OMAGIC) { loff_t pos = fd_offset; do_brk(N_TXTADDR(ex) & PAGE_MASK, - ex.a_text+ex.a_data + PAGE_SIZE - 1); + ex.a_text+ex.a_data + PAGE_SIZE - 1, + VM_DATA_DEFAULT_FLAGS); bprm->file->f_op->read(bprm->file, (char *) N_TXTADDR(ex), ex.a_text+ex.a_data, &pos); } else { @@ -272,7 +273,7 @@ static int load_aout32_binary(struct lin if (!bprm->file->f_op->mmap) { loff_t pos = fd_offset; - do_brk(0, ex.a_text+ex.a_data); + do_brk(0, ex.a_text+ex.a_data, VM_DATA_DEFAULT_FLAGS); bprm->file->f_op->read(bprm->file,(char *)N_TXTADDR(ex), ex.a_text+ex.a_data, &pos); goto beyond_if; @@ -388,7 +389,8 @@ static int load_aout32_library(struct fi len = PAGE_ALIGN(ex.a_text + ex.a_data); bss = ex.a_text + ex.a_data + ex.a_bss; if (bss > len) { - error = do_brk(start_addr + len, bss - len); + error = do_brk(start_addr + len, bss - len, + VM_DATA_DEFAULT_FLAGS); retval = error; if (error != start_addr + len) goto out; diff -puN arch/sparc/kernel/sys_sunos.c~bssprot-more-fixes arch/sparc/kernel/sys_sunos.c --- 25/arch/sparc/kernel/sys_sunos.c~bssprot-more-fixes 2004-04-26 19:28:34.925802496 -0700 +++ 25-akpm/arch/sparc/kernel/sys_sunos.c 2004-04-26 19:28:34.932801432 -0700 @@ -207,7 +207,7 @@ asmlinkage int sunos_brk(unsigned long b * Ok, we have probably got enough memory - let it rip. */ current->mm->brk = brk; - do_brk(oldbrk, newbrk-oldbrk); + do_brk(oldbrk, newbrk-oldbrk, VM_DATA_DEFAULT_FLAGS); retval = 0; out: up_write(¤t->mm->mmap_sem); diff -puN arch/ia64/ia32/binfmt_elf32.c~bssprot-more-fixes arch/ia64/ia32/binfmt_elf32.c --- 25/arch/ia64/ia32/binfmt_elf32.c~bssprot-more-fixes 2004-04-26 19:30:05.312061696 -0700 +++ 25-akpm/arch/ia64/ia32/binfmt_elf32.c 2004-04-26 19:30:33.243815424 -0700 @@ -220,7 +220,8 @@ elf32_set_personality (void) } static unsigned long -elf32_map (struct file *filep, unsigned long addr, struct elf_phdr *eppnt, int prot, int type) +elf32_map (struct file *filep, unsigned long addr, struct elf_phdr *eppnt, + int prot, int type, unsigned long total_size) { unsigned long pgoff = (eppnt->p_vaddr) & ~IA32_PAGE_MASK; _