[PATCH] powerpc: check Cell SPU syscall number range _before_ using it
Signed-off-by: David Woodhouse <dwmw2@infradead.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Paul Mackerras <paulus@samba.org> Cc: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
5a4fa16396
commit
b471f55427
1 changed files with 2 additions and 2 deletions
|
@ -339,13 +339,13 @@ long spu_sys_callback(struct spu_syscall_block *s)
|
||||||
{
|
{
|
||||||
long (*syscall)(u64 a1, u64 a2, u64 a3, u64 a4, u64 a5, u64 a6);
|
long (*syscall)(u64 a1, u64 a2, u64 a3, u64 a4, u64 a5, u64 a6);
|
||||||
|
|
||||||
syscall = spu_syscall_table[s->nr_ret];
|
|
||||||
|
|
||||||
if (s->nr_ret >= ARRAY_SIZE(spu_syscall_table)) {
|
if (s->nr_ret >= ARRAY_SIZE(spu_syscall_table)) {
|
||||||
pr_debug("%s: invalid syscall #%ld", __FUNCTION__, s->nr_ret);
|
pr_debug("%s: invalid syscall #%ld", __FUNCTION__, s->nr_ret);
|
||||||
return -ENOSYS;
|
return -ENOSYS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
syscall = spu_syscall_table[s->nr_ret];
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
print_symbol(KERN_DEBUG "SPU-syscall %s:", (unsigned long)syscall);
|
print_symbol(KERN_DEBUG "SPU-syscall %s:", (unsigned long)syscall);
|
||||||
printk("syscall%ld(%lx, %lx, %lx, %lx, %lx, %lx)\n",
|
printk("syscall%ld(%lx, %lx, %lx, %lx, %lx, %lx)\n",
|
||||||
|
|
Loading…
Reference in a new issue