diff options
author | Thomas McGuire <thomas.mcguire@kdab.com> | 2018-02-13 16:20:41 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2019-05-03 12:41:45 +0000 |
commit | d25975beeee1fed5d56005b5b77524f8cf22b300 (patch) | |
tree | 02343f7345c69369e1f9524c8745a89be55d5a61 | |
parent | 8db1665ade734265254404eea8a4cc291ca1205d (diff) |
Treat [kernel.kallsyms]_text as a special section
This will remove the bogus error message
"Could not find ELF file for [kernel.kallsyms]_text". An ELF file for
this is not needed, as unwinding in the kernel is treated specially.
Fixes KDAB/hotspot#123
Change-Id: I79a31564dd971932aeafaad58715e702b253d600
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
-rw-r--r-- | app/perfsymboltable.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/app/perfsymboltable.cpp b/app/perfsymboltable.cpp index 4c3a037..c2530a9 100644 --- a/app/perfsymboltable.cpp +++ b/app/perfsymboltable.cpp @@ -286,8 +286,8 @@ QFileInfo PerfSymbolTable::findFile(const char *path, const QString &fileName, void PerfSymbolTable::registerElf(const PerfRecordMmap &mmap, const QByteArray &buildId) { QString filePath(mmap.filename()); - // special regions, such as [heap], [vdso], [stack], ... as well as //anon - const bool isSpecialRegion = (filePath.startsWith('[') && filePath.endsWith(']')) + // special regions, such as [heap], [vdso], [stack], [kernel.kallsyms]_text ... as well as //anon + const bool isSpecialRegion = (filePath.startsWith('[') && filePath.contains(']')) || filePath.startsWith(QLatin1String("/dev/")) || filePath.startsWith(QLatin1String("/memfd:")) || filePath.startsWith(QLatin1String("/SYSV")) |