Merge tag 'hwmon-for-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck...
[linux-2.6-microblaze.git] / kernel / exit.h
1 // SPDX-License-Identifier: GPL-2.0-only
2 #ifndef LINUX_WAITID_H
3 #define LINUX_WAITID_H
4
5 struct waitid_info {
6         pid_t pid;
7         uid_t uid;
8         int status;
9         int cause;
10 };
11
12 struct wait_opts {
13         enum pid_type           wo_type;
14         int                     wo_flags;
15         struct pid              *wo_pid;
16
17         struct waitid_info      *wo_info;
18         int                     wo_stat;
19         struct rusage           *wo_rusage;
20
21         wait_queue_entry_t              child_wait;
22         int                     notask_error;
23 };
24
25 bool pid_child_should_wake(struct wait_opts *wo, struct task_struct *p);
26 long __do_wait(struct wait_opts *wo);
27 int kernel_waitid_prepare(struct wait_opts *wo, int which, pid_t upid,
28                           struct waitid_info *infop, int options,
29                           struct rusage *ru);
30 #endif