mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-24 06:44:23 +08:00
staging/lustre/osc: Do not use lprocfs_write_helper in sysfs store methods
sysfs store methods provide us with a kernel buffer already, but lprocfs_write_helper is expecting a user buffer. Replace lprocfs_write_helper with kstrto[u]int() calls instead in contention_seconds_store() and lockless_truncate_store() Signed-off-by: Oleg Drokin <green@linuxhacker.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
cadffe60ea
commit
0dd48a43fd
@ -480,9 +480,19 @@ static ssize_t contention_seconds_store(struct kobject *kobj,
|
||||
struct obd_device *obd = container_of(kobj, struct obd_device,
|
||||
obd_kobj);
|
||||
struct osc_device *od = obd2osc_dev(obd);
|
||||
int rc;
|
||||
int val;
|
||||
|
||||
return lprocfs_write_helper(buffer, count, &od->od_contention_time) ?:
|
||||
count;
|
||||
rc = kstrtoint(buffer, 10, &val);
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
if (val < 0)
|
||||
return -EINVAL;
|
||||
|
||||
od->od_contention_time = val;
|
||||
|
||||
return count;
|
||||
}
|
||||
LUSTRE_RW_ATTR(contention_seconds);
|
||||
|
||||
@ -505,9 +515,16 @@ static ssize_t lockless_truncate_store(struct kobject *kobj,
|
||||
struct obd_device *obd = container_of(kobj, struct obd_device,
|
||||
obd_kobj);
|
||||
struct osc_device *od = obd2osc_dev(obd);
|
||||
int rc;
|
||||
unsigned int val;
|
||||
|
||||
return lprocfs_write_helper(buffer, count, &od->od_lockless_truncate) ?:
|
||||
count;
|
||||
rc = kstrtouint(buffer, 10, &val);
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
od->od_lockless_truncate = val;
|
||||
|
||||
return count;
|
||||
}
|
||||
LUSTRE_RW_ATTR(lockless_truncate);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user