diff options
Diffstat (limited to 'kernel/cpuset.c')
| -rw-r--r-- | kernel/cpuset.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/cpuset.c b/kernel/cpuset.c index 4349935c2ad..e92e9818903 100644 --- a/kernel/cpuset.c +++ b/kernel/cpuset.c @@ -1575,8 +1575,10 @@ static int cpuset_write_resmask(struct cgroup *cgrp, struct cftype *cft,  		return -ENODEV;  	trialcs = alloc_trial_cpuset(cs); -	if (!trialcs) -		return -ENOMEM; +	if (!trialcs) { +		retval = -ENOMEM; +		goto out; +	}  	switch (cft->private) {  	case FILE_CPULIST: @@ -1591,6 +1593,7 @@ static int cpuset_write_resmask(struct cgroup *cgrp, struct cftype *cft,  	}  	free_trial_cpuset(trialcs); +out:  	cgroup_unlock();  	return retval;  }  |