diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-02-07 01:15:42 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-02-07 01:15:42 -0500 |
commit | a2e5790d841658485d642196dbb0927303d6c22f (patch) | |
tree | b3d28c9bcb7da6880806146fd22a88a7ee7f733e /kernel/pid.c | |
parent | ab2d92ad881da11331280aedf612d82e61cb6d41 (diff) | |
parent | 60c3e026d73ccabb075fb70ba02f8512ab40cf2c (diff) |
Merge branch 'akpm' (patches from Andrew)
Merge misc updates from Andrew Morton:
- kasan updates
- procfs
- lib/bitmap updates
- other lib/ updates
- checkpatch tweaks
- rapidio
- ubsan
- pipe fixes and cleanups
- lots of other misc bits
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (114 commits)
Documentation/sysctl/user.txt: fix typo
MAINTAINERS: update ARM/QUALCOMM SUPPORT patterns
MAINTAINERS: update various PALM patterns
MAINTAINERS: update "ARM/OXNAS platform support" patterns
MAINTAINERS: update Cortina/Gemini patterns
MAINTAINERS: remove ARM/CLKDEV SUPPORT file pattern
MAINTAINERS: remove ANDROID ION pattern
mm: docs: add blank lines to silence sphinx "Unexpected indentation" errors
mm: docs: fix parameter names mismatch
mm: docs: fixup punctuation
pipe: read buffer limits atomically
pipe: simplify round_pipe_size()
pipe: reject F_SETPIPE_SZ with size over UINT_MAX
pipe: fix off-by-one error when checking buffer limits
pipe: actually allow root to exceed the pipe buffer limits
pipe, sysctl: remove pipe_proc_fn()
pipe, sysctl: drop 'min' parameter from pipe-max-size converter
kasan: rework Kconfig settings
crash_dump: is_kdump_kernel can be boolean
kernel/mutex: mutex_is_locked can be boolean
...
Diffstat (limited to 'kernel/pid.c')
-rw-r--r-- | kernel/pid.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/kernel/pid.c b/kernel/pid.c index 5d30c87e3c42..ed6c343fe50d 100644 --- a/kernel/pid.c +++ b/kernel/pid.c | |||
@@ -343,6 +343,19 @@ struct task_struct *find_task_by_vpid(pid_t vnr) | |||
343 | return find_task_by_pid_ns(vnr, task_active_pid_ns(current)); | 343 | return find_task_by_pid_ns(vnr, task_active_pid_ns(current)); |
344 | } | 344 | } |
345 | 345 | ||
346 | struct task_struct *find_get_task_by_vpid(pid_t nr) | ||
347 | { | ||
348 | struct task_struct *task; | ||
349 | |||
350 | rcu_read_lock(); | ||
351 | task = find_task_by_vpid(nr); | ||
352 | if (task) | ||
353 | get_task_struct(task); | ||
354 | rcu_read_unlock(); | ||
355 | |||
356 | return task; | ||
357 | } | ||
358 | |||
346 | struct pid *get_task_pid(struct task_struct *task, enum pid_type type) | 359 | struct pid *get_task_pid(struct task_struct *task, enum pid_type type) |
347 | { | 360 | { |
348 | struct pid *pid; | 361 | struct pid *pid; |