update roadmap
authorcompudj <compudj@04897980-b3bd-0310-b5e0-8ef037075253>
Sat, 29 Apr 2006 04:36:34 +0000 (04:36 +0000)
committercompudj <compudj@04897980-b3bd-0310-b5e0-8ef037075253>
Sat, 29 Apr 2006 04:36:34 +0000 (04:36 +0000)
git-svn-id: http://ltt.polymtl.ca/svn@1773 04897980-b3bd-0310-b5e0-8ef037075253

ltt/branches/poly/QUICKSTART
ltt/branches/poly/configure.in
ltt/branches/poly/doc/developer/lttng-lttv-roadmap.html
ltt/branches/poly/ltt/ltt.h
ltt/branches/poly/ltt/tracefile.c
ltt/branches/poly/lttv/lttv/state.c

index 58910725541a2582560a4b9d90c071f39aa670d3..19df9ecc3151063d9be60b05564120fce1abfce8 100644 (file)
@@ -37,6 +37,7 @@ LTTng :
 supported architectures : 
 Intel Pentium (UP/SMP) with TSC
 ARM
+C2 Microsystems (variant of MIPS)
 
 LTTV :
 supported architectures :
@@ -47,7 +48,7 @@ PowerPC
 
 
 Author : Mathieu Desnoyers, September 2005
-Last update : March 13, 2006
+Last update : April 29, 2006
 
 
 ***********************************************************
index bef10d9f1acb43204756b0fa11af523dd9d833f6..c8d98c61bae0b9687ca3d78ea9e71426b1ec9618 100644 (file)
@@ -23,7 +23,7 @@
 AC_PREREQ(2.57)
 AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
 #AC_WITH_LTDL  # not needed ?
-AM_INIT_AUTOMAKE(LinuxTraceToolkitViewer,0.8.36-20042006)
+AM_INIT_AUTOMAKE(LinuxTraceToolkitViewer,0.8.37-28042006)
 AM_CONFIG_HEADER(config.h)
 AM_PROG_LIBTOOL
 
index e67bd74f62908c668dc903a3da08154320037d38..5765872fa7734940cc667bda10e47c73042edba2 100644 (file)
@@ -37,12 +37,13 @@ view into a view of the evolution of a user definable event field.<br>
 * TODO<br>
 (3) LTTng State Dump : fix process states (currently forced to unknown).<br>
        # <A HREF="mailto:Jean-Hugues Deschenes <jean-hugues.deschenes@polymtl.ca>">Jean-Hugues Deschenes</A><br>
+(4) Add Xen support.<br>
        # <A HREF="mailto:Mathieu Desnoyers <compudj@krystal.dyndns.org>">Mathieu Desnoyers</A><br>
+       # <A HREF="mailto:Parisa Heidari <parisa.heidari@polymtl.ca>">Parisa Heidari</A><br>
 (4) efficient dynamic event filtering while recording trace.<br>
        % Sensis Corp. <A HREF="mailto:Bish, Tim <Tim.Bish@Sensis.com>">Tim Bish</A><br>
 (5) Support CPUs with scalable frequency.<br>
 (5) Integrate LTTng and lttd with LKCD.<br>
-(6) Add Xen support.<br>
 (7) Integrate periodical dump of perfctr hardware counters.<br>
 (8) Integrate periodical dump of SystemTAP computed information.<br>
 (8) Integrate SystemTAP logging with LTTng.<br>
@@ -65,7 +66,6 @@ Xen<BR>
 MIPS<BR>
 MIPS64<BR>
 #<A HREF="mailto:Mathieu Desnoyers <compudj@krystal.dyndns.org>">Mathieu Desnoyers</A><br>
-%C2 Microsystems<br>
 %Wind River for 2.6.14<BR>
 S/390<BR>
 <br>
index ad1d42e957d11fb90888d31b918cb3e0782b0689..df1a2339d3b889fd396387c948a9efd1ebba9eb5 100644 (file)
@@ -166,6 +166,7 @@ typedef enum _LttTypeEnum
 #define LTT_ARCH_TYPE_ARM           6
 #define LTT_ARCH_TYPE_PPC64         7
 #define LTT_ARCH_TYPE_X86_64        8
+#define LTT_ARCH_TYPE_C2                 9
 
 /* Standard definitions for variants */
 #define LTT_ARCH_VARIANT_NONE       0  /* Main architecture implementation */
index 00e3444400e56ca1262e139f59ffe5394a8f6dcc..224d3812871b1944634cd0e335bc0043ff546735 100644 (file)
@@ -993,6 +993,9 @@ static int ltt_get_facility_description(LttFacility *f,
                        case LTT_ARCH_TYPE_X86_64:
                                text = "_x86_64";
                                break;
+                       case LTT_ARCH_TYPE_C2:
+                               text = "_c2";
+                               break;
                        default:
                                g_error("Trace from unsupported architecture.");
                }
index 8e80c943f462d48a11370f36af8949ab82919aa9..3084b429c668e5430f678a0191908e91987e4107 100644 (file)
@@ -864,85 +864,91 @@ create_name_tables(LttvTraceState *tcs)
     name_tables->eventtype_names[i] = g_quark_from_string(fe_name->str);    
   }
 #endif //0
-  if(lttv_trace_find_hook(tcs->parent.t,
+  if(!lttv_trace_find_hook(tcs->parent.t,
       LTT_FACILITY_KERNEL_ARCH, LTT_EVENT_SYSCALL_ENTRY,
       LTT_FIELD_SYSCALL_ID, 0, 0,
-      NULL, NULL, &h))
-    return;
-  
-  thf = lttv_trace_hook_get_first(&h);
-  
-  t = ltt_field_type(thf->f1);
-  nb = ltt_type_element_number(t);
-  
-  lttv_trace_hook_destroy(&h);
+      NULL, NULL, &h)) {
+               
+               thf = lttv_trace_hook_get_first(&h);
+               
+               t = ltt_field_type(thf->f1);
+               nb = ltt_type_element_number(t);
+               
+               lttv_trace_hook_destroy(&h);
 
-  name_tables->syscall_names = g_new(GQuark, nb);
-  name_tables->nb_syscalls = nb;
+               name_tables->syscall_names = g_new(GQuark, nb);
+               name_tables->nb_syscalls = nb;
 
-  for(i = 0 ; i < nb ; i++) {
-    name_tables->syscall_names[i] = ltt_enum_string_get(t, i);
-  }
+               for(i = 0 ; i < nb ; i++) {
+                       name_tables->syscall_names[i] = ltt_enum_string_get(t, i);
+               }
 
-  //name_tables->syscall_names = g_new(GQuark, 256);
-  //for(i = 0 ; i < 256 ; i++) {
-  //  g_string_printf(fe_name, "syscall %d", i);
-  //  name_tables->syscall_names[i] = g_quark_from_string(fe_name->str);
-  //}
+               //name_tables->syscall_names = g_new(GQuark, 256);
+               //for(i = 0 ; i < 256 ; i++) {
+               //  g_string_printf(fe_name, "syscall %d", i);
+               //  name_tables->syscall_names[i] = g_quark_from_string(fe_name->str);
+               //}
+       } else {
+               name_tables->syscall_names = NULL;
+               name_tables->nb_syscalls = 0;
+       }
 
-  if(lttv_trace_find_hook(tcs->parent.t, LTT_FACILITY_KERNEL,
+  if(!lttv_trace_find_hook(tcs->parent.t, LTT_FACILITY_KERNEL,
         LTT_EVENT_TRAP_ENTRY,
         LTT_FIELD_TRAP_ID, 0, 0,
-        NULL, NULL, &h))
-    return;
+        NULL, NULL, &h)) {
 
-  thf = lttv_trace_hook_get_first(&h);
+               thf = lttv_trace_hook_get_first(&h);
 
-  t = ltt_field_type(thf->f1);
-  //nb = ltt_type_element_number(t);
+               t = ltt_field_type(thf->f1);
+               //nb = ltt_type_element_number(t);
 
-  lttv_trace_hook_destroy(&h);
+               lttv_trace_hook_destroy(&h);
 
-  /*
-  name_tables->trap_names = g_new(GQuark, nb);
-  for(i = 0 ; i < nb ; i++) {
-    name_tables->trap_names[i] = g_quark_from_string(
-        ltt_enum_string_get(t, i));
-  }
-  */
+               /*
+               name_tables->trap_names = g_new(GQuark, nb);
+               for(i = 0 ; i < nb ; i++) {
+                       name_tables->trap_names[i] = g_quark_from_string(
+                                       ltt_enum_string_get(t, i));
+               }
+               */
 
-  name_tables->trap_names = g_new(GQuark, 256);
-  for(i = 0 ; i < 256 ; i++) {
-    g_string_printf(fe_name, "trap %d", i);
-    name_tables->trap_names[i] = g_quark_from_string(fe_name->str);
-  }
+               name_tables->trap_names = g_new(GQuark, 256);
+               for(i = 0 ; i < 256 ; i++) {
+                       g_string_printf(fe_name, "trap %d", i);
+                       name_tables->trap_names[i] = g_quark_from_string(fe_name->str);
+               }
+       } else {
+               name_tables->trap_names = NULL;
+       }
 
-  if(lttv_trace_find_hook(tcs->parent.t,
+  if(!lttv_trace_find_hook(tcs->parent.t,
         LTT_FACILITY_KERNEL, LTT_EVENT_IRQ_ENTRY,
         LTT_FIELD_IRQ_ID, 0, 0,
-        NULL, NULL, &h))
-    return;
-  
-  thf = lttv_trace_hook_get_first(&h);
-  
-  t = ltt_field_type(thf->f1);
-  //nb = ltt_type_element_number(t);
+        NULL, NULL, &h)) {
+               
+               thf = lttv_trace_hook_get_first(&h);
+               
+               t = ltt_field_type(thf->f1);
+               //nb = ltt_type_element_number(t);
 
-  lttv_trace_hook_destroy(&h);
+               lttv_trace_hook_destroy(&h);
 
-  /*
-  name_tables->irq_names = g_new(GQuark, nb);
-  for(i = 0 ; i < nb ; i++) {
-    name_tables->irq_names[i] = g_quark_from_string(ltt_enum_string_get(t, i));
-  }
-  */
-
-  name_tables->irq_names = g_new(GQuark, 256);
-  for(i = 0 ; i < 256 ; i++) {
-    g_string_printf(fe_name, "irq %d", i);
-    name_tables->irq_names[i] = g_quark_from_string(fe_name->str);
-  }
+               /*
+               name_tables->irq_names = g_new(GQuark, nb);
+               for(i = 0 ; i < nb ; i++) {
+                       name_tables->irq_names[i] = g_quark_from_string(ltt_enum_string_get(t, i));
+               }
+               */
 
+               name_tables->irq_names = g_new(GQuark, 256);
+               for(i = 0 ; i < 256 ; i++) {
+                       g_string_printf(fe_name, "irq %d", i);
+                       name_tables->irq_names[i] = g_quark_from_string(fe_name->str);
+               }
+       } else {
+               name_tables->irq_names = NULL;
+       }
   /*
   name_tables->soft_irq_names = g_new(GQuark, nb);
   for(i = 0 ; i < nb ; i++) {
@@ -994,11 +1000,11 @@ free_name_tables(LttvTraceState *tcs)
   *(v.v_pointer) = NULL;
 
  // g_free(name_tables->eventtype_names);
-  g_free(name_tables->syscall_names);
-  g_free(name_tables->trap_names);
-  g_free(name_tables->irq_names);
-  g_free(name_tables->soft_irq_names);
-  g_free(name_tables);
+  if(name_tables->syscall_names) g_free(name_tables->syscall_names);
+  if(name_tables->trap_names) g_free(name_tables->trap_names);
+  if(name_tables->irq_names) g_free(name_tables->irq_names);
+  if(name_tables->soft_irq_names) g_free(name_tables->soft_irq_names);
+  if(name_tables) g_free(name_tables);
 } 
 
 #ifdef HASH_TABLE_DEBUG
This page took 0.029204 seconds and 4 git commands to generate.