Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
5a157d5b
Commit
5a157d5b
authored
Jul 27, 2008
by
David S. Miller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
sparc: Create and use TIF_NOTIFY_RESUME.
Signed-off-by:
David S. Miller
<
davem@davemloft.net
>
parent
1c133b4b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
4 deletions
+22
-4
arch/sparc/include/asm/thread_info_32.h
arch/sparc/include/asm/thread_info_32.h
+6
-1
arch/sparc/kernel/rtrap.S
arch/sparc/kernel/rtrap.S
+3
-2
arch/sparc/kernel/signal.c
arch/sparc/kernel/signal.c
+13
-1
No files found.
arch/sparc/include/asm/thread_info_32.h
View file @
5a157d5b
...
...
@@ -130,7 +130,7 @@ BTFIXUPDEF_CALL(void, free_thread_info, struct thread_info *)
* thread information flag bit numbers
*/
#define TIF_SYSCALL_TRACE 0
/* syscall trace active */
/* flag bit 1 is available
*/
#define TIF_NOTIFY_RESUME 1
/* callback before returning to user
*/
#define TIF_SIGPENDING 2
/* signal pending */
#define TIF_NEED_RESCHED 3
/* rescheduling necessary */
#define TIF_RESTORE_SIGMASK 4
/* restore signal mask in do_signal() */
...
...
@@ -142,12 +142,17 @@ BTFIXUPDEF_CALL(void, free_thread_info, struct thread_info *)
/* as above, but as bit values */
#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
#define _TIF_NOTIFY_RESUME (1<<TIF_NOTIFY_RESUME)
#define _TIF_SIGPENDING (1<<TIF_SIGPENDING)
#define _TIF_NEED_RESCHED (1<<TIF_NEED_RESCHED)
#define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK)
#define _TIF_USEDFPU (1<<TIF_USEDFPU)
#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG)
#define _TIF_DO_NOTIFY_RESUME_MASK (_TIF_NOTIFY_RESUME | \
_TIF_SIGPENDING | \
_TIF_RESTORE_SIGMASK)
#endif
/* __KERNEL__ */
#endif
/* _ASM_THREAD_INFO_H */
arch/sparc/kernel/rtrap.S
View file @
5a157d5b
...
...
@@ -69,12 +69,13 @@ ret_trap_lockless_ipi:
ld
[%
curptr
+
TI_FLAGS
],
%
g2
signal_p
:
andcc
%
g2
,
(
_TIF_SIGPENDING
|
_TIF_RESTORE_SIGMASK
)
,
%
g0
andcc
%
g2
,
_TIF_DO_NOTIFY_RESUME_MASK
,
%
g0
bz
,
a
ret_trap_continue
ld
[%
sp
+
STACKFRAME_SZ
+
PT_PSR
],
%
t_psr
mov
%
g2
,
%
o2
mov
%
l5
,
%
o1
call
do_
signal
call
do_
notify_resume
add
%
sp
,
STACKFRAME_SZ
,
%
o0
!
pt_regs
ptr
/
*
Fall
through
.
*/
...
...
arch/sparc/kernel/signal.c
View file @
5a157d5b
...
...
@@ -18,6 +18,7 @@
#include <linux/smp.h>
#include <linux/binfmts.h>
/* do_coredum */
#include <linux/bitops.h>
#include <linux/tracehook.h>
#include <asm/uaccess.h>
#include <asm/ptrace.h>
...
...
@@ -513,7 +514,7 @@ static inline void syscall_restart(unsigned long orig_i0, struct pt_regs *regs,
* want to handle. Thus you cannot kill init even with a SIGKILL even by
* mistake.
*/
asmlinkage
void
do_signal
(
struct
pt_regs
*
regs
,
unsigned
long
orig_i0
)
static
void
do_signal
(
struct
pt_regs
*
regs
,
unsigned
long
orig_i0
)
{
struct
k_sigaction
ka
;
int
restart_syscall
;
...
...
@@ -579,6 +580,17 @@ asmlinkage void do_signal(struct pt_regs * regs, unsigned long orig_i0)
}
}
void
do_notify_resume
(
struct
pt_regs
*
regs
,
unsigned
long
orig_i0
,
unsigned
long
thread_info_flags
)
{
if
(
thread_info_flags
&
(
_TIF_SIGPENDING
|
_TIF_RESTORE_SIGMASK
))
do_signal
(
regs
,
orig_i0
);
if
(
thread_info_flags
&
_TIF_NOTIFY_RESUME
)
{
clear_thread_flag
(
TIF_NOTIFY_RESUME
);
tracehook_notify_resume
(
regs
);
}
}
asmlinkage
int
do_sys_sigstack
(
struct
sigstack
__user
*
ssptr
,
struct
sigstack
__user
*
ossptr
,
unsigned
long
sp
)
...
...
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