X-Git-Url: https://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=src%2Fiostreamtop.c;h=e3a643478d7e3608cbd54a071feb912c02879ef3;hp=a1c78a98a63e13329eaafd0b342727f3b5894cdd;hb=3ba84bed69e8eb8e6794a7250da97406dbbe02c2;hpb=b093de8aa1ac7555d20b3aa4227d4675b39ef008 diff --git a/src/iostreamtop.c b/src/iostreamtop.c index a1c78a9..e3a6434 100644 --- a/src/iostreamtop.c +++ b/src/iostreamtop.c @@ -10,10 +10,9 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, - * MA 02111-1307, USA. + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #include @@ -101,7 +100,7 @@ void show_table(GPtrArray *tab) } int update_iostream_ret(struct lttngtop *ctx, int tid, char *comm, - unsigned long timestamp, int cpu_id, int ret) + unsigned long timestamp, uint64_t cpu_id, int ret) { struct processtop *tmp; struct files *tmpfile; @@ -134,7 +133,7 @@ int update_iostream_ret(struct lttngtop *ctx, int tid, char *comm, return err; } -struct syscalls *create_syscall_info(unsigned int type, unsigned int cpu_id, +struct syscalls *create_syscall_info(unsigned int type, uint64_t cpu_id, unsigned int tid, int fd) { struct syscalls *syscall_info; @@ -167,31 +166,18 @@ struct file_history *create_file(struct file_history *history, char *file_name) enum bt_cb_ret handle_exit_syscall(struct bt_ctf_event *call_data, void *private_data) { - struct definition *scope; + const struct definition *scope; unsigned long timestamp; char *comm; uint64_t ret, tid; - int64_t cpu_id; + uint64_t cpu_id; timestamp = bt_ctf_get_timestamp(call_data); if (timestamp == -1ULL) goto error; - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_EVENT_CONTEXT); - comm = bt_ctf_get_char_array(bt_ctf_get_field(call_data, - scope, "_procname")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing procname context info\n"); - goto error; - } - - tid = bt_ctf_get_int64(bt_ctf_get_field(call_data, - scope, "_tid")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing tid context info\n"); - goto error; - } + comm = get_context_comm(call_data); + tid = get_context_tid(call_data); scope = bt_ctf_get_top_level_scope(call_data, BT_EVENT_FIELDS); @@ -202,14 +188,7 @@ enum bt_cb_ret handle_exit_syscall(struct bt_ctf_event *call_data, goto error; } - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_PACKET_CONTEXT); - cpu_id = bt_ctf_get_uint64(bt_ctf_get_field(call_data, - scope, "cpu_id")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing cpu_id context info\n"); - goto error; - } + cpu_id = get_cpu_id(call_data); /* * if we encounter an exit_syscall and @@ -229,7 +208,7 @@ error: enum bt_cb_ret handle_sys_write(struct bt_ctf_event *call_data, void *private_data) { - struct definition *scope; + const struct definition *scope; struct processtop *tmp; unsigned long timestamp; uint64_t cpu_id; @@ -241,30 +220,9 @@ enum bt_cb_ret handle_sys_write(struct bt_ctf_event *call_data, if (timestamp == -1ULL) goto error; - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_EVENT_CONTEXT); - comm = bt_ctf_get_char_array(bt_ctf_get_field(call_data, - scope, "_procname")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing procname context info\n"); - goto error; - } - - tid = bt_ctf_get_int64(bt_ctf_get_field(call_data, - scope, "_tid")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing tid context info\n"); - goto error; - } - - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_PACKET_CONTEXT); - cpu_id = bt_ctf_get_uint64(bt_ctf_get_field(call_data, - scope, "cpu_id")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing cpu_id context info\n"); - goto error; - } + comm = get_context_comm(call_data); + tid = get_context_tid(call_data); + cpu_id = get_cpu_id(call_data); scope = bt_ctf_get_top_level_scope(call_data, BT_EVENT_FIELDS); @@ -290,7 +248,7 @@ enum bt_cb_ret handle_sys_read(struct bt_ctf_event *call_data, void *private_data) { struct processtop *tmp; - struct definition *scope; + const struct definition *scope; unsigned long timestamp; uint64_t cpu_id; char *comm; @@ -301,30 +259,9 @@ enum bt_cb_ret handle_sys_read(struct bt_ctf_event *call_data, if (timestamp == -1ULL) goto error; - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_EVENT_CONTEXT); - comm = bt_ctf_get_char_array(bt_ctf_get_field(call_data, - scope, "_procname")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing procname context info\n"); - goto error; - } - - tid = bt_ctf_get_int64(bt_ctf_get_field(call_data, - scope, "_tid")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing tid context info\n"); - goto error; - } - - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_PACKET_CONTEXT); - cpu_id = bt_ctf_get_uint64(bt_ctf_get_field(call_data, - scope, "cpu_id")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing cpu_id context info\n"); - goto error; - } + comm = get_context_comm(call_data); + tid = get_context_tid(call_data); + cpu_id = get_cpu_id(call_data); scope = bt_ctf_get_top_level_scope(call_data, BT_EVENT_FIELDS); @@ -352,7 +289,7 @@ enum bt_cb_ret handle_sys_open(struct bt_ctf_event *call_data, { struct processtop *tmp; - struct definition *scope; + const struct definition *scope; unsigned long timestamp; uint64_t cpu_id; char *comm; @@ -363,30 +300,9 @@ enum bt_cb_ret handle_sys_open(struct bt_ctf_event *call_data, if (timestamp == -1ULL) goto error; - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_EVENT_CONTEXT); - comm = bt_ctf_get_char_array(bt_ctf_get_field(call_data, - scope, "_procname")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing procname context info\n"); - goto error; - } - - tid = bt_ctf_get_int64(bt_ctf_get_field(call_data, - scope, "_tid")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing tid context info\n"); - goto error; - } - - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_PACKET_CONTEXT); - cpu_id = bt_ctf_get_uint64(bt_ctf_get_field(call_data, - scope, "cpu_id")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing cpu_id context info\n"); - goto error; - } + comm = get_context_comm(call_data); + tid = get_context_tid(call_data); + cpu_id = get_cpu_id(call_data); scope = bt_ctf_get_top_level_scope(call_data, BT_EVENT_FIELDS); @@ -412,7 +328,7 @@ error: enum bt_cb_ret handle_sys_close(struct bt_ctf_event *call_data, void *private_data) { - struct definition *scope; + const struct definition *scope; unsigned long timestamp; int64_t tid; struct processtop *tmp; @@ -423,21 +339,8 @@ enum bt_cb_ret handle_sys_close(struct bt_ctf_event *call_data, if (timestamp == -1ULL) goto error; - scope = bt_ctf_get_top_level_scope(call_data, - BT_STREAM_EVENT_CONTEXT); - comm = bt_ctf_get_char_array(bt_ctf_get_field(call_data, - scope, "_procname")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing procname context info\n"); - goto error; - } - - tid = bt_ctf_get_int64(bt_ctf_get_field(call_data, - scope, "_tid")); - if (bt_ctf_field_get_error()) { - fprintf(stderr, "Missing tid context info\n"); - goto error; - } + comm = get_context_comm(call_data); + tid = get_context_tid(call_data); scope = bt_ctf_get_top_level_scope(call_data, BT_EVENT_FIELDS);