aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/score/kernel/module.c12
-rw-r--r--arch/score/kernel/signal.c2
-rw-r--r--arch/score/kernel/sys_score.c14
3 files changed, 8 insertions, 20 deletions
diff --git a/arch/score/kernel/module.c b/arch/score/kernel/module.c
index 1a62557..4de8d47 100644
--- a/arch/score/kernel/module.c
+++ b/arch/score/kernel/module.c
@@ -57,17 +57,17 @@ int apply_relocate(Elf_Shdr *sechdrs, const char *strtab,
for (i = 0; i < relsec->sh_size / sizeof(Elf32_Rel); i++, rel++) {
unsigned long loc;
Elf32_Sym *sym;
- s32 offset;
+ s32 r_offset;
- offset = ELF32_R_SYM(rel->r_info);
- if ((offset < 0) ||
- (offset > (symsec->sh_size / sizeof(Elf32_Sym)))) {
+ r_offset = ELF32_R_SYM(rel->r_info);
+ if ((r_offset < 0) ||
+ (r_offset > (symsec->sh_size / sizeof(Elf32_Sym)))) {
printk(KERN_ERR "%s: bad relocation, section %d reloc %d\n",
me->name, relindex, i);
return -ENOEXEC;
}
- sym = ((Elf32_Sym *)symsec->sh_addr) + offset;
+ sym = ((Elf32_Sym *)symsec->sh_addr) + r_offset;
if ((rel->r_offset < 0) ||
(rel->r_offset > dstsec->sh_size - sizeof(u32))) {
@@ -152,7 +152,7 @@ int apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab,
/* Given an address, look for it in the module exception tables. */
const struct exception_table_entry *search_module_dbetables(unsigned long addr)
{
- return 0;
+ return NULL;
}
/* Put in dbe list if necessary. */
diff --git a/arch/score/kernel/signal.c b/arch/score/kernel/signal.c
index afbfe33..950f87c 100644
--- a/arch/score/kernel/signal.c
+++ b/arch/score/kernel/signal.c
@@ -212,7 +212,7 @@ static int setup_rt_frame(struct k_sigaction *ka, struct pt_regs *regs,
err |= copy_siginfo_to_user(&frame->rs_info, info);
err |= __put_user(0, &frame->rs_uc.uc_flags);
- err |= __put_user(0, &frame->rs_uc.uc_link);
+ err |= __put_user(NULL, &frame->rs_uc.uc_link);
err |= __put_user((void __user *)current->sas_ss_sp,
&frame->rs_uc.uc_stack.ss_sp);
err |= __put_user(sas_ss_flags(regs->regs[0]),
diff --git a/arch/score/kernel/sys_score.c b/arch/score/kernel/sys_score.c
index 5b3cc4e..61aff8a 100644
--- a/arch/score/kernel/sys_score.c
+++ b/arch/score/kernel/sys_score.c
@@ -31,10 +31,7 @@
#include <linux/syscalls.h>
#include <asm/syscalls.h>
-unsigned long shm_align_mask = PAGE_SIZE - 1;
-EXPORT_SYMBOL(shm_align_mask);
-
-asmlinkage unsigned
+asmlinkage long
sys_mmap2(unsigned long addr, unsigned long len, unsigned long prot,
unsigned long flags, unsigned long fd, unsigned long pgoff)
{
@@ -107,15 +104,6 @@ score_execve(struct pt_regs *regs)
}
/*
- * If we ever come here the user sp is bad. Zap the process right away.
- * Due to the bad stack signaling wouldn't work.
- */
-void bad_stack(void)
-{
- do_exit(SIGSEGV);
-}
-
-/*
* Do a system call from kernel instead of calling sys_execve so we
* end up with proper pt_regs.
*/