diff options
author | 2014-08-08 14:20:09 -0700 | |
---|---|---|
committer | 2014-08-08 15:57:19 -0700 | |
commit | 6e85bab6bc1019f9b87c53b32da3ad7791e7ddf9 (patch) | |
tree | 7f83156bdd6fa857286d224a3443dc5f481cbd74 /fs | |
parent | drivers/rtc/rtc-ds1742.c: revert "drivers/rtc/rtc-ds1742.c: remove redundant of_match_ptr() helper" (diff) | |
download | linux-dev-6e85bab6bc1019f9b87c53b32da3ad7791e7ddf9.tar.xz linux-dev-6e85bab6bc1019f9b87c53b32da3ad7791e7ddf9.zip |
drivers/rtc/rtc-efi.c: check for invalid data coming back from UEFI
In particular seeing zero in eft->month is problematic, as it results in
-1 (converted to unsigned int, i.e. yielding 0xffffffff) getting passed
to rtc_year_days(), where the value gets used as an array index
(normally resulting in a crash). This was observed with the driver
enabled on x86 on some Fujitsu system (with possibly not up to date
firmware, but anyway).
Perhaps efi_read_alarm() should not fail if neither enabled nor pending
are set, but the returned time is invalid?
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reported-by: Raymund Will <rw@suse.de>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Jingoo Han <jg1.han@samsung.com>
Acked-by: Lee, Chun-Yi <jlee@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions