exit.h 638 B

123456789101112131415161718192021222324252627282930
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. #ifndef LINUX_WAITID_H
  3. #define LINUX_WAITID_H
  4. struct waitid_info {
  5. pid_t pid;
  6. uid_t uid;
  7. int status;
  8. int cause;
  9. };
  10. struct wait_opts {
  11. enum pid_type wo_type;
  12. int wo_flags;
  13. struct pid *wo_pid;
  14. struct waitid_info *wo_info;
  15. int wo_stat;
  16. struct rusage *wo_rusage;
  17. wait_queue_entry_t child_wait;
  18. int notask_error;
  19. };
  20. bool pid_child_should_wake(struct wait_opts *wo, struct task_struct *p);
  21. long __do_wait(struct wait_opts *wo);
  22. int kernel_waitid_prepare(struct wait_opts *wo, int which, pid_t upid,
  23. struct waitid_info *infop, int options,
  24. struct rusage *ru);
  25. #endif