All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] pidns: make pid->level and pid_ns->level unsigned
@ 2008-02-26 16:11 Pavel Emelyanov
  0 siblings, 0 replies; only message in thread
From: Pavel Emelyanov @ 2008-02-26 16:11 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Linux Kernel Mailing List, devel

These values represent the nesting level of a namespace and 
pids living in it, and it's always non-negative.

Turning this from int to unsigned int saves some space in 
pid.c (11 bytes on x86 and 64 on ia64) by letting the compiler 
optimize the pid_nr_ns a bit. E.g. on ia64 this removes the 
sign extension calls, which compiler adds to optimize access
to pid->nubers[ns->level].

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>

---

diff --git a/include/linux/pid.h b/include/linux/pid.h
index c798081..03573e3 100644
--- a/include/linux/pid.h
+++ b/include/linux/pid.h
@@ -60,7 +60,7 @@ struct pid
 	/* lists of tasks that use this pid */
 	struct hlist_head tasks[PIDTYPE_MAX];
 	struct rcu_head rcu;
-	int level;
+	unsigned int level;
 	struct upid numbers[1];
 };
 
diff --git a/include/linux/pid_namespace.h b/include/linux/pid_namespace.h
index fcd61fa..caff528 100644
--- a/include/linux/pid_namespace.h
+++ b/include/linux/pid_namespace.h
@@ -20,7 +20,7 @@ struct pid_namespace {
 	int last_pid;
 	struct task_struct *child_reaper;
 	struct kmem_cache *pid_cachep;
-	int level;
+	unsigned int level;
 	struct pid_namespace *parent;
 #ifdef CONFIG_PROC_FS
 	struct vfsmount *proc_mnt;
diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c
index 6d792b6..cb17497 100644
--- a/kernel/pid_namespace.c
+++ b/kernel/pid_namespace.c
@@ -66,7 +66,7 @@ err_alloc:
 	return NULL;
 }
 
-static struct pid_namespace *create_pid_namespace(int level)
+static struct pid_namespace *create_pid_namespace(unsigned int level)
 {
 	struct pid_namespace *ns;
 	int i;

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2008-02-26 16:12 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-26 16:11 [PATCH] pidns: make pid->level and pid_ns->level unsigned Pavel Emelyanov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.