我正在使用 find_get_pid()
调用来获取给定 pid_t pid
的 struct pid *
,即进程 ID。但是我想包括一些健全性检查,因为 pid
值将由用户进程提供,假设用户给出的 pid 值为 123
并且没有进程使用 pid
123 存在,在这种情况下,find_get_pid
返回的错误值是多少。它会返回一个 NULL
指针吗?
示例代码 stub 如下:
struct pid *pid_struct;
struct task_struct *task;
pid_struct = find_get_pid(pid);
/* INSERT SANITY CHECK ON pid_struct ? */
task = pid_task(pid_struct, PIDTYPE_PID);
最佳答案
find_get_pid
如果找不到 pid,则返回 NULL 指针。
通过尝试一些无效的 pid 根据经验发现了这一点。
关于c - find_get_pid() 内核函数的错误值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39682261/