My place at the game. #aik #gnaget #kamratgängetdrickabärs #kgdb #kgdbsthlm (på/i Friends Arena)


#dc comics#dc#batman#bruce wayne#dick grayson#batfam#tim drake#batfamily#dc fanart



seen from United Kingdom
seen from United States

seen from T1
seen from China
seen from United States

seen from United Kingdom

seen from T1
seen from United States

seen from Germany
seen from United States
seen from Germany
seen from Germany
seen from Italy

seen from Germany
seen from United States

seen from T1
seen from Maldives
seen from Russia
seen from Germany

seen from Australia
My place at the game. #aik #gnaget #kamratgängetdrickabärs #kgdb #kgdbsthlm (på/i Friends Arena)
More kgdb and virtualbox
Following [Fotis post](http://fotis.loukos.me/blog/wp-trackback.php?p=25), some useful tips to use kdgb with a Linux kernel running inside Virtualbox **Compiling and launching the kernel** - if you use gdb >=4.5 to compile, adding ``#pragma GCC optimize(0)`` in your .c file (for example, after all the ``#include`` in ``arch/x86/kernel/irq.c``) is really helpful. Since it does not seem possible to fully compile the kernel without any optimization, you can avoid optimization of a couple of files - in the ``make menuconfig``, don't select the kdb options, only the kgdb one - append ``vga=794`` to the kernel options for a bigger screen **Guest configuration** To make the SysRq key work in Virtualbox console, let's replace it with the F12 key: setkeycodes 58 99 echo 1 > /proc/sys/kernel/sysrq echo ttyS0,115200 > /sys/module/kgdboc/parameters/kgdboc **GDB tips** Getting a backtrace of every threads (for easy grepping) set pagination off set logging on gdb.1.txt thread apply all bt 30 If the system is locked, hitting Alt+SysRq+G will break within ``kgdb_breakpoint`` and not within the lock. Steps to get a proper trace if kgdb interrupted our lock: (will work for sure if irq.c has been compiled without optimization, see above) - system is deadlocked - run Alt+SysRq+9, Alt+SysRq+D, Alt+SysRq+L to know some information about this lock... - Alt+SysRq+G to make gdb break (within ``kgdb_breakpoint``) The actual code (trapped within the lock) has been interrupted. Let's get information about the previous context gdb> bt 30 #0 kgdb_breakpoint () at kernel/debug/debug_core.c:960 ... #15 0xffffffff81004567 in do_IRQ (regs=0xffff88041fc03e58) at arch/x86/kernel/irq.c:190 ... gdb> frame 15 Here the structure regs hold the state of the registers before the interruption. gdb> p/a *regs $11 = { ... ip = 0xffffffff8114f1c3 , ... gdb> hbr 0xffffffff8114f1c3 gdb> cont Continuing. Breakpoint gdb> bt 30