Skip to content

Commit d155c1e

Browse files
authored
use kstrtol_from_user in dni_dps460 driver (sonic-net#151)
To avoid following kernel crash: [ 34.668610] Call Trace: [ 34.697843] __mutex_add_waiter+0x23/0x50 [ 34.745783] __mutex_lock.isra.8+0x1d1/0x4a0 [ 34.796846] ? __handle_mm_fault+0xa83/0x1270 [ 34.848948] ? _kstrtoull+0x3b/0x90 [ 34.890657] set_target+0x95/0xf0 [dni_dps460] [ 34.943797] kernfs_fop_write+0x116/0x190 [ 34.991740] vfs_write+0xa5/0x1a0 [ 35.031363] ksys_write+0x57/0xd0 [ 35.070990] do_syscall_64+0x53/0x110 [ 35.114773] entry_SYSCALL_64_after_hwframe+0x44/0xa9 Signed-off-by: Guohan Lu <[email protected]>
1 parent fdbb885 commit d155c1e

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
use kstrtol_from_user to convert user data
2+
3+
From: Guohan Lu <[email protected]>
4+
5+
6+
---
7+
drivers/hwmon/pmbus/dni_dps460.c | 4 ++--
8+
1 file changed, 2 insertions(+), 2 deletions(-)
9+
10+
diff --git a/drivers/hwmon/pmbus/dni_dps460.c b/drivers/hwmon/pmbus/dni_dps460.c
11+
index 9d684ea5c..893864652 100644
12+
--- a/drivers/hwmon/pmbus/dni_dps460.c
13+
+++ b/drivers/hwmon/pmbus/dni_dps460.c
14+
@@ -118,7 +118,7 @@ static ssize_t set_target(struct device *dev, struct device_attribute *devattr,
15+
unsigned long val;
16+
unsigned long rpm;
17+
18+
- err = kstrtol(buf, 10, &rpm);
19+
+ err = kstrtol_from_user(buf, count, 10, &rpm);
20+
if (err)
21+
return err;
22+
23+
@@ -150,7 +150,7 @@ static ssize_t set_pec(struct device *dev, struct device_attribute *dummy,
24+
long val;
25+
int err;
26+
27+
- err = kstrtol(buf, 10, &val);
28+
+ err = kstrtol_from_user(buf, count, 10, &val);
29+
if (err < 0)
30+
return err;
31+

patch/series

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ driver-hwmon-max6620-update.patch
2222
driver-hwmon-max6658-fix-write-convrate.patch
2323
driver-hwmon-pmbus-dni_dps460.patch
2424
driver-hwmon-pmbus-dni_dps460-update-pmbus-core.patch
25+
driver-hwmon-pmbus-dni_dps460-use-kstrtol-from-user.patch
2526
driver-hwmon-pmbus-dps1900.patch
2627
driver-support-tun-config-carrier-enable.patch
2728
driver-support-optoe.patch

0 commit comments

Comments
 (0)