diff options
author | Olof Johansson <olof@lixom.net> | 2012-11-06 06:48:05 -0800 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-11-06 06:48:05 -0800 |
commit | 3b19119b95a52200c8ae3df3aa89c21c9a1a8894 (patch) | |
tree | 3ae74b8a35b3d1f639a68c1690af1c06e14a1571 /kernel/pid_namespace.c | |
parent | ccb1cfcb964fa8a8acd58b7783b2e82d7ad7975b (diff) | |
parent | e095c0d122c09efabe7d4136ce77f72c636c4879 (diff) |
Merge tag 'calxeda-ecx-2000' of git://sources.calxeda.com/kernel/linux into next/soc
Support for Calxeda ECX-2000 SOC from Rob Herring
* tag 'calxeda-ecx-2000' of git://sources.calxeda.com/kernel/linux:
ARM: highbank: Add initial ECX-2000 support
ARM: highbank: abstract out SCU usage
ARM: smp_twd: don't warn on no DT node
ARM: dts: Add Calxeda ECX-2000 support
ARM: highbank: enable coherent DMA for xgmac in dts
ARM: highbank: disable unused sdhci and gpio in dts
+ sync to Linux 3.7-rc3
Diffstat (limited to 'kernel/pid_namespace.c')
-rw-r--r-- | kernel/pid_namespace.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c index eb00be205811..7b07cc0dfb75 100644 --- a/kernel/pid_namespace.c +++ b/kernel/pid_namespace.c @@ -71,12 +71,22 @@ err_alloc: return NULL; } +/* MAX_PID_NS_LEVEL is needed for limiting size of 'struct pid' */ +#define MAX_PID_NS_LEVEL 32 + static struct pid_namespace *create_pid_namespace(struct pid_namespace *parent_pid_ns) { struct pid_namespace *ns; unsigned int level = parent_pid_ns->level + 1; - int i, err = -ENOMEM; + int i; + int err; + + if (level > MAX_PID_NS_LEVEL) { + err = -EINVAL; + goto out; + } + err = -ENOMEM; ns = kmem_cache_zalloc(pid_ns_cachep, GFP_KERNEL); if (ns == NULL) goto out; |