diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2007-10-19 02:40:19 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-19 14:53:41 -0400 |
commit | 8990571eb573032c1192440febb17132074c5575 (patch) | |
tree | c5cceff1dbac91ca12917e12f5768a5ab332ec75 /kernel/pid.c | |
parent | bac0abd6174e427404dd197cdbefece31e97329b (diff) |
Uninline find_pid etc set of functions
The find_pid/_vpid/_pid_ns functions are used to find the struct pid by its
id, depending on whic id - global or virtual - is used.
The find_vpid() is a macro that pushes the current->nsproxy->pid_ns on the
stack to call another function - find_pid_ns(). It turned out, that this
dereference together with the push itself cause the kernel text size to
grow too much.
Move all these out-of-line. Together with the previous patch this saves a
bit less that 400 bytes from .text section.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Paul Menage <menage@google.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/pid.c')
-rw-r--r-- | kernel/pid.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/pid.c b/kernel/pid.c index bed9e7f80a50..8040533d1a04 100644 --- a/kernel/pid.c +++ b/kernel/pid.c | |||
@@ -302,6 +302,18 @@ struct pid * fastcall find_pid_ns(int nr, struct pid_namespace *ns) | |||
302 | } | 302 | } |
303 | EXPORT_SYMBOL_GPL(find_pid_ns); | 303 | EXPORT_SYMBOL_GPL(find_pid_ns); |
304 | 304 | ||
305 | struct pid *find_vpid(int nr) | ||
306 | { | ||
307 | return find_pid_ns(nr, current->nsproxy->pid_ns); | ||
308 | } | ||
309 | EXPORT_SYMBOL_GPL(find_vpid); | ||
310 | |||
311 | struct pid *find_pid(int nr) | ||
312 | { | ||
313 | return find_pid_ns(nr, &init_pid_ns); | ||
314 | } | ||
315 | EXPORT_SYMBOL_GPL(find_pid); | ||
316 | |||
305 | /* | 317 | /* |
306 | * attach_pid() must be called with the tasklist_lock write-held. | 318 | * attach_pid() must be called with the tasklist_lock write-held. |
307 | */ | 319 | */ |