mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 06:34:12 +08:00
signal: kill JOBCTL_TASK_WORK
It's no longer used, get rid of it. Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
792ee0f6db
commit
98b89b649f
@ -19,7 +19,6 @@ struct task_struct;
|
||||
#define JOBCTL_TRAPPING_BIT 21 /* switching to TRACED */
|
||||
#define JOBCTL_LISTENING_BIT 22 /* ptracer is listening for events */
|
||||
#define JOBCTL_TRAP_FREEZE_BIT 23 /* trap for cgroup freezer */
|
||||
#define JOBCTL_TASK_WORK_BIT 24 /* set by TWA_SIGNAL */
|
||||
|
||||
#define JOBCTL_STOP_DEQUEUED (1UL << JOBCTL_STOP_DEQUEUED_BIT)
|
||||
#define JOBCTL_STOP_PENDING (1UL << JOBCTL_STOP_PENDING_BIT)
|
||||
@ -29,10 +28,9 @@ struct task_struct;
|
||||
#define JOBCTL_TRAPPING (1UL << JOBCTL_TRAPPING_BIT)
|
||||
#define JOBCTL_LISTENING (1UL << JOBCTL_LISTENING_BIT)
|
||||
#define JOBCTL_TRAP_FREEZE (1UL << JOBCTL_TRAP_FREEZE_BIT)
|
||||
#define JOBCTL_TASK_WORK (1UL << JOBCTL_TASK_WORK_BIT)
|
||||
|
||||
#define JOBCTL_TRAP_MASK (JOBCTL_TRAP_STOP | JOBCTL_TRAP_NOTIFY)
|
||||
#define JOBCTL_PENDING_MASK (JOBCTL_STOP_PENDING | JOBCTL_TRAP_MASK | JOBCTL_TASK_WORK)
|
||||
#define JOBCTL_PENDING_MASK (JOBCTL_STOP_PENDING | JOBCTL_TRAP_MASK)
|
||||
|
||||
extern bool task_set_jobctl_pending(struct task_struct *task, unsigned long mask);
|
||||
extern void task_clear_jobctl_trapping(struct task_struct *task);
|
||||
|
@ -2556,26 +2556,6 @@ bool get_signal(struct ksignal *ksig)
|
||||
|
||||
relock:
|
||||
spin_lock_irq(&sighand->siglock);
|
||||
/*
|
||||
* Make sure we can safely read ->jobctl() in task_work add. As Oleg
|
||||
* states:
|
||||
*
|
||||
* It pairs with mb (implied by cmpxchg) before READ_ONCE. So we
|
||||
* roughly have
|
||||
*
|
||||
* task_work_add: get_signal:
|
||||
* STORE(task->task_works, new_work); STORE(task->jobctl);
|
||||
* mb(); mb();
|
||||
* LOAD(task->jobctl); LOAD(task->task_works);
|
||||
*
|
||||
* and we can rely on STORE-MB-LOAD [ in task_work_add].
|
||||
*/
|
||||
smp_store_mb(current->jobctl, current->jobctl & ~JOBCTL_TASK_WORK);
|
||||
if (unlikely(current->task_works)) {
|
||||
spin_unlock_irq(&sighand->siglock);
|
||||
task_work_run();
|
||||
goto relock;
|
||||
}
|
||||
|
||||
/*
|
||||
* Every stopped thread goes here after wakeup. Check to see if
|
||||
|
Loading…
Reference in New Issue
Block a user