)]}'
{
  "log": [
    {
      "commit": "aa16cd8d12352ccb5b921995ab3901110779f24a",
      "tree": "bc93b1e96dda7e1dc6f1aff498767c627f2de638",
      "parents": [
        "a3a71ca9a715776cf3eda605dafdb4a383782c4f",
        "59647b6ac3050dd964bc556fe6ef22f4db5b935c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 04 16:07:41 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 04 16:07:41 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futex: Handle futex value corruption gracefully\n  futex: Handle user space corruption gracefully\n  futex_lock_pi() key refcnt fix\n  softlockup: Add sched_clock_tick() to avoid kernel warning on kgdb resume\n"
    },
    {
      "commit": "d6ad3e286d2c075a60b9f11075a2c55aeeeca2ad",
      "tree": "24f374a6cb1ef36c2aec41b9de6b8f3b1b09780d",
      "parents": [
        "48d50674179981e41f432167b2441cec782d5484"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jan 27 16:25:22 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 01 08:22:32 2010 +0100"
      },
      "message": "softlockup: Add sched_clock_tick() to avoid kernel warning on kgdb resume\n\nWhen CONFIG_HAVE_UNSTABLE_SCHED_CLOCK is set, sched_clock() gets\nthe time from hardware such as the TSC on x86. In this\nconfiguration kgdb will report a softlock warning message on\nresuming or detaching from a debug session.\n\nSequence of events in the problem case:\n\n 1) \"cpu sched clock\" and \"hardware time\" are at 100 sec prior\n    to a call to kgdb_handle_exception()\n\n 2) Debugger waits in kgdb_handle_exception() for 80 sec and on\n    exit the following is called ...  touch_softlockup_watchdog() --\u003e\n    __raw_get_cpu_var(touch_timestamp) \u003d 0;\n\n 3) \"cpu sched clock\" \u003d 100s (it was not updated, because the\n    interrupt was disabled in kgdb) but the \"hardware time\" \u003d 180 sec\n\n 4) The first timer interrupt after resuming from\n    kgdb_handle_exception updates the watchdog from the \"cpu sched clock\"\n\nupdate_process_times() { ...  run_local_timers() --\u003e\nsoftlockup_tick() --\u003e check (touch_timestamp \u003d\u003d 0) (it is \"YES\"\nhere, we have set \"touch_timestamp \u003d 0\" at kgdb) --\u003e\n__touch_softlockup_watchdog() ***(A)--\u003e reset \"touch_timestamp\"\nto \"get_timestamp()\" (Here, the \"touch_timestamp\" will still be\nset to 100s.)  ...\n\n    scheduler_tick() ***(B)--\u003e sched_clock_tick() (update \"cpu sched\n    clock\" to \"hardware time\" \u003d 180s) ...  }\n\n 5) The Second timer interrupt handler appears to have a large\n    jump and trips the softlockup warning.\n\nupdate_process_times() { ...  run_local_timers() --\u003e\nsoftlockup_tick() --\u003e \"cpu sched clock\" - \"touch_timestamp\" \u003d\n180s-100s \u003e 60s --\u003e printk \"soft lockup error messages\" ...  }\n\nnote: ***(A) reset \"touch_timestamp\" to\n\"get_timestamp(this_cpu)\"\n\nWhy is \"touch_timestamp\" 100 sec, instead of 180 sec?\n\nWhen CONFIG_HAVE_UNSTABLE_SCHED_CLOCK is set, the call trace of\nget_timestamp() is:\n\nget_timestamp(this_cpu)\n --\u003ecpu_clock(this_cpu)\n --\u003esched_clock_cpu(this_cpu)\n --\u003e__update_sched_clock(sched_clock_data, now)\n\nThe __update_sched_clock() function uses the GTOD tick value to\ncreate a window to normalize the \"now\" values.  So if \"now\"\nvalue is too big for sched_clock_data, it will be ignored.\n\nThe fix is to invoke sched_clock_tick() to update \"cpu sched\nclock\" in order to recover from this state.  This is done by\nintroducing the function touch_softlockup_watchdog_sync(). This\nallows kgdb to request that the sched clock is updated when the\nwatchdog thread runs the first time after a resume from kgdb.\n\n[yong.zhang0@gmail.com: Use per cpu instead of an array]\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Dongdong Deng \u003cDongdong.Deng@windriver.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: peterz@infradead.org\nLKML-Reference: \u003c1264631124-4837-2-git-send-email-jason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc0967490c1c3824bc5b75718b6ca8a51d9f2617",
      "tree": "1224a5764dbcd779b842be6bd569d753da33de8c",
      "parents": [
        "b23ff0e9330e4b11e18af984d50573598e10e7f9"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 28 17:04:42 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 30 08:42:20 2010 +0100"
      },
      "message": "x86, hw_breakpoints, kgdb: Fix kgdb to use hw_breakpoint API\n\nIn the 2.6.33 kernel, the hw_breakpoint API is now used for the\nperformance event counters.  The hw_breakpoint_handler() now\nconsumes the hw breakpoints that were previously set by kgdb\narch specific code.  In order for kgdb to work in conjunction\nwith this core API change, kgdb must use some of the low level\nfunctions of the hw_breakpoint API to install, uninstall, and\ndeal with hw breakpoint reservations.\n\nThe kgdb core required a change to call kgdb_disable_hw_debug\nanytime a slave cpu enters kgdb_wait() in order to keep all the\nhw breakpoints in sync as well as to prevent hitting a hw\nbreakpoint while kgdb is active.\n\nDuring the architecture specific initialization of kgdb, it will\npre-allocate 4 disabled (struct perf event **) structures.  Kgdb\nwill use these to manage the capabilities for the 4 hw\nbreakpoint registers, per cpu.  Right now the hw_breakpoint API\ndoes not have a way to ask how many breakpoints are available,\non each CPU so it is possible that the install of a breakpoint\nmight fail when kgdb restores the system to the run state.  The\nintent of this patch is to first get the basic functionality of\nhw breakpoints working and leave it to the person debugging the\nkernel to understand what hw breakpoints are in use and what\nrestrictions have been imposed as a result.  Breakpoint\nconstraints will be dealt with in a future patch.\n\nWhile atomic, the x86 specific kgdb code will call\narch_uninstall_hw_breakpoint() and arch_install_hw_breakpoint()\nto manage the cpu specific hw breakpoints.\n\nThe net result of these changes allow kgdb to use the same pool\nof hw_breakpoints that are used by the perf event API, but\nneither knows about future reservations for the available hw\nbreakpoint slots.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: torvalds@linux-foundation.org\nLKML-Reference: \u003c1264719883-7285-2-git-send-email-jason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7f8b7ed6f825c729332b8190aca55c6bf95b158e",
      "tree": "29496e5c24361945a38a240263c04d9ba5b3bd2b",
      "parents": [
        "d625e9c0d706eb43afbf52634d5cecacae1d57cc"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:20 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:20 2009 -0600"
      },
      "message": "kgdb: Always process the whole breakpoint list on activate or deactivate\n\nThis patch fixes 2 edge cases in using kgdb in conjunction with gdb.\n\n1) kgdb_deactivate_sw_breakpoints() should process the entire array of\n   breakpoints.  The failure to do so results in breakpoints that you\n   cannot remove, because a break point can only be removed if its\n   state flag is set to BP_SET.\n\n   The easy way to duplicate this problem is to plant a break point in\n   a kernel module and then unload the kernel module.\n\n2) kgdb_activate_sw_breakpoints() should process the entire array of\n   breakpoints.  The failure to do so results in missed breakpoints\n   when a breakpoint cannot be activated.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "d625e9c0d706eb43afbf52634d5cecacae1d57cc",
      "tree": "080cb5ced15c3a0235fc270e9bae2fe8a904bd11",
      "parents": [
        "8097551d9ab9b9e3630694ad1bc6e12c597c515e"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Apr 27 13:20:21 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:19 2009 -0600"
      },
      "message": "kgdb: continue and warn on signal passing from gdb\n\nOn some architectures for the segv trap, gdb wants to pass the signal\nback on continue.  For kgdb this is not the default behavior, because\nit can cause the kernel to crash if you arbitrarily pass back a\nexception outside of kgdb.\n\nInstead of causing instability, pass a message back to gdb about the\nsupported kgdb signal passing and execute a standard kgdb continue\noperation.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "028e7b175970be8fca58bfd7d61cc375babe40b7",
      "tree": "c94d3acdc460836a9ef2d06f3e80f83d5f33f157",
      "parents": [
        "cf6f196d112a6f6757b1ca3cce0b576f7abee479"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:17 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:17 2009 -0600"
      },
      "message": "kgdb: allow for cpu switch when single stepping\n\nThe kgdb core should not assume that a single step operation of a\nkernel thread will complete on the same CPU.  The single step flag is\nset at the \"thread\" level and it is possible in a multi cpu system\nthat a kernel thread can get scheduled on another cpu the next time it\nis run.\n\nAs a further safety net in case a slave cpu is hung, the debug master\ncpu will try 100 times before giving up and assuming control of the\nslave cpus is no longer possible.  It is more useful to be able to get\nsome information out of kgdb instead of spinning forever.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "84667d4849b0e0a939a76f9f62d45fa3b4d59692",
      "tree": "5765d861dc39cf52863ac569211a43355ef3fc29",
      "parents": [
        "a5d09d68335bb8422d5e7050c9f03f99ba6cfebd"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:13 2009 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Dec 11 08:43:13 2009 -0600"
      },
      "message": "kgdb: Read buffer overflow\n\nRoel Kluin reported an error found with Parfait.  Where we want to\nensure that that kgdb_info[-1] never gets accessed.\n\nAlso check to ensure any negative tid does not exceed the size of the\nshadow CPU array, else report critical debug context because it is an\ninternal kgdb failure.\n\nReported-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "1477b6a7edd9ffa7bba4f9779ce9a76ce92761ed",
      "tree": "550163b002a661377ffbd21b8c16fc691a906752",
      "parents": [
        "ce0e7b28fb75cb003cfc8d0238613aaf1c55e797"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Wed Nov 04 16:14:16 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 04 11:43:42 2009 +0100"
      },
      "message": "sched: Remove unused __schedule() declaration\n\n__schedule() had been removed.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4AF129C8.3030008@ct.jp.nec.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "364b5b7b1d793a7f98be55b6b154716dcae78dfc",
      "tree": "2c8d2571bde15bf7c376bd222b3cc916bd52c13d",
      "parents": [
        "45d447406a19cbfd42720f066f156f4eb9d68801"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed May 13 21:56:59 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri May 15 07:56:24 2009 -0500"
      },
      "message": "sysrq, intel_fb: fix sysrq g collision\n\nCommit 79e539453b34e35f39299a899d263b0a1f1670bd introduced a\nregression where you cannot use sysrq \u0027g\u0027 to enter kgdb.  The solution\nis to move the intel fb sysrq over to V for video instead of G for\ngraphics.  The SMP VOYAGER code to register for the sysrq-v is not\nanywhere to be found in the mainline kernel, so the comments in the\ncode were cleaned up as well.\n\nThis patch also cleans up the sysrq definitions for kgdb to make it\ngeneric for the kernel debugger, such that the sysrq \u0027g\u0027 can be used\nin the future to enter a gdbstub or another kernel debugger.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc1e0f4f7ad95a9eb81e1904cb16068af226180d",
      "tree": "e236d87c949e9697514a6362f86391f37c6341bd",
      "parents": [
        "e85ceae9102f6e3c1d707e7ac88fa48d252e9cfa"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Oct 06 13:50:59 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Oct 06 13:50:59 2008 -0500"
      },
      "message": "kgdb: call touch_softlockup_watchdog on resume\n\nThe softlockup watchdog needs to be touched when resuming the from the\nkgdb stopped state to avoid the printk that a CPU is stuck if the\ndebugger was active for longer than the softlockup threshold.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "d7161a65341556bacb5e6654e133803f46f51063",
      "tree": "b2933dc2ce1435956c193c37fd53a3d5530fe9d7",
      "parents": [
        "18d6522b86d21a04c8ac1ea79747e2e434a956d9"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Sep 26 10:36:41 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Sep 26 10:36:41 2008 -0500"
      },
      "message": "kgdb, x86, arm, mips, powerpc: ignore user space single stepping\n\nOn the x86 arch, user space single step exceptions should be ignored\nif they occur in the kernel space, such as ptrace stepping through a\nsystem call.\n\nFirst check if it is kgdb that is executing a single step, then ensure\nit is not an accidental traversal into the user space, while in kgdb,\nany other time the TIF_SINGLESTEP is set, kgdb should ignore the\nexception.\n\nOn x86, arm, mips and powerpc, the kgdb_contthread usage was\ninconsistent with the way single stepping is implemented in the kgdb\ncore.  The arch specific stub should always set the\nkgdb_cpu_doing_single_step correctly if it is single stepping.  This\nallows kgdb to correctly process an instruction steps if ptrace\nhappens to be requesting an instruction step over a system call.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "18d6522b86d21a04c8ac1ea79747e2e434a956d9",
      "tree": "4df66d758f79eb7c71352e3de57d63df7156bac3",
      "parents": [
        "6ef190cc92e33565accff6a320f0e7d90480bfe7"
      ],
      "author": {
        "name": "Atsuo Igarashi",
        "email": "atsuo_igarashi@tripeaks.co.jp",
        "time": "Fri Sep 26 10:36:41 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Sep 26 10:36:41 2008 -0500"
      },
      "message": "kgdb: could not write to the last of valid memory with kgdb\n\nOn the ARM architecture, kgdb will crash the kernel if the last byte\nof valid memory is written due to a flush_icache_range flushing\nbeyond the memory boundary.\n\nSigned-off-by: Atsuo Igarashi \u003catsuo_igarashi@tripeaks.co.jp\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "25fc999913839a45cbb48ac7872e67f7521e7ed9",
      "tree": "2785851665dccc753e9e6cf0de650be72e56d7de",
      "parents": [
        "a9b60bf4c29e07a5a2f26a6f74937972fee9b58b"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Aug 01 08:39:35 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Aug 01 08:39:35 2008 -0500"
      },
      "message": "kgdb: fix gdb serial thread queries\n\nThe command \"info threads\" did not work correctly with kgdb.  It would\nresult in a silent kernel hang if used.\n\nThis patach addresses several problems.\n - Fix use of deprecated NR_CPUS\n - Fix kgdb to not walk linearly through the pid space\n - Correctly implement shadow pids\n - Change the threads per query to a #define\n - Fix kgdb_hex2long to work with negated values\n\nThe threads 0 and -1 are reserved to represent the current task.  That\nmeans that CPU 0 will start with a shadow thread id of -2, and CPU 1\nwill have a shadow thread id of -3, etc...\n\nFrom the debugger you can switch to a shadow thread to see what one of\nthe other cpus was doing, however it is not possible to execute run\ncontrol operations on any other cpu execept the cpu executing the\nkgdb_handle_exception().\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "a9b60bf4c29e07a5a2f26a6f74937972fee9b58b",
      "tree": "6862f0442a9ab4e2da20fb93e3cf3be2c36b76b2",
      "parents": [
        "5f5ddfb3605d2a4f555a7ff034859e623eafcd27"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Aug 01 08:39:34 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Aug 01 08:39:34 2008 -0500"
      },
      "message": "kgdb: fix kgdb_validate_break_address to perform a mem write\n\nA regression to the kgdb core was found in the case of using the\nCONFIG_DEBUG_RODATA kernel option.  When this option is on, a breakpoint\ncannot be written into any readonly memory page.  When an external\ndebugger requests a breakpoint to get set, the\nkgdb_validate_break_address() was only checking to see if the address\nto place the breakpoint was readable and lacked a write check.\n\nThis patch changes the validate routine to try reading (via the\nbreakpoint set request) and also to try immediately writing the break\npoint.  If either fails, an error is correctly returned and the\ndebugger behaves correctly.  Then an end user can make the\ndescision to use hardware breakpoints.\n\nAlso update the documentation to reflect that using\nCONFIG_DEBUG_RODATA will inhibit the use of software breakpoints.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "aabdc3b8c3b3d081f1532454e344208338478e29",
      "tree": "5ff3d5c873fa12ec3797690598e8daa2c3225071",
      "parents": [
        "a606b5e24b7e2937604f4c85023d8d9c5ab0a28b"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jun 24 10:52:55 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Jun 24 10:52:55 2008 -0500"
      },
      "message": "kgdb: sparse fix\n\n- Fix warning reported by sparse\nkernel/kgdb.c:1502:6: warning: symbol \u0027kgdb_console_write\u0027 was not declared.\n\tShould it be static?\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "827e609b4581282b98bdf7666f6e93ff1bd1a63e",
      "tree": "52b998e4204e77eb7a0d662f7ff04460d074164c",
      "parents": [
        "0a2ce2ffc358da96792d514c1024b72c52be9cc1"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed May 28 12:49:56 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed May 28 12:49:56 2008 -0500"
      },
      "message": "kgdb: use common ascii helpers and put_unaligned_be32 helper\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "3fc957721d18c93662f7d4dab455b80f53dd2641",
      "tree": "9bdbabf3cb3678edcd0e0e4beb5deaa5c1b17bcd",
      "parents": [
        "122a881c776b7c155bf3f379928cc27aab435288"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed May 14 16:05:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 14 19:11:14 2008 -0700"
      },
      "message": "lib: create common ascii hex array\n\nAdd a common hex array in hexdump.c so everyone can use it.\n\nAdd a common hi/lo helper to avoid the shifting masking that is\ndone to get the upper and lower nibbles of a byte value.\n\nPull the pack_hex_byte helper from kgdb as it is opencoded many\nplaces in the tree that will be consolidated.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "688b744d8bc84dc5cc646e97509113dc5e8818ed",
      "tree": "7eb6292506e354a3ba76c202fcd1f8b08eccaf70",
      "parents": [
        "7cfcd985d36031459cc64e3843ea36a4d801097d"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Thu Apr 24 16:57:23 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon May 05 07:13:21 2008 -0500"
      },
      "message": "kgdb: fix signedness mixmatches, add statics, add declaration to header\n\nNoticed by sparse:\narch/x86/kernel/kgdb.c:556:15: warning: symbol \u0027kgdb_arch_pc\u0027 was not declared. Should it be static?\nkernel/kgdb.c:149:8: warning: symbol \u0027kgdb_do_roundup\u0027 was not declared. Should it be static?\nkernel/kgdb.c:193:22: warning: symbol \u0027kgdb_arch_pc\u0027 was not declared. Should it be static?\nkernel/kgdb.c:712:5: warning: symbol \u0027remove_all_break\u0027 was not declared. Should it be static?\n\nRelated to kgdb_hex2long:\narch/x86/kernel/kgdb.c:371:28: warning: incorrect type in argument 2 (different signedness)\narch/x86/kernel/kgdb.c:371:28:    expected long *long_val\narch/x86/kernel/kgdb.c:371:28:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:469:27: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:469:27:    expected long *long_val\nkernel/kgdb.c:469:27:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:470:27: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:470:27:    expected long *long_val\nkernel/kgdb.c:470:27:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:894:27: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:894:27:    expected long *long_val\nkernel/kgdb.c:894:27:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:895:27: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:895:27:    expected long *long_val\nkernel/kgdb.c:895:27:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:1127:28: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:1127:28:    expected long *long_val\nkernel/kgdb.c:1127:28:    got unsigned long *\u003cnoident\u003e\nkernel/kgdb.c:1132:25: warning: incorrect type in argument 2 (different signedness)\nkernel/kgdb.c:1132:25:    expected long *long_val\nkernel/kgdb.c:1132:25:    got unsigned long *\u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "1a9a3e76dde191f82f7a8a66059dcbb4a9f63ff3",
      "tree": "d1bfaca84bf03dc79caf70747f7c289558e3c7e9",
      "parents": [
        "56fb70932964927597ce30bbd820471633c72adc"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Apr 01 16:55:28 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:43 2008 +0200"
      },
      "message": "kgdb: always use icache flush for sw breakpoints\n\nOn the ppc 4xx architecture the instruction cache must be flushed as\nwell as the data cache.  This patch just makes it generic for all\narchitectures where CACHE_FLUSH_IS_SAFE is set to 1.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "56fb70932964927597ce30bbd820471633c72adc",
      "tree": "72654913a07cbc83f174234d4fa0f91b79a2164c",
      "parents": [
        "225a4424ade24e913c081d5a4c4bd71a0fe2e0ac"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue Apr 01 16:55:27 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:43 2008 +0200"
      },
      "message": "kgdb: fix SMP NMI kgdb_handle_exception exit race\n\nFix the problem of protecting the kgdb handle_exception exit\nwhich had an NMI race condition, while trying to restore\nnormal system operation.\n\nThere was a small window after the master processor sets cpu_in_debug\nto zero but before it has set kgdb_active to zero where a\nnon-master processor in an SMP system could receive an NMI and\nre-enter the kgdb_wait() loop.\n\nAs long as the master processor sets the cpu_in_debug before sending\nthe cpu roundup the cpu_in_debug variable can also be used to guard\nagainst the race condition.\n\nThe kgdb_wait() function no longer needs to check\nkgdb_active because it is done in the arch specific code\nand handled along with the nmi traps at the low level.\nThis also allows kgdb_wait() to exit correctly if it was\nentered for some unknown reason due to a spurious NMI that\ncould not be handled by the arch specific code.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "737a460f21febe551ff1d2299b63bae9b154078f",
      "tree": "7a2d9440222c22446e283f6fbc959b4a44270989",
      "parents": [
        "84b5ae15216aa3ea0314f395536ef9829af21e14"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Mar 07 16:34:16 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:40 2008 +0200"
      },
      "message": "kgdb: fix several kgdb regressions\n\nkgdb core fixes:\n- Check to see that mm-\u003emmap_cache is not null before calling\n  flush_cache_range(), else on arch\u003dARM it will cause a fatal\n  fault.\n\n- Breakpoints should only be restored if they are in the BP_ACTIVE\n  state.\n\n- Fix a typo in comments to \"kgdb_register_io_module\"\n\nx86 kgdb fixes:\n- Fix the x86 arch handler such that on a kill or detach that the\n  appropriate cleanup on the single stepping flags gets run.\n\n- Add in the DIE_NMIWATCHDOG call for x86_64\n\n- Touch the nmi watchdog before returning the system to normal\n  operation after performing any kind of kgdb operation, else\n  the possibility exists to trigger the watchdog.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b4b8ac524d9b6ed7229017145afa1d7afbea4a48",
      "tree": "c1b8ef7b22ebc956c0effd0ad6b5a37290f86bda",
      "parents": [
        "64e9ee3095b61d0300ea548216a57d2536611309"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Feb 20 13:33:38 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:39 2008 +0200"
      },
      "message": "kgdb: fix optional arch functions and probe_kernel_*\n\nFix two regressions dealing with the kgdb core.\n\n1) kgdb_skipexception and kgdb_post_primary_code are optional\nfunctions that are only required on archs that need special exception\nfixups.\n\n2) The kernel address space scope must be set on any probe_kernel_*\nfunction or archs such as ARCH\u003darm will not allow access to the kernel\nmemory space.  As an example, it is required to allow the full kernel\naddress space is when you the kernel debugger to inspect a system\ncall.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "64e9ee3095b61d0300ea548216a57d2536611309",
      "tree": "21cf21caafa18b5661ceeaeb4d29e2ed784d0345",
      "parents": [
        "67baf94cd260dc37504dbd15ba3faa2d8cf8a444"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Feb 15 14:55:56 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:39 2008 +0200"
      },
      "message": "kgdb: add x86 HW breakpoints\n\nAdd HW breakpoints into the arch specific portion of x86 kgdb.  In the\ncurrent x86 kernel.org kernels HW breakpoints are changed out in lazy\nfashion because there is no infrastructure around changing them when\nchanging to a kernel task or entering the kernel mode via a system\ncall.  This lazy approach means that if a user process uses HW\nbreakpoints the kgdb will loose out.  This is an acceptable trade off\nbecause the developer debugging the kernel is assumed to know what is\ngoing on system wide and would be aware of this trade off.\n\nThere is a minor bug fix to the kgdb core so as to correctly call the\nhw breakpoint functions with a valid value from the enum.\n\nThere is also a minor change to the x86_64 startup code when using\nearly HW breakpoints.  When the debugger is connected, the cpu startup\ncode must not zero out the HW breakpoint registers or you cannot hit\nthe breakpoints you are interested in, in the first place.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "67baf94cd260dc37504dbd15ba3faa2d8cf8a444",
      "tree": "0a162e5ddb4166862bb2ba002efa18a0bcb83a57",
      "parents": [
        "7c3078b637882303b1dcf6a16229d0e35f6b60a5"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Feb 15 14:55:55 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:39 2008 +0200"
      },
      "message": "kgdb: print breakpoint removed on exception\n\nIf kgdb does remove a breakpoint that had a problem on the recursion\ncheck, it should also print the address of the breakpoint.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7c3078b637882303b1dcf6a16229d0e35f6b60a5",
      "tree": "4b1456f81627056eff8750e42481c0b00ac84cf0",
      "parents": [
        "d359752407f8916c29ad53a5c30ac73e338f2797"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Feb 15 14:55:54 2008 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:38 2008 +0200"
      },
      "message": "kgdb: clocksource watchdog\n\nIn order to not trip the clocksource watchdog, kgdb must touch the\nclocksource watchdog on the return to normal system run state.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc7d552705215ac50a0617fcf51bb9c736255b8e",
      "tree": "3ca376bdf4e6996edd9e2dabd569a791f050dae8",
      "parents": [
        "c33fa9f5609e918824446ef9a75319d4a802f1f4"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 20:05:37 2008 +0200"
      },
      "message": "kgdb: core\n\nkgdb core code. Handles the protocol and the arch details.\n\n[ mingo@elte.hu: heavily modified, simplified and cleaned up. ]\n[ xemul@openvz.org: use find_task_by_pid_ns ]\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@web.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    }
  ]
}
