Implement current_exiting() in the LinuxKPI.
Submitted by: Johannes Lundberg <johalun0@gmail.com> MFC after: 1 week Sponsored by: Limelight Networks Sponsored by: Mellanox Technologies
This commit is contained in:
parent
845a91ce0b
commit
638fa5a36f
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=345098
@ -143,6 +143,11 @@ linux_schedule_save_interrupt_value(struct task_struct *task, int value)
|
||||
task->bsd_interrupt_value = value;
|
||||
}
|
||||
|
||||
bool linux_task_exiting(struct task_struct *task);
|
||||
|
||||
#define current_exiting() \
|
||||
linux_task_exiting(current)
|
||||
|
||||
static inline int
|
||||
linux_schedule_get_interrupt_value(struct task_struct *task)
|
||||
{
|
||||
|
@ -215,6 +215,22 @@ linux_get_pid_task(pid_t pid)
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
bool
|
||||
linux_task_exiting(struct task_struct *task)
|
||||
{
|
||||
struct proc *p;
|
||||
bool ret;
|
||||
|
||||
ret = false;
|
||||
p = pfind(task->pid);
|
||||
if (p != NULL) {
|
||||
if ((p->p_flag & P_WEXIT) != 0)
|
||||
ret = true;
|
||||
PROC_UNLOCK(p);
|
||||
}
|
||||
return (ret);
|
||||
}
|
||||
|
||||
static void
|
||||
linux_current_init(void *arg __unused)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user