1. 27 Jul, 2017 2 commits
  2. 26 Jul, 2017 1 commit
    • David Johnson's avatar
      Fix module ELF/debuginfo file path search. · 84a83f36
      David Johnson authored
      I assume what happened here is that when we added the debuginfo root
      prefix business, and expanded the search for vmlinux, that we never did
      that for modules; but not sure.  Anyway, this fixes the module search so
      it is similar to searching for vmlinux.
      84a83f36
  3. 10 Mar, 2017 2 commits
  4. 01 Mar, 2017 5 commits
  5. 15 Aug, 2016 1 commit
    • David Johnson's avatar
      When getting page prot bits in Linux targets, get arch-indep version. · da4e6625
      David Johnson authored
      When loading vm_area_structs, we used to return the arch-specific
      vm_page_prot field.  That field is arch-specific, meaning it is ready to
      be loaded into a PTE.  The non-arch-specific field is vm_flags.  So, we
      really want to return the non-arch-specific since we're at the semantic
      layer.  If this causes problems, we can add an arch-specific field, too.
      da4e6625
  6. 04 Aug, 2016 1 commit
    • Eric Eide's avatar
      Update copyright notice and license. · 02de3fdc
      Eric Eide authored
      Make it clear that Stackdb is distributed under GPLv2+, i.e., v2 or
      any later version.  All of the source files already say this, but the
      COPYING file said GPLv2 only.
      
      Also, update the copyright years.
      
      Also, say "Stackdb" rather than "VMI."
      02de3fdc
  7. 22 Jun, 2016 1 commit
  8. 21 Jun, 2016 1 commit
    • David Johnson's avatar
      Fix bugs in os_process_read and os_process_write. · b7cea9bb
      David Johnson authored
      We were effectively assuming virtual memory in os-process targets was
      contiguous... ouch.  Somebody (me) got a little too excited about just
      calling the base target!
      
      The fix for os_process_write is a little unfortunate, though.
      Basically, we assume that if we can resolve all the v2p mappings and
      read a byte from each page, that the page is present.  So we actually do
      all those checks before writing anything.  These checks of course are
      racy if the VM is not paused, but right now it's the best we can do.
      The only other solution would be to hack the hypervisor page protection
      bits, which would be super-heavyweight.  And we're not going to do that
      anytime soon!
      b7cea9bb
  9. 20 Jun, 2016 2 commits
    • David Johnson's avatar
      Fix up gdb/qemu driver to only load status once, effectively. · 8cb8dcbf
      David Johnson authored
          /*
           * NB: QEMU's gdb stub removes all breakpoints on '?', so we have to
           * only call this on target attach!  We have to trust our status as
           * TARGET_PAUSED when we call gdb_pause(), if it succeeds.  This
           * must also be the gdb client's default behavior, although I don't
           * think I saw this in the protocol docs.
           */
      
      (And of course gdb stubs always send stop statuses on breakpoint
      exception or whatever... so strictly speaking, we don't need to rely on
      this call at all.)
      8cb8dcbf
    • David Johnson's avatar
      Protect against weird kernel stack backtraces. · c8445f1f
      David Johnson authored
      Look for a limit of stack frames with the same IP addr, and abort
      if we see more.
      
      This should be configurable, but it's not right now.
      c8445f1f
  10. 22 Apr, 2016 1 commit
  11. 08 Feb, 2016 1 commit
  12. 05 Jan, 2016 1 commit
  13. 06 Dec, 2015 1 commit
  14. 04 Dec, 2015 3 commits
  15. 24 Nov, 2015 1 commit
    • Richard Li's avatar
      Remove a unnecessary included file · 87141fea
      Richard Li authored
      I did not use any function from the target_xen_vm.h. But if you
      compile it in the qemu environment, there is a compilation error
      for lacking xen support.
      87141fea
  16. 18 Nov, 2015 3 commits
  17. 31 Oct, 2015 1 commit
  18. 28 Oct, 2015 1 commit
  19. 23 Oct, 2015 1 commit
  20. 11 Sep, 2015 1 commit
  21. 08 Sep, 2015 1 commit
  22. 12 Aug, 2015 2 commits
  23. 10 Aug, 2015 3 commits
    • David Johnson's avatar
      Fill in some missing overlay support in the GDB backend. · b112248a
      David Johnson authored
      Not sure why this wasn't there...
      b112248a
    • David Johnson's avatar
      Minor bug fix. · b63872cf
      David Johnson authored
      b63872cf
    • David Johnson's avatar
      Extend the QMP hack to "skip past" asynchronous messages. · f98aece5
      David Johnson authored
      I needed %gs and %crX, so I pull those from QEMU's QMP via
      the 'info registers' command.  But rather than actually parsing
      the JSON responses, I just look for a few specific strings to grab
      the register values.  Well, I neglected to account for asynchronous
      notifications, and those were causing the register reads to "fail".
      So, now we just keep reading until we see what we expect.  Still
      could be racy cause we read to a fixed buffer, but it's really
      unlikely.  Still no time to write a JSON message parser.
      f98aece5
  24. 05 Aug, 2015 1 commit
  25. 23 Jul, 2015 2 commits