X-Git-Url: https://git.lttng.org/?p=lttv.git;a=blobdiff_plain;f=ltt%2Ftracefile.c;h=21188917fe3773eb493610201cc94e545b5f8f4f;hp=8813cfb8effb3872651bcc6c19235e35a21f4383;hb=refs%2Fheads%2Ftraceformat-2.3;hpb=0ab8f4ef603497659971e1dd9f17f6aa37bec79f diff --git a/ltt/tracefile.c b/ltt/tracefile.c index 8813cfb8..21188917 100644 --- a/ltt/tracefile.c +++ b/ltt/tracefile.c @@ -1734,7 +1734,7 @@ static __attribute__((constructor)) void init(void) *Function name * ltt_tracefile_open_header : based on ltt_tracefile_open but it stops * when it gets the header - *Input params + *Input params * fileName : path to the tracefile * tf : the tracefile (metadata_0) where the header will be read *Return value @@ -1745,7 +1745,7 @@ static ltt_subbuffer_header_t * ltt_tracefile_open_header(gchar *fileName, LttTr struct stat lTDFStat; /* Trace data file status */ ltt_subbuffer_header_t *header; int page_size = getpagesize(); - + /* open the file */ tf->long_name = g_quark_from_string(fileName); tf->fd = open(fileName, O_RDONLY); @@ -1753,33 +1753,33 @@ static ltt_subbuffer_header_t * ltt_tracefile_open_header(gchar *fileName, LttTr g_warning("Unable to open input data file %s\n", fileName); goto end; } - - /* Get the file's status */ + + /* Get the file's status */ if(fstat(tf->fd, &lTDFStat) < 0){ g_warning("Unable to get the status of the input data file %s\n", fileName); goto close_file; } - + /* Is the file large enough to contain a trace */ if(lTDFStat.st_size < (off_t)(ltt_subbuffer_header_size())) { g_print("The input data file %s does not contain a trace\n", fileName); goto close_file; } - + /* Temporarily map the buffer start header to get trace information */ /* Multiple of pages aligned head */ tf->buffer.head = mmap(0,PAGE_ALIGN(ltt_subbuffer_header_size()), PROT_READ, MAP_PRIVATE, tf->fd, 0); - + if(tf->buffer.head == MAP_FAILED) { perror("Error in allocating memory for buffer of tracefile"); goto close_file; } g_assert( ( (gulong)tf->buffer.head&(8-1) ) == 0); // make sure it's aligned. - + header = (ltt_subbuffer_header_t *)tf->buffer.head; - + return header; - + close_file: close(tf->fd); end: @@ -1790,13 +1790,13 @@ static ltt_subbuffer_header_t * ltt_tracefile_open_header(gchar *fileName, LttTr /***************************************************************************** *Function name * get_version : get the trace version from a metadata_0 trace file - *Input params + *Input params * pathname : path to the trace * version_number : the struct that will get the version number *Return value * int : 1 if succeed, -1 if error ****************************************************************************/ -int ltt_get_trace_version(const gchar *pathname, struct LttTraceVersion *version_number) +int ltt_get_trace_version(const gchar *pathname, struct LttTraceVersion *version_number) { gchar abs_path[PATH_MAX]; int ret = 0; @@ -1804,23 +1804,23 @@ int ltt_get_trace_version(const gchar *pathname, struct LttTraceVersion *version struct dirent *entry; struct stat stat_buf; gchar path[PATH_MAX]; - + LttTracefile tmp_tf; LttTrace * t; ltt_subbuffer_header_t *header; - + t = g_new(LttTrace, 1); - + get_absolute_pathname(pathname, abs_path); - + /* Test to see if it looks like a trace */ dir = opendir(abs_path); - + if(dir == NULL) { perror(abs_path); goto open_error; } - + while((entry = readdir(dir)) != NULL) { strcpy(path, abs_path); strcat(path, "/"); @@ -1831,14 +1831,14 @@ int ltt_get_trace_version(const gchar *pathname, struct LttTraceVersion *version continue; } } - - closedir(dir); + + closedir(dir); dir = opendir(abs_path); - + while((entry = readdir(dir)) != NULL) { if(entry->d_name[0] == '.') continue; if(g_strcmp0(entry->d_name, "metadata_0") != 0) continue; - + strcpy(path, abs_path); strcat(path, "/"); strcat(path, entry->d_name); @@ -1846,20 +1846,20 @@ int ltt_get_trace_version(const gchar *pathname, struct LttTraceVersion *version perror(path); continue; } - - header = ltt_tracefile_open_header(path, &tmp_tf); - + + header = ltt_tracefile_open_header(path, &tmp_tf); + if(header == NULL) { g_info("Error getting the header %s", path); continue; /* error opening the tracefile : bad magic number ? */ } - - version_number->ltt_major_version = header->major_version; - version_number->ltt_minor_version = header->minor_version; + + version_number->ltt_major_version = header->major_version; + version_number->ltt_minor_version = header->minor_version; } - + return 0; - + open_error: g_free(t); return -1;