Fix multiple SGEN_LOG to correctly scale elapsed time in usec. (mono/mono#16485)
authorJohan Lorensson <lateralusx.github@gmail.com>
Tue, 27 Aug 2019 10:14:12 +0000 (12:14 +0200)
committerGitHub <noreply@github.com>
Tue, 27 Aug 2019 10:14:12 +0000 (12:14 +0200)
commit5fc4ad7782f97f9906690d733a83ed0ce8dd9eba
tree74cd732dd68f3da025265c007ac41f9f76f8c696
parent5a0859542d5297b072b5850bc8d9d7fd0bc54f88
Fix multiple SGEN_LOG to correctly scale elapsed time in usec. (mono/mono#16485)

Several SGEN_LOG entries logged usec based on result returend from TV_ELAPSED.
On SGEN's implementation of TV_ELAPSED, the result is not scaled to usec
but returned as 100ns ticks. This was not handled correctly by SGEN_LOG,
but other measures, like profile counters and SGEN binary protocol handles
it correctly.

Fix will adjust the SGEN_LOG calls currently presenting usec to correctly
scale the result. Fix also adds one additional logging measuring total
amount of time spend scanning thread data.

Commit migrated from https://github.com/mono/mono/commit/70aba13173840818246b470e425a6d2585e7672d
src/mono/mono/metadata/sgen-mono.c
src/mono/mono/metadata/sgen-stw.c
src/mono/mono/sgen/sgen-gc.c