Skip to content
Snippets Groups Projects
  1. Dec 11, 2013
    • Michael Lenz's avatar
      weather-monitor: now is a DatabaseCampaign · 0907dfb0
      Michael Lenz authored
      "removed" unneccessary memory-mapping ("Step 0")
      cleaned out ExperimentData - now consists only of fsppilot and resultset
      resultset now contains bitoffset which is part of result-table's primary key
      adapted code to work with msg.fsppilot() instead of ExperimentData-values
      
      Change-Id: I3b310e7a71d4b28479028250cd5722b3b2ce9f8c
      0907dfb0
  2. Dec 06, 2013
  3. Dec 05, 2013
    • Horst Schirmeier's avatar
      DatabaseCampaign: run jobs for known-outcome exps, too · ab9c0edf
      Horst Schirmeier authored
      Although we know that a known_outcome=1 pilot does not exhibit
      behavior different from the golden run, the database schema does not
      yet know what this behavior looks like (in terms of result-table
      column values).  In order to be able to JOIN valid results for all
      memory writes in the trace table (fspgroup maps them all onto *one*
      pilot per variant), we need to run these experiments, too.
      
      Additionally, don't join the fspgroup table; we only need this one for
      result calculations afterwards.
      
      Change-Id: Idcd2991274fede84526b1eee68a231774625d11a
      ab9c0edf
  4. Dec 04, 2013
    • Lars Rademacher's avatar
      import-trace: fix for using non-gzipped traces · 8b6d744a
      Lars Rademacher authored
      As non-gzipped trace files cause import-trace to always import zero
      events, the input file is now openend as in the dump-trace tool, where
      opening non-gzipped files obviously works fine.
      
      In the medium term we should find a centralized solution for this,
      instead of re-implementing it all over the place.
      
      Change-Id: I75845c03c0bbdc2b6b578b83d492b7dbbb40f051
      8b6d744a
  5. Nov 18, 2013
    • Horst Schirmeier's avatar
      tracing: bugfix for enabled memory maps · 85fffe00
      Horst Schirmeier authored
      With the recent updates to record one additional instruction at the trace
      start, I broke memory-map handling (restrictMemoryAddresses() and
      restrictInstructionAddresses()).  This change repairs this functionality.
      
      Change-Id: I0daf9f474d0efe3f8e30a168c0ccc1e993e7ddc6
      85fffe00
  6. Nov 13, 2013
  7. Nov 11, 2013
  8. Nov 06, 2013
    • Bjoern Doebel's avatar
      L4Sys: termination shortcuts · 443b3e49
      Bjoern Doebel authored
      Add two new breakpoints to L4Sys experiment that allow detecting that
      execution terminated with an error: vga_console_blink() is called by the
      kernel if JDB was entered (meaning we are hanging, e.g., due to an
      assertion); also longjmp() is only used by PF handling code after no
      valid page fault handling could be performed
      
      Change-Id: Ice61039c4bd07815a316bbc0bdb39f3483d9a1da
      443b3e49
    • Bjoern Doebel's avatar
      L4Sys: EIP deviation tracking · d4f22a38
      Bjoern Doebel authored
      * after injecting a fault, track how many instructions it takes until
        execution deviates from original execution
      * also track what the first deviating EIP value is
      
      Change-Id: I18a9250517ca90214728c2c4b036b412f5dbf224
      d4f22a38
    • Bjoern Doebel's avatar
      InstructionFilter: make unused EIP a default 0 parameter · 3db5d034
      Bjoern Doebel authored
      Change-Id: I972be71af70934eef98bc67b27e32a98ecb8be3b
      3db5d034
    • Bjoern Doebel's avatar
      add l4-sys ignore file · a5866a68
      Bjoern Doebel authored
      Change-Id: Iea2228d8bafc2a3ecb4b6e26e2552813821a3d0b
      a5866a68
    • Bjoern Doebel's avatar
      Adapt l4-sys experiment to importer fix · 71170145
      Bjoern Doebel authored
      no need to decrement instruction offset before setting bp anymore
      
      Change-Id: I7f9c02349663899fa8f496a46bcb357bd567ac5c
      71170145
    • Bjoern Doebel's avatar
      L4sys: build fix · 63610d06
      Bjoern Doebel authored
      experiment.hpp is parsed before l4sys.ph.h is generated
      -> remove dependency
      
      Change-Id: I128108e562877caca732ad43fdb65b12e56951f8
      63610d06
  9. Nov 01, 2013
  10. Oct 28, 2013
  11. Oct 24, 2013
    • Christian Dietrich's avatar
      tools/import-trace: added ElfImporter · 148b09be
      Christian Dietrich authored
      The ElfImporter is not a real trace importer, but we locate it
      into the import-trace utility, since here the infrastructure is
      already in place to import things related to an elf binary into
      the database.
      
      The ElfImporter calls objdump and dissassembles an elf binary
      and imports the results into the database.
      
      Change-Id: I6e35673c8dbee3b7e8dfc7549d10e5dca9b55935
      148b09be
  12. Oct 23, 2013
  13. Oct 21, 2013
  14. Oct 17, 2013
    • Horst Schirmeier's avatar
      tracing: simplify confusing iponly/memonly configuration · f2d09195
      Horst Schirmeier authored
      The internal m_iponly / m_memonly bools are a bit hackish; especially it's
      unclear what should happen if both are set.  The m_tracetype enum now
      encompasses all possible configurations, while the plugin's user interface
      remains unchanged.
      
      Change-Id: Ibdd872b5cc5781836428b27bfb2db3825700e671
      f2d09195
    • Horst Schirmeier's avatar
      tracing: bugfix: advance prevtime only if delta was recorded · 64034e29
      Horst Schirmeier authored
      This change implements what the source-code comment already promised but
      didn't keep: As we only record time deltas instead of absolute time values,
      prevtime must not be overwritten unless the current delta was really added
      to the trace.  This has caused timing information to be stored incorrectly
      if certain events were skipped (e.g., because they didn't match the memory
      map configured by the user).
      
      Change-Id: Id40271d117dd91b1122136c62329d64174f304b0
      64034e29
    • Horst Schirmeier's avatar
      import-trace: dynamic instruction off-by-one · 22b9646b
      Horst Schirmeier authored
      Richard noticed that instr2 values are off by one when done with the
      MemoryImporter vs. with his own importer.  The core problem is that
      the dynamic instruction counter in the Importer base class
      (Importer::copy_to_database, instruction_count_t instr) gets increased
      *after* reporting an IP event to the importer implementation; this has
      the side-effect that memory access events have a +1 dynamic
      instruction count offset with regard to the IP event of the
      instruction they belong to.
      
      Bottom line: IP events and all memory events belonging to that
      instruction should have the same dynamic instruction number.
      Christian argued for the numbers starting with 0, which, as a side
      effect, relativizes the repercussions of the change introduced in the
      previous commit, as the new "first" event gets the sequence number 0
      now.
      
       -  All experiments and importers only dealing with memory accesses
          (MemoryImporter) are affected by this change:  The dynamic
          instruction count now starts with 0 instead of 1.  Together with
          the previous commit, the only change is one additional dynamic
          instruction at position 0.  Note that existing trace files do not
          have this additional instruction, which shifts all trace positions
          by 1.
      
       -  All importers that process *only* IP events (InstructionImporter,
          RandomJumpImporter, RegisterImporter) won't see any difference.
          Commit 036e340b, though, introduced a +1 offset.
      
       -  Experiments that use these instruction counts for navigating to
          the target instruction must be checked to properly deal with the
          dynamic instruction #0 (no forwarding necessary).  All dynamic
          instruction offsetting should now work uniformly for both memory
          accesses and all other fault models.  To be sure everything works
          in order, sanity-check the current absolute instruction pointer
          right before fault injection.
      
      Change-Id: I3f509f1b47836fa78fd029a7bb7c36c878912d97
      22b9646b
    • Horst Schirmeier's avatar
      tracing: fix loss of first dynamic instruction · 3dc752cd
      Horst Schirmeier authored
      When starting the tracing plugin (simulator.addFlow()), at the moment
      the *current* dynamic instruction (e.g., the one the start symbol
      points to) is skipped, and tracing commences with the second
      instruction.  This change records an additional instruction event at
      the trace begin.
      
      Note that this change affects all tracing-plugin users.  The first
      event gets recorded when starting the plugin (simulator.addFlow()).
      This avoids compatibility/off-by-one issues when recording traces with
      the generic-tracing experiment vs. with custom experiments.
      
      Change-Id: Ic24e17a68b8a44edad3be994e9edd6d6712bfda1
      3dc752cd
    • Horst Schirmeier's avatar
      Revert "generic-tracing: fix lossage of first event" · 090125a2
      Horst Schirmeier authored
      This reverts commit 036e340b.
      
      Problems with this one were:
       -  Broken event timings.  m_prevtime wasn't reset to m_curtime in
          TracingPlugin::handleSingleIP(), resulting in a large deltatime
          being recorded for the second event, too.  This effectively
          doubled the experiment's start time.
       -  Code repetition (copy/pasted for special handling of first event),
          making planned changes (advanced tracing for IP events) more
          difficult.
       -  Unnecessary additional tracing-plugin interface method.
      
      Change-Id: I4b74d1a3f4563aabe6626399f9b30a2171b4c285
      090125a2
    • Martin Hoffmann's avatar
      doc: Add plugin path to doxygen documentaion. · 87264af7
      Martin Hoffmann authored
      Change-Id: I7a7e7e658b4b86f1e319c58d7595d031f71cb4fd
      87264af7
  15. Oct 14, 2013
    • Horst Schirmeier's avatar
      import-trace: reparse parameters after importer instantiation · e636924d
      Horst Schirmeier authored
      Without this change, import-trace won't recognize, e.g., the -e and -t
      parameters if they come after a parameter that was added by the Importer:
      
      import-trace -i objdump --objdump arm-none-eabi-objdump -e B.elf -t C.tc
      [...]
      [import-trace 14:37:32] couldn't open trace.pb
      
      Change-Id: I9532b01e432055479c79d801b1ca2736a8fd21cc
      e636924d
  16. Sep 19, 2013
  17. Sep 18, 2013
Loading