aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/stackcollapse-record
diff options
context:
space:
mode:
authorDaniel Axtens <[email protected]>2015-12-15 18:09:14 +1100
committerMichael Ellerman <[email protected]>2015-12-16 12:54:04 +1100
commit00b912b0c88e690b1662067497182454357b18b0 (patch)
tree1e6f6ab3201f4078645d5351c9a2721c4aedf54c /tools/perf/scripts/python/bin/stackcollapse-record
parent5f337e3e5b04b32793fd51adab438d46df99c933 (diff)
powerpc: Remove broken GregorianDay()
GregorianDay() is supposed to calculate the day of the week (tm->tm_wday) for a given day/month/year. In that calcuation it indexed into an array called MonthOffset using tm->tm_mon-1. However tm_mon is zero-based, not one-based, so this is off-by-one. It also means that every January, GregoiranDay() will access element -1 of the MonthOffset array. It also doesn't appear to be a correct algorithm either: see in contrast kernel/time/timeconv.c's time_to_tm function. It's been broken forever, which suggests no-one in userland uses this. It looks like no-one in the kernel uses tm->tm_wday either (see e.g. drivers/rtc/rtc-ds1305.c:319). tm->tm_wday is conventionally set to -1 when not available in hardware so we can simply set it to -1 and drop the function. (There are over a dozen other drivers in drivers/rtc that do this.) Found using UBSAN. Cc: Andrey Ryabinin <[email protected]> Cc: Andrew Morton <[email protected]> # as an example of what UBSan finds. Cc: Alessandro Zummo <[email protected]> Cc: Alexandre Belloni <[email protected]> Cc: [email protected] Signed-off-by: Daniel Axtens <[email protected]> Acked-by: Alexandre Belloni <[email protected]> Signed-off-by: Michael Ellerman <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-record')
0 files changed, 0 insertions, 0 deletions