mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-03 00:54:09 +08:00
s390/cpum_cf: log bad return code of function cfset_all_copy
When function cfset_all_copy() fails, also log the bad return code in the debug statement (when turned on). No functional change Signed-off-by: Thomas Richter <tmricht@linux.ibm.com> Acked-by: Sumanth Korikkar <sumanthk@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
This commit is contained in:
parent
1707c11652
commit
3cdf0269cd
@ -1290,7 +1290,7 @@ static size_t cfset_needspace(unsigned int sets)
|
|||||||
static int cfset_all_copy(unsigned long arg, cpumask_t *mask)
|
static int cfset_all_copy(unsigned long arg, cpumask_t *mask)
|
||||||
{
|
{
|
||||||
struct s390_ctrset_read __user *ctrset_read;
|
struct s390_ctrset_read __user *ctrset_read;
|
||||||
unsigned int cpu, cpus, rc;
|
unsigned int cpu, cpus, rc = 0;
|
||||||
void __user *uptr;
|
void __user *uptr;
|
||||||
|
|
||||||
ctrset_read = (struct s390_ctrset_read __user *)arg;
|
ctrset_read = (struct s390_ctrset_read __user *)arg;
|
||||||
@ -1304,17 +1304,20 @@ static int cfset_all_copy(unsigned long arg, cpumask_t *mask)
|
|||||||
rc |= put_user(cpuhw->sets, &ctrset_cpudata->no_sets);
|
rc |= put_user(cpuhw->sets, &ctrset_cpudata->no_sets);
|
||||||
rc |= copy_to_user(ctrset_cpudata->data, cpuhw->data,
|
rc |= copy_to_user(ctrset_cpudata->data, cpuhw->data,
|
||||||
cpuhw->used);
|
cpuhw->used);
|
||||||
if (rc)
|
if (rc) {
|
||||||
return -EFAULT;
|
rc = -EFAULT;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
uptr += sizeof(struct s390_ctrset_cpudata) + cpuhw->used;
|
uptr += sizeof(struct s390_ctrset_cpudata) + cpuhw->used;
|
||||||
cond_resched();
|
cond_resched();
|
||||||
}
|
}
|
||||||
cpus = cpumask_weight(mask);
|
cpus = cpumask_weight(mask);
|
||||||
if (put_user(cpus, &ctrset_read->no_cpus))
|
if (put_user(cpus, &ctrset_read->no_cpus))
|
||||||
return -EFAULT;
|
rc = -EFAULT;
|
||||||
debug_sprintf_event(cf_dbg, 4, "%s copied %ld\n", __func__,
|
out:
|
||||||
|
debug_sprintf_event(cf_dbg, 4, "%s rc %d copied %ld\n", __func__, rc,
|
||||||
uptr - (void __user *)ctrset_read->data);
|
uptr - (void __user *)ctrset_read->data);
|
||||||
return 0;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
static size_t cfset_cpuset_read(struct s390_ctrset_setdata *p, int ctrset,
|
static size_t cfset_cpuset_read(struct s390_ctrset_setdata *p, int ctrset,
|
||||||
|
Loading…
Reference in New Issue
Block a user