1. 18 2月, 2015 2 次提交
    • P
      scripts/gdb: port to python3 / gdb7.7 · 276d97d9
      Pantelis Koukousoulas 提交于
      I tried to use these scripts in an ubuntu 14.04 host (gdb 7.7 compiled
      against python 3.3) but there were several errors.
      
      I believe this patch fixes these issues so that the commands now work (I
      tested lx-symbols, lx-dmesg, lx-lsmod).
      
      Main issues that needed to be resolved:
      
        * In python 2 iterators have a "next()" method. In python 3 it is
          __next__() instead (so let's just add both).
      
        * In older python versions there was an implicit conversion
          in object.__format__() (used when an object is in string.format())
          where it was converting the object to str first and then
          calling str's __format__(). This has now been removed so
          we must explicitly convert to str the objects for which
          we need to keep this behavior.
      
        * In dmesg.py: in python 3 log_buf is now a "memoryview" object
          which needs to be converted to a string in order to use string
          methods like "splitlines()". Luckily memoryview exists in
          python 2.7.6 as well, so we can convert log_buf to memoryview
          and use the same code in both python 2 and python 3.
      
      This version of the patch has now been tested with gdb 7.7 and both python
      3.4 and python 2.7.6 (I think asking for at least python 2.7.6 is a
      reasonable requirement instead of complicating the code with version
      checks etc).
      Signed-off-by: NPantelis Koukousoulas <pktoss@gmail.com>
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Wessel <jason.wessel@windriver.com>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Ben Widawsky <ben@bwidawsk.net>
      Cc: Borislav Petkov <bp@suse.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      276d97d9
    • J
      scripts/gdb: add lx-dmesg command · ae7dbaad
      Jan Kiszka 提交于
      This pokes into the log buffer of the debugged kernel, dumping it to the
      gdb console.  Helping in case the target should or can no longer execute
      dmesg itself.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Cc: Kay Sievers <kay@vrfy.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Jason Wessel <jason.wessel@windriver.com>
      Cc: Andi Kleen <andi@firstfloor.org>
      Cc: Ben Widawsky <ben@bwidawsk.net>
      Cc: Borislav Petkov <bp@suse.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ae7dbaad