Prev: p9auth: split core function out of some set*{u,g}id functions
Next: Please pull logfs tree for fixes
From: GuanJun He on 21 Apr 2010 07:20 fix badness in fs/proc/generic.c, Bug 15589 - 2.6.34-rc1: Badness at fs/proc/generic.c:316 Signed-off-by: Guanjun He <heguanbo(a)gmail.com> --- diff -Nupr linux-2.6.34-rc1.orig/fs/proc/generic.c linux-2.6.34-rc1/fs/proc/generic.c --- linux-2.6.34-rc1.orig/fs/proc/generic.c 2010-03-09 02:45:44.000000000 +0800 +++ linux-2.6.34-rc1/fs/proc/generic.c 2010-04-21 19:02:49.000000000 +0800 @@ -297,11 +297,13 @@ static int __xlate_proc_name(const char const char *cp = name, *next; struct proc_dir_entry *de; int len; + int rtn = 0; de = *ret; if (!de) de = &proc_root; + spin_lock(&proc_subdir_lock); while (1) { next = strchr(cp, '/'); if (!next) @@ -313,14 +315,17 @@ static int __xlate_proc_name(const char break; } if (!de) { - WARN(1, "name '%s'\n", name); - return -ENOENT; + WARN(1, "name \"%s\"\n", name); + rtn = -ENOENT; + goto out; } cp += len + 1; } *residual = cp; *ret = de; - return 0; +out: + spin_unlock(&proc_subdir_lock); + return rtn; } static int xlate_proc_name(const char *name, struct proc_dir_entry **ret, -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |