Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
e04083df
Commit
e04083df
authored
Jun 10, 2003
by
David Mosberger
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ia64: Andrew changed his mind about the location of force_successful_syscall_return(),
so move it back to ptrace.h.
parent
e7efa217
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
19 deletions
+17
-19
arch/ia64/kernel/sys_ia64.c
arch/ia64/kernel/sys_ia64.c
+0
-1
include/asm-ia64/ptrace.h
include/asm-ia64/ptrace.h
+14
-0
include/asm-ia64/unistd.h
include/asm-ia64/unistd.h
+3
-18
No files found.
arch/ia64/kernel/sys_ia64.c
View file @
e04083df
...
...
@@ -20,7 +20,6 @@
#include <asm/shmparam.h>
#include <asm/uaccess.h>
#include <asm/unistd.h>
unsigned
long
arch_get_unmapped_area
(
struct
file
*
filp
,
unsigned
long
addr
,
unsigned
long
len
,
...
...
include/asm-ia64/ptrace.h
View file @
e04083df
...
...
@@ -235,6 +235,20 @@ struct switch_stack {
!user_mode(_regs) && user_stack(_task, _regs); \
})
/*
* System call handlers that, upon successful completion, need to return a negative value
* should call force_successful_syscall_return() right before returning. On architectures
* where the syscall convention provides for a separate error flag (e.g., alpha, ia64,
* ppc{,64}, sparc{,64}, possibly others), this macro can be used to ensure that the error
* flag will not get set. On architectures which do not support a separate error flag,
* the macro is a no-op and the spurious error condition needs to be filtered out by some
* other means (e.g., in user-level, by passing an extra argument to the syscall handler,
* or something along those lines).
*
* On ia64, we can clear the user's pt_regs->r8 to force a successful syscall.
*/
# define force_successful_syscall_return() (ia64_task_regs(current)->r8 = 0)
struct
task_struct
;
/* forward decl */
struct
unw_frame_info
;
/* forward decl */
...
...
include/asm-ia64/unistd.h
View file @
e04083df
...
...
@@ -349,30 +349,15 @@ waitpid (int pid, int *wait_stat, int flags)
#endif
/* __KERNEL_SYSCALLS__ */
#include <asm/ptrace.h>
/*
* "Conditional" syscalls
*
* What we want is __attribute__((weak,alias("sys_ni_syscall"))),
* but it doesn't work on all toolchains, so we just do it by hand
* What we want is __attribute__((weak,alias("sys_ni_syscall"))), but it doesn't work on
* all toolchains, so we just do it by hand. Note, this macro can only be used in the
* file which defines sys_ni_syscall, i.e., in kernel/sys.c.
*/
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall");
/*
* System call handlers that, upon successful completion, need to return a negative value
* should call force_successful_syscall_return() right before returning. On architectures
* where the syscall convention provides for a separate error flag (e.g., alpha, ia64,
* ppc{,64}, sparc{,64}, possibly others), this macro can be used to ensure that the error
* flag will not get set. On architectures which do not support a separate error flag,
* the macro is a no-op and the spurious error condition needs to be filtered out by some
* other means (e.g., in user-level, by passing an extra argument to the syscall handler,
* or something along those lines).
*
* On ia64, we can clear the user's pt_regs->r8 to force a successful syscall.
*/
#define force_successful_syscall_return() (ia64_task_regs(current)->r8 = 0)
#endif
/* !__ASSEMBLY__ */
#endif
/* __KERNEL__ */
#endif
/* _ASM_IA64_UNISTD_H */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment