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
Kirill Smelkov
linux
Commits
6e7ce541
Commit
6e7ce541
authored
Feb 12, 2003
by
Linus Torvalds
Committed by
Vojtech Pavlik
Feb 12, 2003
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make dequeue_signal() take the process as an argument.
This simplifies it and makes it more generic.
parent
6bbe7849
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
19 additions
and
19 deletions
+19
-19
arch/arm/kernel/signal.c
arch/arm/kernel/signal.c
+1
-1
arch/m68k/kernel/signal.c
arch/m68k/kernel/signal.c
+1
-1
arch/mips/kernel/irixsig.c
arch/mips/kernel/irixsig.c
+1
-1
arch/s390x/kernel/linux32.c
arch/s390x/kernel/linux32.c
+2
-2
arch/sparc64/kernel/sys_sparc32.c
arch/sparc64/kernel/sys_sparc32.c
+2
-2
drivers/block/nbd.c
drivers/block/nbd.c
+1
-1
fs/afs/internal.h
fs/afs/internal.h
+1
-1
fs/jffs/intrep.c
fs/jffs/intrep.c
+1
-1
fs/jffs2/background.c
fs/jffs2/background.c
+1
-1
include/linux/sched.h
include/linux/sched.h
+1
-1
kernel/signal.c
kernel/signal.c
+6
-6
net/rxrpc/internal.h
net/rxrpc/internal.h
+1
-1
No files found.
arch/arm/kernel/signal.c
View file @
6e7ce541
...
@@ -522,7 +522,7 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
...
@@ -522,7 +522,7 @@ static int do_signal(sigset_t *oldset, struct pt_regs *regs, int syscall)
struct
k_sigaction
*
ka
;
struct
k_sigaction
*
ka
;
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
signr
=
dequeue_signal
(
&
current
->
blocked
,
&
info
);
signr
=
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
if
(
!
signr
)
if
(
!
signr
)
...
...
arch/m68k/kernel/signal.c
View file @
6e7ce541
...
@@ -1004,7 +1004,7 @@ asmlinkage int do_signal(sigset_t *oldset, struct pt_regs *regs)
...
@@ -1004,7 +1004,7 @@ asmlinkage int do_signal(sigset_t *oldset, struct pt_regs *regs)
for
(;;)
{
for
(;;)
{
int
signr
;
int
signr
;
signr
=
dequeue_signal
(
&
current
->
blocked
,
&
info
);
signr
=
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
);
if
(
!
signr
)
if
(
!
signr
)
break
;
break
;
...
...
arch/mips/kernel/irixsig.c
View file @
6e7ce541
...
@@ -183,7 +183,7 @@ asmlinkage int do_irix_signal(sigset_t *oldset, struct pt_regs *regs)
...
@@ -183,7 +183,7 @@ asmlinkage int do_irix_signal(sigset_t *oldset, struct pt_regs *regs)
unsigned
long
signr
;
unsigned
long
signr
;
spin_lock_irq
(
&
current
->
sigmask_lock
);
spin_lock_irq
(
&
current
->
sigmask_lock
);
signr
=
dequeue_signal
(
&
current
->
blocked
,
&
info
);
signr
=
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
);
spin_unlock_irq
(
&
current
->
sigmask_lock
);
spin_unlock_irq
(
&
current
->
sigmask_lock
);
if
(
!
signr
)
if
(
!
signr
)
...
...
arch/s390x/kernel/linux32.c
View file @
6e7ce541
...
@@ -1726,7 +1726,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
...
@@ -1726,7 +1726,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
}
}
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
if
(
!
sig
)
{
if
(
!
sig
)
{
/* None ready -- temporarily unblock those we're interested
/* None ready -- temporarily unblock those we're interested
in so that we'll be awakened when they arrive. */
in so that we'll be awakened when they arrive. */
...
@@ -1744,7 +1744,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
...
@@ -1744,7 +1744,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
timeout
=
schedule_timeout
(
timeout
);
timeout
=
schedule_timeout
(
timeout
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
current
->
blocked
=
current
->
real_blocked
;
current
->
blocked
=
current
->
real_blocked
;
siginitset
(
&
current
->
real_blocked
,
0
);
siginitset
(
&
current
->
real_blocked
,
0
);
recalc_sigpending
();
recalc_sigpending
();
...
...
arch/sparc64/kernel/sys_sparc32.c
View file @
6e7ce541
...
@@ -1813,7 +1813,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
...
@@ -1813,7 +1813,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
}
}
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
if
(
!
sig
)
{
if
(
!
sig
)
{
timeout
=
MAX_SCHEDULE_TIMEOUT
;
timeout
=
MAX_SCHEDULE_TIMEOUT
;
if
(
uts
)
if
(
uts
)
...
@@ -1833,7 +1833,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
...
@@ -1833,7 +1833,7 @@ sys32_rt_sigtimedwait(compat_sigset_t *uthese, siginfo_t32 *uinfo,
timeout
=
schedule_timeout
(
timeout
);
timeout
=
schedule_timeout
(
timeout
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
current
->
blocked
=
current
->
real_blocked
;
current
->
blocked
=
current
->
real_blocked
;
siginitset
(
&
current
->
real_blocked
,
0
);
siginitset
(
&
current
->
real_blocked
,
0
);
recalc_sigpending
();
recalc_sigpending
();
...
...
drivers/block/nbd.c
View file @
6e7ce541
...
@@ -149,7 +149,7 @@ static int nbd_xmit(int send, struct socket *sock, char *buf, int size, int msg_
...
@@ -149,7 +149,7 @@ static int nbd_xmit(int send, struct socket *sock, char *buf, int size, int msg_
spin_lock_irqsave
(
&
current
->
sighand
->
siglock
,
flags
);
spin_lock_irqsave
(
&
current
->
sighand
->
siglock
,
flags
);
printk
(
KERN_WARNING
"NBD (pid %d: %s) got signal %d
\n
"
,
printk
(
KERN_WARNING
"NBD (pid %d: %s) got signal %d
\n
"
,
current
->
pid
,
current
->
comm
,
current
->
pid
,
current
->
comm
,
dequeue_signal
(
&
current
->
blocked
,
&
info
));
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
));
spin_unlock_irqrestore
(
&
current
->
sighand
->
siglock
,
flags
);
spin_unlock_irqrestore
(
&
current
->
sighand
->
siglock
,
flags
);
result
=
-
EINTR
;
result
=
-
EINTR
;
break
;
break
;
...
...
fs/afs/internal.h
View file @
6e7ce541
...
@@ -47,7 +47,7 @@ static inline void afs_discard_my_signals(void)
...
@@ -47,7 +47,7 @@ static inline void afs_discard_my_signals(void)
siginfo_t
sinfo
;
siginfo_t
sinfo
;
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
dequeue_signal
(
&
current
->
blocked
,
&
sinfo
);
dequeue_signal
(
current
,
&
current
->
blocked
,
&
sinfo
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
}
}
}
}
...
...
fs/jffs/intrep.c
View file @
6e7ce541
...
@@ -3378,7 +3378,7 @@ jffs_garbage_collect_thread(void *ptr)
...
@@ -3378,7 +3378,7 @@ jffs_garbage_collect_thread(void *ptr)
unsigned
long
signr
=
0
;
unsigned
long
signr
=
0
;
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
signr
=
dequeue_signal
(
&
current
->
blocked
,
&
info
);
signr
=
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
switch
(
signr
)
{
switch
(
signr
)
{
...
...
fs/jffs2/background.c
View file @
6e7ce541
...
@@ -114,7 +114,7 @@ static int jffs2_garbage_collect_thread(void *_c)
...
@@ -114,7 +114,7 @@ static int jffs2_garbage_collect_thread(void *_c)
unsigned
long
signr
;
unsigned
long
signr
;
spin_lock_irq
(
&
current_sig_lock
);
spin_lock_irq
(
&
current_sig_lock
);
signr
=
dequeue_signal
(
&
current
->
blocked
,
&
info
);
signr
=
dequeue_signal
(
current
,
&
current
->
blocked
,
&
info
);
spin_unlock_irq
(
&
current_sig_lock
);
spin_unlock_irq
(
&
current_sig_lock
);
switch
(
signr
)
{
switch
(
signr
)
{
...
...
include/linux/sched.h
View file @
6e7ce541
...
@@ -530,7 +530,7 @@ extern int in_egroup_p(gid_t);
...
@@ -530,7 +530,7 @@ extern int in_egroup_p(gid_t);
extern
void
proc_caches_init
(
void
);
extern
void
proc_caches_init
(
void
);
extern
void
flush_signals
(
struct
task_struct
*
);
extern
void
flush_signals
(
struct
task_struct
*
);
extern
void
flush_signal_handlers
(
struct
task_struct
*
);
extern
void
flush_signal_handlers
(
struct
task_struct
*
);
extern
int
dequeue_signal
(
sigset_t
*
mask
,
siginfo_t
*
info
);
extern
int
dequeue_signal
(
s
truct
task_struct
*
tsk
,
s
igset_t
*
mask
,
siginfo_t
*
info
);
extern
void
block_all_signals
(
int
(
*
notifier
)(
void
*
priv
),
void
*
priv
,
extern
void
block_all_signals
(
int
(
*
notifier
)(
void
*
priv
),
void
*
priv
,
sigset_t
*
mask
);
sigset_t
*
mask
);
extern
void
unblock_all_signals
(
void
);
extern
void
unblock_all_signals
(
void
);
...
...
kernel/signal.c
View file @
6e7ce541
...
@@ -485,11 +485,11 @@ static int __dequeue_signal(struct sigpending *pending, sigset_t *mask,
...
@@ -485,11 +485,11 @@ static int __dequeue_signal(struct sigpending *pending, sigset_t *mask,
*
*
* All callers have to hold the siglock.
* All callers have to hold the siglock.
*/
*/
int
dequeue_signal
(
sigset_t
*
mask
,
siginfo_t
*
info
)
int
dequeue_signal
(
s
truct
task_struct
*
tsk
,
s
igset_t
*
mask
,
siginfo_t
*
info
)
{
{
int
signr
=
__dequeue_signal
(
&
current
->
pending
,
mask
,
info
);
int
signr
=
__dequeue_signal
(
&
tsk
->
pending
,
mask
,
info
);
if
(
!
signr
)
if
(
!
signr
)
signr
=
__dequeue_signal
(
&
current
->
signal
->
shared_pending
,
signr
=
__dequeue_signal
(
&
tsk
->
signal
->
shared_pending
,
mask
,
info
);
mask
,
info
);
return
signr
;
return
signr
;
}
}
...
@@ -1456,7 +1456,7 @@ int get_signal_to_deliver(siginfo_t *info, struct pt_regs *regs, void *cookie)
...
@@ -1456,7 +1456,7 @@ int get_signal_to_deliver(siginfo_t *info, struct pt_regs *regs, void *cookie)
continue
;
continue
;
}
}
dequeue:
dequeue:
signr
=
dequeue_signal
(
mask
,
info
);
signr
=
dequeue_signal
(
current
,
mask
,
info
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
if
(
!
signr
)
if
(
!
signr
)
...
@@ -1811,7 +1811,7 @@ sys_rt_sigtimedwait(const sigset_t *uthese, siginfo_t *uinfo,
...
@@ -1811,7 +1811,7 @@ sys_rt_sigtimedwait(const sigset_t *uthese, siginfo_t *uinfo,
}
}
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
if
(
!
sig
)
{
if
(
!
sig
)
{
timeout
=
MAX_SCHEDULE_TIMEOUT
;
timeout
=
MAX_SCHEDULE_TIMEOUT
;
if
(
uts
)
if
(
uts
)
...
@@ -1831,7 +1831,7 @@ sys_rt_sigtimedwait(const sigset_t *uthese, siginfo_t *uinfo,
...
@@ -1831,7 +1831,7 @@ sys_rt_sigtimedwait(const sigset_t *uthese, siginfo_t *uinfo,
timeout
=
schedule_timeout
(
timeout
);
timeout
=
schedule_timeout
(
timeout
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
sig
=
dequeue_signal
(
&
these
,
&
info
);
sig
=
dequeue_signal
(
current
,
&
these
,
&
info
);
current
->
blocked
=
current
->
real_blocked
;
current
->
blocked
=
current
->
real_blocked
;
siginitset
(
&
current
->
real_blocked
,
0
);
siginitset
(
&
current
->
real_blocked
,
0
);
recalc_sigpending
();
recalc_sigpending
();
...
...
net/rxrpc/internal.h
View file @
6e7ce541
...
@@ -55,7 +55,7 @@ static inline void rxrpc_discard_my_signals(void)
...
@@ -55,7 +55,7 @@ static inline void rxrpc_discard_my_signals(void)
siginfo_t
sinfo
;
siginfo_t
sinfo
;
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
spin_lock_irq
(
&
current
->
sighand
->
siglock
);
dequeue_signal
(
&
current
->
blocked
,
&
sinfo
);
dequeue_signal
(
current
,
&
current
->
blocked
,
&
sinfo
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
spin_unlock_irq
(
&
current
->
sighand
->
siglock
);
}
}
}
}
...
...
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