aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/i8k.c
diff options
context:
space:
mode:
authorDmitry Torokhov <dtor_core@ameritech.net>2005-11-12 00:55:15 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-12 14:42:32 -0500
commit4f005551a8fac21b6fec8d10d57cd12d373d79e1 (patch)
treeda64987344a6d30a80a3bb8fe559ba42951d43b4 /drivers/char/i8k.c
parent44e6f84e3597905816a0440e7218d2ed072120da (diff)
[PATCH] I8K: fix /proc reporting of blank service tags
Make /proc/i8k display '?' when service tag is blank in BIOS. This fixes segfault in i8k gkrellm plugin. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/char/i8k.c')
-rw-r--r--drivers/char/i8k.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/char/i8k.c b/drivers/char/i8k.c
index 6c4b3f986d0c..f3c3aaf4560e 100644
--- a/drivers/char/i8k.c
+++ b/drivers/char/i8k.c
@@ -99,7 +99,9 @@ struct smm_regs {
99 99
100static inline char *i8k_get_dmi_data(int field) 100static inline char *i8k_get_dmi_data(int field)
101{ 101{
102 return dmi_get_system_info(field) ? : "N/A"; 102 char *dmi_data = dmi_get_system_info(field);
103
104 return dmi_data && *dmi_data ? dmi_data : "?";
103} 105}
104 106
105/* 107/*
@@ -396,7 +398,7 @@ static int i8k_proc_show(struct seq_file *seq, void *offset)
396 return seq_printf(seq, "%s %s %s %d %d %d %d %d %d %d\n", 398 return seq_printf(seq, "%s %s %s %d %d %d %d %d %d %d\n",
397 I8K_PROC_FMT, 399 I8K_PROC_FMT,
398 bios_version, 400 bios_version,
399 dmi_get_system_info(DMI_PRODUCT_SERIAL) ? : "N/A", 401 i8k_get_dmi_data(DMI_PRODUCT_SERIAL),
400 cpu_temp, 402 cpu_temp,
401 left_fan, right_fan, left_speed, right_speed, 403 left_fan, right_fan, left_speed, right_speed,
402 ac_power, fn_key); 404 ac_power, fn_key);