SWDEV-300655 - Added thread ID to hip trace
Change-Id: I9234d4ec93e7687cd0a5d1bd930bd4f80936311b
이 커밋은 다음에 포함됨:
+13
-6
@@ -29,6 +29,8 @@
|
||||
#include <cstdlib>
|
||||
#include <cstdio>
|
||||
#include <cstdarg>
|
||||
#include <thread>
|
||||
#include <sstream>
|
||||
|
||||
#ifdef _WIN32
|
||||
#include <windows.h>
|
||||
@@ -96,13 +98,15 @@ void log_timestamped(LogLevel level, const char* file, int line, const char* mes
|
||||
// ================================================================================================
|
||||
void log_printf(LogLevel level, const char* file, int line, const char* format, ...) {
|
||||
va_list ap;
|
||||
|
||||
std::stringstream str_thrd_id;
|
||||
str_thrd_id << std::hex << std::this_thread::get_id();
|
||||
va_start(ap, format);
|
||||
char message[4096];
|
||||
vsnprintf(message, sizeof(message), format, ap);
|
||||
va_end(ap);
|
||||
uint64_t timeUs = Os::timeNanos() / 1000ULL;
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %s\n", level, file, line, timeUs/1ULL, message);
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %-5d: [tid:0x%s] %s\n", level, file, line,
|
||||
timeUs/1ULL, getpid(), str_thrd_id.str().c_str(), message);
|
||||
fflush(outFile);
|
||||
}
|
||||
|
||||
@@ -110,17 +114,20 @@ void log_printf(LogLevel level, const char* file, int line, const char* format,
|
||||
void log_printf(LogLevel level, const char* file, int line, uint64_t* start,
|
||||
const char* format, ...) {
|
||||
va_list ap;
|
||||
|
||||
std::stringstream str_thrd_id;
|
||||
str_thrd_id << std::hex << std::this_thread::get_id();
|
||||
va_start(ap, format);
|
||||
char message[4096];
|
||||
vsnprintf(message, sizeof(message), format, ap);
|
||||
va_end(ap);
|
||||
uint64_t timeUs = Os::timeNanos() / 1000ULL;
|
||||
if (start == 0 || *start == 0) {
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %s\n", level, file, line, timeUs/1ULL, message);
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %-5d: [tid:0x%s] %s\n", level, file, line,
|
||||
timeUs/1ULL, getpid(), str_thrd_id.str().c_str(), message);
|
||||
} else {
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %s: duration: %lld us\n", level, file, line,
|
||||
timeUs/1ULL, message, (timeUs - *start)/1ULL);
|
||||
fprintf(outFile, ":%d:%-25s:%-4d: %010lld us: %-5d: [tid:0x%s] %s: duration: %lld us\n",
|
||||
level, file, line, timeUs/1ULL, getpid(), str_thrd_id.str().c_str(), message,
|
||||
(timeUs - *start)/1ULL);
|
||||
}
|
||||
fflush(outFile);
|
||||
if (*start == 0) {
|
||||
|
||||
새 이슈에서 참조
사용자 차단