* [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P
@ 2020-02-20 14:37 Guenter Roeck
2020-02-20 20:16 ` Dr. David Alan Gilbert
0 siblings, 1 reply; 4+ messages in thread
From: Guenter Roeck @ 2020-02-20 14:37 UTC (permalink / raw)
To: Hardware Monitoring
Cc: Jean Delvare, Guenter Roeck, Meelis Roos, Dr . David Alan Gilbert
Loading the driver on a system with W83627DHG-P crashes as follows.
w83627ehf: Found W83627DHG-P chip at 0x290
BUG: kernel NULL pointer dereference, address: 0000000000000000
PGD 0 P4D 0
Oops: 0000 [#1] SMP NOPTI
CPU: 0 PID: 604 Comm: sensors Not tainted 5.6.0-rc2-00055-gca7e1fd1026c #29
Hardware name: /D425KT, BIOS MWPNT10N.86A.0132.2013.0726.1534 07/26/2013
RIP: 0010:w83627ehf_read_string+0x27/0x70 [w83627ehf]
Code: [... ]
RSP: 0018:ffffb95980657df8 EFLAGS: 00010293
RAX: 0000000000000000 RBX: ffff96caaa7f5218 RCX: 0000000000000000
RDX: 0000000000000015 RSI: 0000000000000001 RDI: ffff96caa736ec08
RBP: 0000000000000000 R08: ffffb95980657e20 R09: 0000000000000001
R10: ffff96caaa635cc0 R11: 0000000000000000 R12: ffff96caa9f7cf00
R13: ffff96caa9ec3d00 R14: ffff96caa9ec3d28 R15: ffff96caa9ec3d40
FS: 00007fbc7c4e2740(0000) GS:ffff96caabc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 0000000129d58000 CR4: 00000000000006f0
Call Trace:
? cp_new_stat+0x12d/0x160
hwmon_attr_show_string+0x37/0x70 [hwmon]
dev_attr_show+0x14/0x50
sysfs_kf_seq_show+0xb5/0x1b0
seq_read+0xcf/0x460
vfs_read+0x9b/0x150
ksys_read+0x5f/0xe0
do_syscall_64+0x48/0x190
entry_SYSCALL_64_after_hwframe+0x44/0xa9
...
Temperature labels are not always present. Adjust sysfs attribute
visibility accordingly.
Reported-by: Meelis Roos <mroos@linux.ee>
Cc: Meelis Roos <mroos@linux.ee>
Cc: Dr. David Alan Gilbert <linux@treblig.org>
Fixes: 266cd5835947 ("hwmon: (w83627ehf) convert to with_info interface")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
drivers/hwmon/w83627ehf.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
index 7ffadc2da57b..5a5120121e50 100644
--- a/drivers/hwmon/w83627ehf.c
+++ b/drivers/hwmon/w83627ehf.c
@@ -1346,8 +1346,13 @@ w83627ehf_is_visible(const void *drvdata, enum hwmon_sensor_types type,
/* channel 0.., name 1.. */
if (!(data->have_temp & (1 << channel)))
return 0;
- if (attr == hwmon_temp_input || attr == hwmon_temp_label)
+ if (attr == hwmon_temp_input)
return 0444;
+ if (attr == hwmon_temp_label) {
+ if (data->temp_label)
+ return 0444;
+ return 0;
+ }
if (channel == 2 && data->temp3_val_only)
return 0;
if (attr == hwmon_temp_max) {
--
2.17.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P
2020-02-20 14:37 [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P Guenter Roeck
@ 2020-02-20 20:16 ` Dr. David Alan Gilbert
2020-02-20 20:39 ` Guenter Roeck
0 siblings, 1 reply; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2020-02-20 20:16 UTC (permalink / raw)
To: Guenter Roeck; +Cc: Hardware Monitoring, Jean Delvare, Meelis Roos
* Guenter Roeck (linux@roeck-us.net) wrote:
> Loading the driver on a system with W83627DHG-P crashes as follows.
>
> w83627ehf: Found W83627DHG-P chip at 0x290
> BUG: kernel NULL pointer dereference, address: 0000000000000000
> PGD 0 P4D 0
> Oops: 0000 [#1] SMP NOPTI
> CPU: 0 PID: 604 Comm: sensors Not tainted 5.6.0-rc2-00055-gca7e1fd1026c #29
> Hardware name: /D425KT, BIOS MWPNT10N.86A.0132.2013.0726.1534 07/26/2013
> RIP: 0010:w83627ehf_read_string+0x27/0x70 [w83627ehf]
> Code: [... ]
> RSP: 0018:ffffb95980657df8 EFLAGS: 00010293
> RAX: 0000000000000000 RBX: ffff96caaa7f5218 RCX: 0000000000000000
> RDX: 0000000000000015 RSI: 0000000000000001 RDI: ffff96caa736ec08
> RBP: 0000000000000000 R08: ffffb95980657e20 R09: 0000000000000001
> R10: ffff96caaa635cc0 R11: 0000000000000000 R12: ffff96caa9f7cf00
> R13: ffff96caa9ec3d00 R14: ffff96caa9ec3d28 R15: ffff96caa9ec3d40
> FS: 00007fbc7c4e2740(0000) GS:ffff96caabc00000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 0000000000000000 CR3: 0000000129d58000 CR4: 00000000000006f0
> Call Trace:
> ? cp_new_stat+0x12d/0x160
> hwmon_attr_show_string+0x37/0x70 [hwmon]
> dev_attr_show+0x14/0x50
> sysfs_kf_seq_show+0xb5/0x1b0
> seq_read+0xcf/0x460
> vfs_read+0x9b/0x150
> ksys_read+0x5f/0xe0
> do_syscall_64+0x48/0x190
> entry_SYSCALL_64_after_hwframe+0x44/0xa9
> ...
>
> Temperature labels are not always present. Adjust sysfs attribute
> visibility accordingly.
>
> Reported-by: Meelis Roos <mroos@linux.ee>
> Cc: Meelis Roos <mroos@linux.ee>
> Cc: Dr. David Alan Gilbert <linux@treblig.org>
> Fixes: 266cd5835947 ("hwmon: (w83627ehf) convert to with_info interface")
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> ---
> drivers/hwmon/w83627ehf.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
> index 7ffadc2da57b..5a5120121e50 100644
> --- a/drivers/hwmon/w83627ehf.c
> +++ b/drivers/hwmon/w83627ehf.c
> @@ -1346,8 +1346,13 @@ w83627ehf_is_visible(const void *drvdata, enum hwmon_sensor_types type,
> /* channel 0.., name 1.. */
> if (!(data->have_temp & (1 << channel)))
> return 0;
> - if (attr == hwmon_temp_input || attr == hwmon_temp_label)
> + if (attr == hwmon_temp_input)
> return 0444;
> + if (attr == hwmon_temp_label) {
> + if (data->temp_label)
> + return 0444;
> + return 0;
> + }
> if (channel == 2 && data->temp3_val_only)
> return 0;
> if (attr == hwmon_temp_max) {
> --
> 2.17.1
>
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux | Happy \
\ dave @ treblig.org | | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P
2020-02-20 20:16 ` Dr. David Alan Gilbert
@ 2020-02-20 20:39 ` Guenter Roeck
2020-02-21 14:59 ` Dr. David Alan Gilbert
0 siblings, 1 reply; 4+ messages in thread
From: Guenter Roeck @ 2020-02-20 20:39 UTC (permalink / raw)
To: Dr. David Alan Gilbert; +Cc: Hardware Monitoring, Jean Delvare, Meelis Roos
On Thu, Feb 20, 2020 at 08:16:42PM +0000, Dr. David Alan Gilbert wrote:
> * Guenter Roeck (linux@roeck-us.net) wrote:
> > Loading the driver on a system with W83627DHG-P crashes as follows.
> >
> > w83627ehf: Found W83627DHG-P chip at 0x290
> > BUG: kernel NULL pointer dereference, address: 0000000000000000
> > PGD 0 P4D 0
> > Oops: 0000 [#1] SMP NOPTI
> > CPU: 0 PID: 604 Comm: sensors Not tainted 5.6.0-rc2-00055-gca7e1fd1026c #29
> > Hardware name: /D425KT, BIOS MWPNT10N.86A.0132.2013.0726.1534 07/26/2013
> > RIP: 0010:w83627ehf_read_string+0x27/0x70 [w83627ehf]
> > Code: [... ]
> > RSP: 0018:ffffb95980657df8 EFLAGS: 00010293
> > RAX: 0000000000000000 RBX: ffff96caaa7f5218 RCX: 0000000000000000
> > RDX: 0000000000000015 RSI: 0000000000000001 RDI: ffff96caa736ec08
> > RBP: 0000000000000000 R08: ffffb95980657e20 R09: 0000000000000001
> > R10: ffff96caaa635cc0 R11: 0000000000000000 R12: ffff96caa9f7cf00
> > R13: ffff96caa9ec3d00 R14: ffff96caa9ec3d28 R15: ffff96caa9ec3d40
> > FS: 00007fbc7c4e2740(0000) GS:ffff96caabc00000(0000) knlGS:0000000000000000
> > CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> > CR2: 0000000000000000 CR3: 0000000129d58000 CR4: 00000000000006f0
> > Call Trace:
> > ? cp_new_stat+0x12d/0x160
> > hwmon_attr_show_string+0x37/0x70 [hwmon]
> > dev_attr_show+0x14/0x50
> > sysfs_kf_seq_show+0xb5/0x1b0
> > seq_read+0xcf/0x460
> > vfs_read+0x9b/0x150
> > ksys_read+0x5f/0xe0
> > do_syscall_64+0x48/0x190
> > entry_SYSCALL_64_after_hwframe+0x44/0xa9
> > ...
> >
> > Temperature labels are not always present. Adjust sysfs attribute
> > visibility accordingly.
> >
> > Reported-by: Meelis Roos <mroos@linux.ee>
> > Cc: Meelis Roos <mroos@linux.ee>
> > Cc: Dr. David Alan Gilbert <linux@treblig.org>
> > Fixes: 266cd5835947 ("hwmon: (w83627ehf) convert to with_info interface")
> > Signed-off-by: Guenter Roeck <linux@roeck-us.net>
>
> Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
>
That would be Reviewed-by:, not Signed-off-by:. See
Documentation/process/submitting-patches.rst.
Note that I added "Suggested-by:" to reflect that you provided
the suggested solution.
Thanks,
Guenter
> > ---
> > drivers/hwmon/w83627ehf.c | 7 ++++++-
> > 1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
> > index 7ffadc2da57b..5a5120121e50 100644
> > --- a/drivers/hwmon/w83627ehf.c
> > +++ b/drivers/hwmon/w83627ehf.c
> > @@ -1346,8 +1346,13 @@ w83627ehf_is_visible(const void *drvdata, enum hwmon_sensor_types type,
> > /* channel 0.., name 1.. */
> > if (!(data->have_temp & (1 << channel)))
> > return 0;
> > - if (attr == hwmon_temp_input || attr == hwmon_temp_label)
> > + if (attr == hwmon_temp_input)
> > return 0444;
> > + if (attr == hwmon_temp_label) {
> > + if (data->temp_label)
> > + return 0444;
> > + return 0;
> > + }
> > if (channel == 2 && data->temp3_val_only)
> > return 0;
> > if (attr == hwmon_temp_max) {
> > --
> > 2.17.1
> >
> --
> -----Open up your eyes, open up your mind, open up your code -------
> / Dr. David Alan Gilbert | Running GNU/Linux | Happy \
> \ dave @ treblig.org | | In Hex /
> \ _________________________|_____ http://www.treblig.org |_______/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P
2020-02-20 20:39 ` Guenter Roeck
@ 2020-02-21 14:59 ` Dr. David Alan Gilbert
0 siblings, 0 replies; 4+ messages in thread
From: Dr. David Alan Gilbert @ 2020-02-21 14:59 UTC (permalink / raw)
To: Guenter Roeck; +Cc: Hardware Monitoring, Jean Delvare, Meelis Roos
* Guenter Roeck (linux@roeck-us.net) wrote:
> On Thu, Feb 20, 2020 at 08:16:42PM +0000, Dr. David Alan Gilbert wrote:
> > * Guenter Roeck (linux@roeck-us.net) wrote:
> > > Loading the driver on a system with W83627DHG-P crashes as follows.
> > >
> > > w83627ehf: Found W83627DHG-P chip at 0x290
> > > BUG: kernel NULL pointer dereference, address: 0000000000000000
> > > PGD 0 P4D 0
> > > Oops: 0000 [#1] SMP NOPTI
> > > CPU: 0 PID: 604 Comm: sensors Not tainted 5.6.0-rc2-00055-gca7e1fd1026c #29
> > > Hardware name: /D425KT, BIOS MWPNT10N.86A.0132.2013.0726.1534 07/26/2013
> > > RIP: 0010:w83627ehf_read_string+0x27/0x70 [w83627ehf]
> > > Code: [... ]
> > > RSP: 0018:ffffb95980657df8 EFLAGS: 00010293
> > > RAX: 0000000000000000 RBX: ffff96caaa7f5218 RCX: 0000000000000000
> > > RDX: 0000000000000015 RSI: 0000000000000001 RDI: ffff96caa736ec08
> > > RBP: 0000000000000000 R08: ffffb95980657e20 R09: 0000000000000001
> > > R10: ffff96caaa635cc0 R11: 0000000000000000 R12: ffff96caa9f7cf00
> > > R13: ffff96caa9ec3d00 R14: ffff96caa9ec3d28 R15: ffff96caa9ec3d40
> > > FS: 00007fbc7c4e2740(0000) GS:ffff96caabc00000(0000) knlGS:0000000000000000
> > > CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> > > CR2: 0000000000000000 CR3: 0000000129d58000 CR4: 00000000000006f0
> > > Call Trace:
> > > ? cp_new_stat+0x12d/0x160
> > > hwmon_attr_show_string+0x37/0x70 [hwmon]
> > > dev_attr_show+0x14/0x50
> > > sysfs_kf_seq_show+0xb5/0x1b0
> > > seq_read+0xcf/0x460
> > > vfs_read+0x9b/0x150
> > > ksys_read+0x5f/0xe0
> > > do_syscall_64+0x48/0x190
> > > entry_SYSCALL_64_after_hwframe+0x44/0xa9
> > > ...
> > >
> > > Temperature labels are not always present. Adjust sysfs attribute
> > > visibility accordingly.
> > >
> > > Reported-by: Meelis Roos <mroos@linux.ee>
> > > Cc: Meelis Roos <mroos@linux.ee>
> > > Cc: Dr. David Alan Gilbert <linux@treblig.org>
> > > Fixes: 266cd5835947 ("hwmon: (w83627ehf) convert to with_info interface")
> > > Signed-off-by: Guenter Roeck <linux@roeck-us.net>
> >
> > Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
> >
> That would be Reviewed-by:, not Signed-off-by:. See
> Documentation/process/submitting-patches.rst.
OK, I did Signed-Off because it was mostly the code I'd posted.
> Note that I added "Suggested-by:" to reflect that you provided
> the suggested solution.
Sure,
Reviewed-by: Dr. David Alan Gilbert <linux@treblig.org>
> Thanks,
> Guenter
>
> > > ---
> > > drivers/hwmon/w83627ehf.c | 7 ++++++-
> > > 1 file changed, 6 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
> > > index 7ffadc2da57b..5a5120121e50 100644
> > > --- a/drivers/hwmon/w83627ehf.c
> > > +++ b/drivers/hwmon/w83627ehf.c
> > > @@ -1346,8 +1346,13 @@ w83627ehf_is_visible(const void *drvdata, enum hwmon_sensor_types type,
> > > /* channel 0.., name 1.. */
> > > if (!(data->have_temp & (1 << channel)))
> > > return 0;
> > > - if (attr == hwmon_temp_input || attr == hwmon_temp_label)
> > > + if (attr == hwmon_temp_input)
> > > return 0444;
> > > + if (attr == hwmon_temp_label) {
> > > + if (data->temp_label)
> > > + return 0444;
> > > + return 0;
> > > + }
> > > if (channel == 2 && data->temp3_val_only)
> > > return 0;
> > > if (attr == hwmon_temp_max) {
> > > --
> > > 2.17.1
> > >
> > --
> > -----Open up your eyes, open up your mind, open up your code -------
> > / Dr. David Alan Gilbert | Running GNU/Linux | Happy \
> > \ dave @ treblig.org | | In Hex /
> > \ _________________________|_____ http://www.treblig.org |_______/
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux | Happy \
\ dave @ treblig.org | | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-02-21 14:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-20 14:37 [PATCH] hwmon: (w83627ehf) Fix crash seen with W83627DHG-P Guenter Roeck
2020-02-20 20:16 ` Dr. David Alan Gilbert
2020-02-20 20:39 ` Guenter Roeck
2020-02-21 14:59 ` Dr. David Alan Gilbert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox