diff options
| -rw-r--r-- | arch/microblaze/kernel/entry.S | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S index 5dcb0e1a41c4..ef548510b951 100644 --- a/arch/microblaze/kernel/entry.S +++ b/arch/microblaze/kernel/entry.S | |||
| @@ -348,6 +348,7 @@ C_ENTRY(_user_exception): | |||
| 348 | * The LP register should point to the location where the called function | 348 | * The LP register should point to the location where the called function |
| 349 | * should return. [note that MAKE_SYS_CALL uses label 1] */ | 349 | * should return. [note that MAKE_SYS_CALL uses label 1] */ |
| 350 | /* See if the system call number is valid */ | 350 | /* See if the system call number is valid */ |
| 351 | blti r12, 5f | ||
| 351 | addi r11, r12, -__NR_syscalls; | 352 | addi r11, r12, -__NR_syscalls; |
| 352 | bgei r11, 5f; | 353 | bgei r11, 5f; |
| 353 | /* Figure out which function to use for this system call. */ | 354 | /* Figure out which function to use for this system call. */ |
| @@ -375,7 +376,7 @@ C_ENTRY(_user_exception): | |||
| 375 | 376 | ||
| 376 | /* The syscall number is invalid, return an error. */ | 377 | /* The syscall number is invalid, return an error. */ |
| 377 | 5: | 378 | 5: |
| 378 | rtsd r15, 8; /* looks like a normal subroutine return */ | 379 | braid ret_from_trap |
| 379 | addi r3, r0, -ENOSYS; | 380 | addi r3, r0, -ENOSYS; |
| 380 | 381 | ||
| 381 | /* Entry point used to return from a syscall/trap */ | 382 | /* Entry point used to return from a syscall/trap */ |
