Skip to content
Snippets Groups Projects
  1. Apr 23, 2015
    • Steven Cahail's avatar
      linux-ramdump-parser-v2: Integrate IPC Logging · 09615691
      Steven Cahail authored
      Integrate the IPC Logging extraction script module into
      linux-ramdump-parser-v2.
      
      Move ipc_logging.py from into the linux-ramdump-parser-v2/parsers
      directory, and create a relative symbolic link in the original location.
      Add a new file, ipc_logging_ramparse.py, which performs the actual
      integration.
      
      Change-Id: If0db4f82814a644094af7ebd0e4290dd145f94ac
      09615691
  2. Apr 20, 2015
    • Steven Cahail's avatar
      linux-ramdump-parser-v2: Pass options object to RamDump constructor · 5e7d333a
      Steven Cahail authored
      The constructor currently used in ramparse.py to initialize the RamDump
      object has a very long argument list. This list can be shortened by
      passing the options object to the constructor, rather than enumerating
      every member of the options object as a separate argument.
      
      Pass the options object to the RamDump constructor instead of passing
      each member as a separate argument.
      
      Change-Id: I7cbf173232838dd8f9fdbdad0e2b7336ad8fc07b
      5e7d333a
    • Steven Cahail's avatar
      ipc_logging: Update logging, output directory configurations · 3ae4ed49
      Steven Cahail authored
      It is necessary to allow the script to get included as a module by other
      scripts. Currently, the logging and output directory configuration are
      performed in the script's main function, and the options from parsing
      the command line are not passed from function to function.
      
      Create two new functions for the logging and output directory
      configuraiton, and pass the command-line options object to each
      function that uses it. This allows the options to be passed in from
      other scripts.
      
      Change-Id: Ibf34d72cd70620bcbcc00e48141a87a721b1f987
      3ae4ed49
    • Steven Cahail's avatar
      ipc_logging: Update "test" command to accept version, add --64-bit option · d596e39a
      Steven Cahail authored
      When processing a log page, the page header size depends on the size of
      internal structures and pointers that can vary with machine size
      (32-bit or 64-bit). This information is stored in the logging context
      during automated extraction (i.e. when the "parse" command is used), but in
      the "test" command only the log pages are provided, so the necessary
      information is not present.
      
      The correct page header size can be determined if the version of IPC
      Logging and the architecture size (32-bit or 64-bit) are known. Store
      the possible header sizes as module variables, modify the test command
      to accept the IPC Logging version, and modify the script to take an
      argument denoting if the logs are interpreted as 32-bit or 64-bit.
      In the "test" command, select the correct header size using the IPC
      Logging version and architecture size.
      
      Change-Id: I53ccdc7982b5cfd79dfb6c36d982037b3b2a3955
      d596e39a
    • Steven Cahail's avatar
      ipc_logging: Handle corrupted log page headers · 7d11fc36
      Steven Cahail authored
      When parsing IPC logs, sometimes a bogus log page header is present which
      overwrites the bit used to discern whether or not the log page is version
      0. This causes the script to read the version as being 1 or greater, and
      the script then asserts after failing to find a log context for the page.
      In general, header corruption like this may cause other issues that could
      lead to the context not being found, which currently aborts the script.
      
      Modify the script to continue parsing the logs as logs of an unknown
      version in this case. If the header is valid, the proper version will be
      parsed from it, allowing parsing to continue normally.
      
      Change-Id: I02ae617980f817705224b7b02926a9f576dd88e6
      7d11fc36
  3. Mar 28, 2015
  4. Mar 25, 2015
  5. Mar 19, 2015
    • Patrick Daly's avatar
      ldrpv2: Clean up cachedump library for 8992 · 29cd88a1
      Patrick Daly authored
      Rename a variable to better describe its purpose.
      Change the size of the L2 cache for 8992 to the correct value.
      Update version information for 8994.
      
      Change-Id: Ie0bf7e9ff257555cc40467918d258b05bf4c2ada
      29cd88a1
  6. Mar 17, 2015
  7. Mar 15, 2015
  8. Mar 11, 2015
  9. Mar 10, 2015
  10. Mar 08, 2015
  11. Mar 06, 2015
  12. Mar 02, 2015
    • Mitchel Humpherys's avatar
      lrdpv2: roareadiff: don't print non-printable characters · 803e9997
      Mitchel Humpherys authored
      The format of the roareadiff output was recently changed, in
      [99a8ae9d: "linux-ramdump-parser-v2: Update roareadiff for arm64"].
      That change introduced the possibility of printing non-printable
      characters in string representations of the memory dumps.  Fix this by
      outputting a `.' for non-printable characters.
      
      Change-Id: I1efd0775fac89618f43986523c6a9207afed7e5e
      803e9997
  13. Mar 01, 2015
  14. Feb 27, 2015
    • dgaribal's avatar
      linux-ramdump-parser-v2: Optimize taskdump panic stack dumping · bf0fe6ec
      dgaribal authored
      When attempting to locate panicking tasks via the
      "--check-for-panic" option, the taskdump parser currently attempts
      to exhaustively check every task in kernel task list to see if it
      panicked.
      
      To improve performance, task checking can be limited to tasks that
      were listed as currently running at the time the RAM dump was
      collected. Other tasks do not need to be checked because a
      panicking process is expected to disable IRQs and preemption after
      entering the panic handler, and therefore will not yield to any
      other tasks executing on the same CPU prior to resetting.
      
      Change-Id: I51d7b979f918e21bfdd2adf2a3429883f11bab6a
      bf0fe6ec
  15. Feb 24, 2015
  16. Feb 19, 2015
  17. Feb 18, 2015
  18. Feb 14, 2015
  19. Feb 12, 2015
    • Patrick Daly's avatar
      ldrpv2: Fix next rtb entry algorithm · 1627a6ff
      Patrick Daly authored
      Consider the case of a nentries==8 and 3 cpus.
      Numbers in parenthesis are the equivalent location in the circular buffer.
      CPU:   Index0:  Index1: Index2: Index3:
      0      0        3       6       9(1)
      1      1        4       7       10(2)
      2      2        5       8(0)
      
      The current design is only appropriate for the case where
      nentries % nrcpus == 0.
      
      Fix this issue by incrementing the index by (nentries % nrcpus)
      each time circular buffer wraps around.
      
      CPU:   Index0:  Index1: Index2:
      0      0        3       6+2==8(0)
      1      1        4       7+2==9(1)
      2      2        5       8+2==10(2)
      
      Change-Id: I439fb540fc2c437c6b642d18aa9683603c270f36
      1627a6ff
  20. Feb 11, 2015
  21. Feb 10, 2015
  22. Feb 09, 2015
  23. Jan 31, 2015
  24. Jan 29, 2015
  25. Jan 27, 2015
Loading