Lines Matching refs:workspace
111 static int InitTraceWorkspace(TraceWorkspace *workspace) in InitTraceWorkspace() argument
113 workspace->traceRootPath = NULL; in InitTraceWorkspace()
114 workspace->traceState = TRACE_STATE_IDLE; in InitTraceWorkspace()
115 workspace->compress = 0; in InitTraceWorkspace()
118 workspace->jsonRootNode = cJSON_Parse(fileBuf); in InitTraceWorkspace()
119 PLUGIN_CHECK(workspace->jsonRootNode != NULL, free(fileBuf); in InitTraceWorkspace()
121 …workspace->compress = cJSON_IsTrue(cJSON_GetObjectItem(workspace->jsonRootNode, "compress")) ? 1 :… in InitTraceWorkspace()
122 PLUGIN_LOGI("InitTraceWorkspace compress :%d", workspace->compress); in InitTraceWorkspace()
127 static void DestroyTraceWorkspace(TraceWorkspace *workspace) in DestroyTraceWorkspace() argument
129 if (workspace->traceRootPath) { in DestroyTraceWorkspace()
130 free(workspace->traceRootPath); in DestroyTraceWorkspace()
131 workspace->traceRootPath = NULL; in DestroyTraceWorkspace()
133 if (workspace->jsonRootNode) { in DestroyTraceWorkspace()
134 cJSON_Delete(workspace->jsonRootNode); in DestroyTraceWorkspace()
135 workspace->jsonRootNode = NULL; in DestroyTraceWorkspace()
137 workspace->traceState = TRACE_STATE_IDLE; in DestroyTraceWorkspace()
140 static bool IsTraceMountedInner(TraceWorkspace *workspace, const char *fsPath) in IsTraceMountedInner() argument
142 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), in IsTraceMountedInner()
145 if (access(workspace->buffer, F_OK) != -1) { in IsTraceMountedInner()
146 workspace->traceRootPath = strdup(fsPath); in IsTraceMountedInner()
152 static bool IsTraceMounted(TraceWorkspace *workspace) in IsTraceMounted() argument
154 return IsTraceMountedInner(workspace, TRACE_DEBUG_FS_PATH) || in IsTraceMounted()
155 IsTraceMountedInner(workspace, TRACE_FS_PATH); in IsTraceMounted()
160 TraceWorkspace *workspace = GetTraceWorkspace(); in IsWritableFile() local
161 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in IsWritableFile()
162 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), in IsWritableFile()
163 "%s%s", workspace->traceRootPath, filename); in IsWritableFile()
165 return access(workspace->buffer, W_OK) != -1; in IsWritableFile()
171 TraceWorkspace *workspace = GetTraceWorkspace(); in WriteStrToFile() local
172 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in WriteStrToFile()
173 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), in WriteStrToFile()
174 "%s%s", workspace->traceRootPath, filename); in WriteStrToFile()
177 realpath(workspace->buffer, realPath); in WriteStrToFile()
179 PLUGIN_CHECK(outfile != NULL, return false, "Failed to open file %s.", workspace->buffer); in WriteStrToFile()
220 TraceWorkspace *workspace = GetTraceWorkspace(); in SetTraceTagsEnabled() local
221 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in SetTraceTagsEnabled()
222 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), "%" PRIu64 "", tags); in SetTraceTagsEnabled()
224 return SystemWriteParam(TRACE_TAG_PARAMETER, workspace->buffer) == 0; in SetTraceTagsEnabled()
242 TraceWorkspace *workspace = GetTraceWorkspace(); in SetUserSpaceSettings() local
243 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in SetUserSpaceSettings()
245 cJSON *userItem = GetArrayItem(workspace->jsonRootNode, &size, TRACE_CFG_USER); in SetUserSpaceSettings()
265 static bool SetKernelTraceEnabled(const TraceWorkspace *workspace, bool enabled) in SetKernelTraceEnabled() argument
270 cJSON *kernelItem = GetArrayItem(workspace->jsonRootNode, &size, TRACE_CFG_KERNEL); in SetKernelTraceEnabled()
296 TraceWorkspace *workspace = GetTraceWorkspace(); in DisableAllTraceEvents() local
297 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in DisableAllTraceEvents()
298 return SetKernelTraceEnabled(workspace, false); in DisableAllTraceEvents()
303 TraceWorkspace *workspace = GetTraceWorkspace(); in SetKernelSpaceSettings() local
304 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in SetKernelSpaceSettings()
313 ret = SetKernelTraceEnabled(workspace, false); in SetKernelSpaceSettings()
315 return SetKernelTraceEnabled(workspace, true); in SetKernelSpaceSettings()
325 TraceWorkspace *workspace = GetTraceWorkspace(); in ClearTrace() local
326 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in ClearTrace()
328 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), in ClearTrace()
329 "%s%s", workspace->traceRootPath, TRACE_PATH); in ClearTrace()
332 realpath(workspace->buffer, realPath); in ClearTrace()
335 … PLUGIN_CHECK(fd >= 0, return false, "Failed to open file %s errno %d", workspace->buffer, errno); in ClearTrace()
377 static void DumpTrace(const TraceWorkspace *workspace, int outFd, const char *path) in DumpTrace() argument
379 …int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), "%s%s", workspace->trace… in DumpTrace()
382 realpath(workspace->buffer, realPath); in DumpTrace()
384 PLUGIN_CHECK(traceFd >= 0, return, "Failed to open file %s errno %d", workspace->buffer, errno); in DumpTrace()
388 if (workspace->compress) { in DumpTrace()
405 TraceWorkspace *workspace = GetTraceWorkspace(); in MarkOthersClockSync() local
406 PLUGIN_CHECK(workspace != NULL, return false, "Failed to get trace workspace"); in MarkOthersClockSync()
407 int len = sprintf_s((char *)workspace->buffer, sizeof(workspace->buffer), "%s%s", in MarkOthersClockSync()
408 workspace->traceRootPath, TRACE_MARKER_PATH); in MarkOthersClockSync()
424 PLUGIN_LOGE("MarkOthersClockSync %s", workspace->buffer); in MarkOthersClockSync()
426 realpath(workspace->buffer, realPath); in MarkOthersClockSync()
443 TraceWorkspace *workspace = GetTraceWorkspace(); in InitStartTrace() local
444 PLUGIN_CHECK(workspace != NULL, return 0, "Failed to get trace workspace"); in InitStartTrace()
445 PLUGIN_CHECK(workspace->traceState == TRACE_STATE_IDLE, return 0, in InitStartTrace()
446 "Invalid state for trace %d", workspace->traceState); in InitStartTrace()
448 InitTraceWorkspace(workspace); in InitStartTrace()
449 PLUGIN_CHECK(IsTraceMounted(workspace), return -1); in InitStartTrace()
451 PLUGIN_CHECK(workspace->traceRootPath != NULL && workspace->jsonRootNode != NULL, in InitStartTrace()
468 workspace->traceState = TRACE_STATE_STARTED; in InitStartTrace()
475 TraceWorkspace *workspace = GetTraceWorkspace(); in InitStopTrace() local
476 PLUGIN_CHECK(workspace != NULL, return 0, "Failed to get trace workspace"); in InitStopTrace()
477 … PLUGIN_CHECK(workspace->traceState == TRACE_STATE_STARTED, return 0, "Invalid state for trace %d", in InitStopTrace()
478 workspace->traceState); in InitStopTrace()
479 workspace->traceState = TRACE_STATE_STOPED; in InitStopTrace()
487 const char *path = workspace->compress ? TRACE_OUTPUT_PATH_ZIP : TRACE_OUTPUT_PATH; in InitStopTrace()
490 DumpTrace(workspace, outFd, TRACE_PATH); in InitStopTrace()
501 DestroyTraceWorkspace(workspace); in InitStopTrace()
508 TraceWorkspace *workspace = GetTraceWorkspace(); in InitInterruptTrace() local
509 PLUGIN_CHECK(workspace != NULL, return 0, "Failed to get trace workspace"); in InitInterruptTrace()
510 PLUGIN_CHECK(workspace->traceState == TRACE_STATE_STARTED, return 0, in InitInterruptTrace()
511 "Invalid state for trace %d", workspace->traceState); in InitInterruptTrace()
513 workspace->traceState = TRACE_STATE_INTERRUPT; in InitInterruptTrace()
523 DestroyTraceWorkspace(workspace); in InitInterruptTrace()