linux/drivers/char
Pali Rohár 723493ca59 i8k: Fix temperature bug handling in i8k_get_temp()
Static array prev[] was incorrectly initialized. It should be initialized to
some "invalid" temperature value (above I8K_MAX_TEMP).

Next, function should store "invalid" value to prev[] (above I8K_MAX_TEMP),
not valid (= I8K_MAX_TEMP) because whole temperature bug handling will not
work.

And last part, to not break existing detection of temperature sensors, register
them also if i8k report too high temperature (above I8K_MAX_TEMP). This is
needed because some sensors are sometimes turned off (e.g sensor on GPU which
can be turned off/on) and in this case SMM report too high value.

To prevent reporting "invalid" values to userspace, return -EINVAL. In this case
sensors which are currently turned off (e.g optimus/powerexpress/enduro gpu)
are reported as "N/A" by lm-sensors package.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-11-26 19:29:36 -08:00
..
agp agp: remove read/write stubs 2014-08-02 06:43:51 +10:00
hw_random One cc: stable commit, the rest are a series of minor cleanups which have 2014-10-18 10:25:09 -07:00
ipmi ipmi: Clear drvdata when interface is removed 2014-10-07 13:22:32 -04:00
mwave drivers/char: delete non-required instances of include <linux/init.h> 2014-02-07 15:10:19 -08:00
pcmcia char: synclink: Remove WARN_ON for bad port count 2014-07-10 16:07:46 -07:00
tpm xen: remove DEFINE_XENBUS_DRIVER() macro 2014-10-06 10:27:57 +01:00
xilinx_hwicap char: xilinx_hwicap: Remove .owner field for driver 2014-09-23 23:13:13 -07:00
xillybus xillybus: Move out of staging 2014-09-23 23:44:16 -07:00
apm-emulation.c apm-emulation: add hibernation APM events to support suspend2disk 2014-01-07 13:50:28 +01:00
applicom.c applicom: dereferencing NULL on error path 2014-05-27 17:43:12 -07:00
applicom.h
bfin-otp.c
bsr.c bsr: avoid format string leaking into device name 2014-07-09 16:59:15 -07:00
ds1302.c
ds1620.c
dsp56k.c drivers/char/dsp56k.c: drop check for negativity of unsigned parameter 2014-07-17 18:38:37 -07:00
dtlk.c
efirtc.c
generic_nvram.c
genrtc.c
hangcheck-timer.c hangcheck-timer: cleanup casting in hangcheck_init() 2014-11-07 11:24:01 -08:00
hpet.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
i8k.c i8k: Fix temperature bug handling in i8k_get_temp() 2014-11-26 19:29:36 -08:00
Kconfig xillybus: Move out of staging 2014-09-23 23:44:16 -07:00
lp.c char: Int overflow in lp_do_ioctl(). 2013-12-18 16:39:54 -08:00
Makefile xillybus: Move out of staging 2014-09-23 23:44:16 -07:00
mbcs.c
mbcs.h
mem.c switch /dev/zero and /dev/full to ->read_iter() 2014-10-09 02:39:08 -04:00
misc.c Revert "misc: always assign miscdevice to file->private_data in open()" 2014-11-14 16:49:49 -08:00
mmtimer.c
msm_smd_pkt.c treewide: Fix typos in printk 2013-12-19 15:10:49 +01:00
mspec.c
nsc_gpio.c
nvram.c
nwbutton.c char: nwbutton: open-code interruptible_sleep_on 2014-01-08 15:29:52 -08:00
nwbutton.h
nwflash.c
pc8736x_gpio.c
ppdev.c
ps3flash.c ps3flash: switch to generic_file_llseek_size() 2013-06-29 12:57:33 +04:00
random.c This adds a memzero_explicit() call which is guaranteed not to be 2014-10-24 12:33:32 -07:00
raw.c Return short read or 0 at end of a raw device, not EIO 2014-10-31 06:33:26 -04:00
rtc.c various char drivers: remove deprecated IRQF_DISABLED 2013-10-16 12:36:10 -07:00
scx200_gpio.c
snsc_event.c various char drivers: remove deprecated IRQF_DISABLED 2013-10-16 12:36:10 -07:00
snsc.c various char drivers: remove deprecated IRQF_DISABLED 2013-10-16 12:36:10 -07:00
snsc.h
sonypi.c ACPI: Remove the old /proc/acpi/event interface 2013-07-15 13:56:36 +02:00
tb0219.c
tile-srom.c char: tile-srom: Add real platform bus parent 2014-10-02 10:19:34 -04:00
tlclk.c tlclk: remove deprecated IRQF_DISABLED 2013-10-16 12:36:10 -07:00
toshiba.c
ttyprintk.c ttyprintk: Allow built as a module 2014-04-16 14:21:06 -07:00
uv_mmtimer.c
virtio_console.c virtio_console: enable VQs early on restore 2014-10-15 10:25:09 +10:30