On Thu, Feb 20, 2020 at 08:16:42PM +0000, Dr. David Alan Gilbert wrote: > * Guenter Roeck (linux@xxxxxxxxxxxx) 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@xxxxxxxx> > > Cc: Meelis Roos <mroos@xxxxxxxx> > > Cc: Dr. David Alan Gilbert <linux@xxxxxxxxxxx> > > Fixes: 266cd5835947 ("hwmon: (w83627ehf) convert to with_info interface") > > Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx> > > Signed-off-by: Dr. David Alan Gilbert <linux@xxxxxxxxxxx> > 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 |_______/