)]}'
{
  "log": [
    {
      "commit": "3ecb01df3261d3b1f02ccfcf8384e2a255d2a1d0",
      "tree": "1fe91114d8829a511db48d757c787cfede3b929c",
      "parents": [
        "b6472776816af1ed52848c93d26e3edb3b17adab"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Tue Oct 26 14:22:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 16:52:13 2010 -0700"
      },
      "message": "use clear_page()/copy_page() in favor of memset()/memcpy() on whole pages\n\nAfter all that\u0027s what they are intended for.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f65a03f6ab6f53a6f2847dbac232dcb38b3b3642",
      "tree": "b6412bfc2ec6dd1cc061e11e60cad1949ca6cf8d",
      "parents": [
        "832ccf6f44969b616b2aeea25276684cf104fa3b"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Tue Aug 10 18:03:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 11 08:59:22 2010 -0700"
      },
      "message": "kexec: return -EFAULT on copy_to_user() failures\n\ncopy_to/from_user() returns the number of bytes remaining to be copied.\nIt never returns a negative value.  The correct return code is -EFAULT and\nnot -EIO.\n\nAll the callers check for non-zero returns so that\u0027s Ok, but the return\ncode is passed to the user so we should fix this.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nCc: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Simon Kagstrom \u003csimon.kagstrom@netinsight.net\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e05bd3367bd3d88715b53766f95bb3a8ec7ab59e",
      "tree": "db9f13cd687c39bf873ff5dbed28bbd142fc6940",
      "parents": [
        "482ce512c543f3b30ab881702fa997e71252e604"
      ],
      "author": {
        "name": "Pavan Naregundi",
        "email": "pavan@linux.vnet.ibm.com",
        "time": "Tue Jun 29 15:05:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 29 15:29:31 2010 -0700"
      },
      "message": "kexec: fix Oops in crash_shrink_memory()\n\nWhen crashkernel is not enabled, \"echo 0 \u003e /sys/kernel/kexec_crash_size\"\nOOPSes the kernel in crash_shrink_memory.  This happens when\ncrash_shrink_memory tries to release the \u0027crashk_res\u0027 resource which are\nnot reserved.  Also value of \"/sys/kernel/kexec_crash_size\" shows as 1,\nwhich should be 0.\n\nThis patch fixes the OOPS in crash_shrink_memory and shows\n\"/sys/kernel/kexec_crash_size\" as 0 when crash kernel memory is not\nreserved.\n\nSigned-off-by: Pavan Naregundi \u003cpavan@linux.vnet.ibm.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "475f9aa6aa538befcbd0fa95bdebada600f247cd",
      "tree": "204167585e965b67a3b95b972744a96069f0169a",
      "parents": [
        "d586ebbb8814e039545d38f69029533f3f17748d"
      ],
      "author": {
        "name": "Vitaly Mayatskikh",
        "email": "v.mayatskih@gmail.com",
        "time": "Tue May 11 14:06:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 11 17:33:42 2010 -0700"
      },
      "message": "kexec: fix OOPS in crash_kernel_shrink\n\nTwo \"echo 0 \u003e /sys/kernel/kexec_crash_size\" OOPSes kernel.  Also content\nof this file is invalid after first shrink to zero: it shows 1 instead of\n0.\n\nThis scenario is unlikely to happen often (root privs, valid crashkernel\u003d\nin cmdline, dump-capture kernel not loaded), I hit it only by chance.\n\nThis patch fixes it.\n\nSigned-off-by: Vitaly Mayatskikh \u003cv.mayatskih@gmail.com\u003e\nCc: Cong Wang \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43cf38eb5cea91245502df3fcee4dbfc1c74dd1c",
      "tree": "a58ea87af1f07b8aed4941db074f44103f321f6e",
      "parents": [
        "ab386128f20c44c458a90039ab1bdc265ac474c9"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Feb 02 14:38:57 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 17 11:17:38 2010 +0900"
      },
      "message": "percpu: add __percpu sparse annotations to core kernel subsystems\n\nAdd __percpu sparse annotations to core subsystems.\n\nThese annotations are to make sparse consider percpu variables to be\nin a different address space and warn if accessed without going\nthrough percpu accessors.  This patch doesn\u0027t affect normal builds.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: linux-mm@kvack.org\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Eric Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "b8be634e01b400fa2528848ad0cd6a5580a15bc4",
      "tree": "f36da264249540727a60e13a54d1d44c8821b48d",
      "parents": [
        "298a4c3a57fed38df365a6807728d1930a72c728",
        "f5e2bae0aad03164ffc7ce9dfeee6608e2c87dba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:31:34 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:31:34 2010 -0800"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/mtd-2.6.33\n\n* git://git.infradead.org/~dwmw2/mtd-2.6.33:\n  mtd: tests: fix read, speed and stress tests on NOR flash\n  mtd: Really add ARM pismo support\n  kmsg_dump: Dump on crash_kexec as well\n"
    },
    {
      "commit": "0f4bd46ec252887f44f1f065b41867cac8f70dfb",
      "tree": "daa176e9f9e1f5e9ba8c5476b5333142f31aa062",
      "parents": [
        "60d9aa758c00f20ade0cb1951f6a934f628dd2d7"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Dec 22 03:15:43 2009 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Dec 31 19:45:04 2009 +0000"
      },
      "message": "kmsg_dump: Dump on crash_kexec as well\n\ncrash_kexec gets called before kmsg_dump(KMSG_DUMP_OOPS) if\npanic_on_oops is set, so the kernel log buffer is not stored\nfor this case.\n\nThis patch adds a KMSG_DUMP_KEXEC dump type which gets called\nwhen crash_kexec() is invoked. To avoid getting double dumps,\nthe old KMSG_DUMP_PANIC is moved below crash_kexec(). The\nmtdoops driver is modified to handle KMSG_DUMP_KEXEC in the\nsame way as a panic.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Simon Kagstrom \u003csimon.kagstrom@netinsight.net\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "5a865c0606eb44d5d12cabb429751c83712183de",
      "tree": "726d6eaf3b20f30900304bd0cbb6339b423a071f",
      "parents": [
        "331d9d5958277de27e6ce42247e1cbec54fd1c7e",
        "46e75f66677f5094bb51e91f9473128c4e907c7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild: (29 commits)\n  net: fix for utsrelease.h moving to generated\n  gen_init_cpio: fixed fwrite warning\n  kbuild: fix make clean after mismerge\n  kbuild: generate modules.builtin\n  genksyms: properly consider  EXPORT_UNUSED_SYMBOL{,_GPL}()\n  score: add asm/asm-offsets.h wrapper\n  unifdef: update to upstream revision 1.190\n  kbuild: specify absolute paths for cscope\n  kbuild: create include/generated in silentoldconfig\n  scripts/package: deb-pkg: use fakeroot if available\n  scripts/package: add KBUILD_PKG_ROOTCMD variable\n  scripts/package: tar-pkg: use tar --owner\u003droot\n  Kbuild: clean up marker\n  net: add net_tstamp.h to headers_install\n  kbuild: move utsrelease.h to include/generated\n  kbuild: move autoconf.h to include/generated\n  drop explicit include of autoconf.h\n  kbuild: move compile.h to include/generated\n  kbuild: drop include/asm\n  kbuild: do not check for include/asm-$ARCH\n  ...\n\nFixed non-conflicting clean merge of modpost.c as per comments from\nStephen Rothwell (modpost.c had grown an include of linux/autoconf.h\nthat needed to be changed to generated/autoconf.h)\n"
    },
    {
      "commit": "06a7f711246b081afc21fff859f1003f1f2a0fbc",
      "tree": "aece49693ad751923ce71387201d3c3e6214e335",
      "parents": [
        "1f2c19f8c959c1d0ccd3e33b1f480593b66d95dd"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "kexec: premit reduction of the reserved memory size\n\nImplement shrinking the reserved memory for crash kernel, if it is more\nthan enough.\n\nFor example, if you have already reserved 128M, now you just want 100M,\nyou can do:\n\n# echo $((100*1024*1024)) \u003e /sys/kernel/kexec_crash_size\n\nNote, you can only do this before loading the crash kernel.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "273b281fa22c293963ee3e6eec418f5dda2dbc83",
      "tree": "1503005f5b106c0293a5eba1fb9ff90a9c91e4c9",
      "parents": [
        "264a26838056fc2d759f58bec2e720e01fcb1bdb"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Oct 18 00:52:28 2009 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat Dec 12 13:08:15 2009 +0100"
      },
      "message": "kbuild: move utsrelease.h to include/generated\n\nFix up all users of utsrelease.h\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "11c7da4b0ca76a57f51c996c883c480e203cf5a9",
      "tree": "25c816507896a6ec7b2a84c72e181080b6cc744d",
      "parents": [
        "933b787b57ca8bdc0fc8fb2cbf67b5e6d21beb84"
      ],
      "author": {
        "name": "Hidetoshi Seto",
        "email": "seto.hidetoshi@jp.fujitsu.com",
        "time": "Wed Jul 29 15:02:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 29 19:10:34 2009 -0700"
      },
      "message": "kexec: fix omitting offset in extended crashkernel syntax\n\nSetting\n \"crashkernel\u003d512M-2G:64M,2G-:128M\"\ndoes not work but it turns to work if it has a trailing-whitespace,\nlike\n \"crashkernel\u003d512M-2G:64M,2G-:128M \".\n\nIt was because of a bug in the parser, running over the cmdline.\n\nThis patch adds a check of the termination.\n\nReported-by: Jin Dongming \u003cjin.dongming@np.css.fujitsu.com\u003e\nSigned-off-by: Hidetoshi Seto \u003cseto.hidetoshi@jp.fujitsu.com\u003e\nTested-by: Jin Dongming \u003cjin.dongming@np.css.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d161630297a20802d01c55847bfcba85d2118a9f",
      "tree": "51685c169319400b6da4dc6c56b69e731c45f297",
      "parents": [
        "e39a71ef80877f4e30d808af9acceec80f4d2f7c"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sun May 24 22:05:42 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM core: rename suspend and resume functions\n\nThis patch (as1241) renames a bunch of functions in the PM core.\nRather than go through a boring list of name changes, suffice it to\nsay that in the end we have a bunch of pairs of functions:\n\n\tdevice_resume_noirq\tdpm_resume_noirq\n\tdevice_resume\t\tdpm_resume\n\tdevice_complete\t\tdpm_complete\n\tdevice_suspend_noirq\tdpm_suspend_noirq\n\tdevice_suspend\t\tdpm_suspend\n\tdevice_prepare\t\tdpm_prepare\n\nin which device_X does the X operation on a single device and dpm_X\ninvokes device_X for all devices in the dpm_list.\n\nIn addition, the old dpm_power_up and device_resume_noirq have been\ncombined into a single function (dpm_resume_noirq).\n\nLastly, dpm_suspend_start and dpm_resume_end are the renamed versions\nof the former top-level device_suspend and device_resume routines.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "e39a71ef80877f4e30d808af9acceec80f4d2f7c",
      "tree": "e9d4ff1618328cf3a3fafee04621b9776ca169de",
      "parents": [
        "1380a37e3da5d9e14ea5c2a4c6ab2b307a2798ea"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Fri May 15 00:53:26 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 12 21:32:31 2009 +0200"
      },
      "message": "PM: Rename device_power_down/up()\n\nRename the functions performing \"_noirq\" dev_pm_ops\noperations from device_power_down() and device_power_up()\nto device_suspend_noirq() and device_resume_noirq().\n\nThe new function names are chosen to show that the functions\nare responsible for calling the _noirq() versions to finalize\nthe suspend/resume operation. The current function names do\nnot perform power down/up anymore so the names may be misleading.\n\nGlobal function renames:\n- device_power_down() -\u003e device_suspend_noirq()\n- device_power_up() -\u003e device_resume_noirq()\n\nStatic function renames:\n- suspend_device_noirq() -\u003e __device_suspend_noirq()\n- resume_device_noirq() -\u003e __device_resume_noirq()\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Len Brown \u003clenb@kernel.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "32bdfac5462d777f35b00838893c4f87baf23efe",
      "tree": "92e4ef3af7b68007e8004eaca978865a29e543b0",
      "parents": [
        "59a3759d0fe8d969888c741bb33f4946e4d3750d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 21:15:07 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun May 24 21:15:07 2009 +0200"
      },
      "message": "PM: Do not hold dpm_list_mtx while disabling/enabling nonboot CPUs\n\nWe shouldn\u0027t hold dpm_list_mtx while executing\n[disable|enable]_nonboot_cpus(), because theoretically this may lead\nto a deadlock as shown by the following example (provided by Johannes\nBerg):\n\nCPU 3       CPU 2                     CPU 1\n                                      suspend/hibernate\n            something:\n            rtnl_lock()               device_pm_lock()\n                                       -\u003e mutex_lock(\u0026dpm_list_mtx)\n\n            mutex_lock(\u0026dpm_list_mtx)\n\nlinkwatch_work\n -\u003e rtnl_lock()\n                                      disable_nonboot_cpus()\n                                       -\u003e flush CPU 3 workqueue\n\nFortunately, device drivers are supposed to stop any activities that\nmight lead to the registration of new device objects way before\ndisable_nonboot_cpus() is called, so it shouldn\u0027t be necessary to\nhold dpm_list_mtx over the entire late part of device suspend and\nearly part of device resume.\n\nThus, during the late suspend and the early resume of devices acquire\ndpm_list_mtx only when dpm_list is going to be traversed and release\nit right after that.\n\nThis patch is reported to fix the regressions tracked as\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d13245.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nReported-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nTested-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\n"
    },
    {
      "commit": "edb79a213223488735fae1d408f4c136e9ed25d6",
      "tree": "b89191aec3c415256ee2d5a646a4f2afb1125c89",
      "parents": [
        "04d491ab2a53008a1aa98ac09561768c7f3adda3"
      ],
      "author": {
        "name": "Dmitri Vorobiev",
        "email": "dmitri.vorobiev@movial.com",
        "time": "Thu Apr 02 16:58:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:05:04 2009 -0700"
      },
      "message": "kexec: vmcoreinfo_data[] can become static\n\nThe vmcoreinfo_data[] array is not used outside of kernel/kexec.c, and\ncan therefore become static. This patch adds the relevant keyword to the\ndefinition of the array.\n\nNoticed by sparse.\n\nSigned-off-by: Dmitri Vorobiev \u003cdmitri.vorobiev@movial.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04d491ab2a53008a1aa98ac09561768c7f3adda3",
      "tree": "ab8fff6fb8674c8061b733ce64d6d6fba9d68ff3",
      "parents": [
        "23c36c1aec895fd52d7dd8cd3ce4bbce43c969fd"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Thu Apr 02 16:58:57 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 02 19:05:04 2009 -0700"
      },
      "message": "kexec: add dmesg log symbols to /proc/vmcoreinfo lists\n\nIt would be nice to be able to extract the dmesg log from a vmcore file\nwithout needing to keep the debug symbols for the running kernel handy all\nthe time.  We have a facility to do this in /proc/vmcore.  This patch adds\nthe log_buf and log_end symbols to the vmcoreinfo area so that tools (like\nmakedumpfile) can easily extract the dmesg logs from a vmcore image.\n\n[akpm@linux-foundation.org: several fixes and cleanups]\n[akpm@linux-foundation.org: fix unused log_buf_kexec_setup()]\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "749b0afc3a9d90dda3319fd1464a3b32fc225361",
      "tree": "811a0931109bf3ee1204d43c37c9f3d1d7a4b327",
      "parents": [
        "4aecd6718939eb3c4145b248369b65f7483a8a02"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:35 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:55 2009 +0200"
      },
      "message": "kexec: Change kexec jump code ordering\n\nChange the ordering of the kexec jump code so that the nonboot CPUs\nare disabled after calling device drivers\u0027 \"late suspend\" methods.\n\nThis change reflects the recent modifications of the power management\ncode that is also used by kexec jump.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ed8d2b3a81bdbb0418301628ccdb008ac9f40b7",
      "tree": "54ab0cd7aa7db73151533b463bd490b62a29c462",
      "parents": [
        "0a0c5168df270a50e3518e4f12bddb31f8f5f38f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:06 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Rework handling of interrupts during suspend-resume\n\nUse the functions introduced in by the previous patch,\nsuspend_device_irqs(), resume_device_irqs() and check_wakeup_irqs(),\nto rework the handling of interrupts during suspend (hibernation) and\nresume.  Namely, interrupts will only be disabled on the CPU right\nbefore suspending sysdevs, while device drivers will be prevented\nfrom receiving interrupts, with the help of the new helper function,\nbefore their \"late\" suspend callbacks run (and analogously during\nresume).\n\nIn addition, since the device interrups are now disabled before the\nCPU has turned all interrupts off and the CPU will ACK the interrupts\nsetting the IRQ_PENDING bit for them, check in sysdev_suspend() if\nany wake-up interrupts are pending and abort suspend if that\u0027s the\ncase.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fc6fc7f1b1095b92d4834e69b385b91e412a7ce5",
      "tree": "2ad451d5dac4d460830536944cef1de93be36b2a",
      "parents": [
        "ef1f87aa7ba6224bef1b750b3272ba281d8f43ed",
        "770824bdc421ff58a64db608294323571c949f4c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 20:05:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 22 20:05:19 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/apic\n\nConflicts:\n\tarch/x86/mach-default/setup.c\n\nSemantic conflict resolution:\n\tarch/x86/kernel/setup.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "770824bdc421ff58a64db608294323571c949f4c",
      "tree": "2fbeef604fe982bf322249a53a95dd2ff851d5f4",
      "parents": [
        "936577c61d0c10b8929608a92c98d839b22053bc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Feb 22 18:38:50 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 22 10:33:44 2009 -0800"
      },
      "message": "PM: Split up sysdev_[suspend|resume] from device_power_[down|up]\n\nMove the sysdev_suspend/resume from the callee to the callers, with\nno real change in semantics, so that we can rework the disabling of\ninterrupts during suspend/hibernation.\n\nThis is based on an earlier patch from Linus.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6cd61c0baa8bce32271226198b46c67a7a05d108",
      "tree": "f4584e1f105c0252f3f5f5cbf7e2e4be1eb5e2ce",
      "parents": [
        "92e2d508464b6293ad274fb606f766a458894142"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Feb 09 22:17:39 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 10 00:41:26 2009 +0100"
      },
      "message": "elf: add ELF_CORE_COPY_KERNEL_REGS()\n\nELF core dump is used for both user land core dump and kernel crash\ndump.  Depending on architecture, register might need to be accessed\ndifferently for userland and kernel.  Allow architectures to define\nELF_CORE_COPY_KERNEL_REGS() and use different operation for kernel\nregister dump.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "754fe8d297bfae7b77f7ce866e2fb0c5fb186506",
      "tree": "b2650f728d50791fa86ecd8c49806f51db714bd4",
      "parents": [
        "5add95d4f7cf08f6f62510f19576992912387501"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:14:09 2009 +0100"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 14 14:15:20 2009 +0100"
      },
      "message": "[CVE-2009-0029] System call wrappers part 07\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "4f4b6c1a94a8735bbdc030a2911cf395495645b6",
      "tree": "0572f8b8be03a32b4ae7b3deb4b1412226a0f598",
      "parents": [
        "9e2f913df70b378379a358a44e7d286f7b765e8e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:15 2009 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Jan 01 10:12:15 2009 +1030"
      },
      "message": "cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: core\n\nImpact: cleanup\n\nIn future, all cpumask ops will only be valid (in general) for bit\nnumbers \u003c nr_cpu_ids.  So use that instead of NR_CPUS in iterators\nand other comparisons.\n\nThis is always safe: no cpu number can be \u003e\u003d nr_cpu_ids, and\nnr_cpu_ids is initialized to NR_CPUS at boot.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Eric Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "5f41b8cdc6ef33b3432cee36264d628a80398362",
      "tree": "12cecc77a6123aa456c0c22c90b7e589c93e83c6",
      "parents": [
        "e3d2f927f788adcdabc42f8a1616f6cc56c53bbe"
      ],
      "author": {
        "name": "Luck, Tony",
        "email": "tony.luck@intel.com",
        "time": "Mon Oct 20 15:23:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 15:28:50 2008 -0700"
      },
      "message": "kexec: fix crash_save_vmcoreinfo_init build problem\n\nThis fixes\n\n  kernel/kexec.c: In function \u0027crash_save_vmcoreinfo_init\u0027:\n  kernel/kexec.c:1374: error: \u0027vmlist\u0027 undeclared (first use in this function)\n  kernel/kexec.c:1374: error: (Each undeclared identifier is reported only once\n  kernel/kexec.c:1374: error: for each function it appears in.)\n  kernel/kexec.c:1410: error: invalid use of undefined type \u0027struct vm_struct\u0027\n  make[1]: *** [kernel/kexec.o] Error 1\n\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acd99dbf54020f5c80b9aa2f2ea86f43cb285b02",
      "tree": "72af6a9e55be18f4fcbe4f17f8b0fe2d3c4af5ab",
      "parents": [
        "d9a9855d0b06ca6d6cc92596fedcc03f8512e062"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Sat Oct 18 20:28:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:40 2008 -0700"
      },
      "message": "kdump: add vmlist.addr to vmcoreinfo for x86 vmalloc translation.\n\nAdd the symbols \u0027vmlist\u0027 and offset \u0027vm_struct.addr\u0027 to the vmcoreinfo[1]\ndata for i386 vmalloc translation.\n\nmakedumpfile[2] needs VMALLOC_START value for distinguishing a vmalloc\naddress or not, because it should choose suitable translation method.  If\napplying this patch, makedumpfile will be able to take VMALLOC_START value\nfrom \u0027vmlist.addr\u0027.\n\nvmcoreinfo[1]:\nThe vmcoreinfo data has the minimum debugging information only for dump\nfiltering. makedumpfile[2] uses it to distinguish unnecessary pages and\ncreates a small dumpfile.\n\nmakedumpfile[2]:\ndump filtering command\nhttps://sourceforge.net/projects/makedumpfile/\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f9092f358bc2ec5367621478811f046f82873376",
      "tree": "12c91aff3aa1d32b2f747470c160093aab6bdabe",
      "parents": [
        "39f00c087d31f668eb6eaf97508af22a32c5b1d9"
      ],
      "author": {
        "name": "Jonathan Steel",
        "email": "jon.steel@esentire.com",
        "time": "Mon Sep 22 13:57:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 23 08:09:14 2008 -0700"
      },
      "message": "kexec: fix segmentation fault in kimage_add_entry\n\nA segmentation fault can occur in kimage_add_entry in kexec.c when loading\na kernel image into memory.  The fault occurs because a page is requested\nby calling kimage_alloc_page with gfp_mask GFP_KERNEL and the function may\nactually return a page with gfp_mask GFP_HIGHUSER.  The high mem page is\nreturned because it was swapped with the kernel page due to the kernel\npage being a page that will shortly be copied to.\n\nThis patch ensures that kimage_alloc_page returns a page that was created\nwith the correct gfp flags.\n\nI have verified the change and fixed the whitespace damage of the original\npatch.  Jonathan did a great job of tracking this down after he hit the\nproblem.  -- Eric\n\nSigned-off-by: Jonathan Steel \u003cjon.steel@esentire.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c5a1cf0ad3ac5fcdf51314a63b16a440870f6a2",
      "tree": "6b2d9084e05083daf6de69421f323c958b1d46ec",
      "parents": [
        "3122c331190e9d1622bf1c8cf6ce3b17cca67c9e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Fri Aug 15 00:40:27 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:43 2008 -0700"
      },
      "message": "kexec: use a mutex for locking rather than xchg()\n\nFunctionally the same, but more conventional.\n\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nTested-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3122c331190e9d1622bf1c8cf6ce3b17cca67c9e",
      "tree": "e856b7a59f5ea5ba4f1662cefdae267b26af30dd",
      "parents": [
        "9bdeb7b5d34f197dea7859d24475943395ffea5e"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:43 2008 -0700"
      },
      "message": "kexec jump: fix for ftrace\n\nFtrace depends on some processor state that we destroyed during kexec and\nrestored by restore_processor_state().  So save_processor_state() and\nrestore_processor_state() are moved into machine_kexec() and ftrace is\nrestored after restore_processor_state().\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73bd9c72a29be1e8de008186eea55d333a938804",
      "tree": "f01823f4f93ca08fa7619b093dd8eed6ba5b58ab",
      "parents": [
        "ca195b7f6da3d5dde0bb85a7c322d7de73352653"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: in sync with hibernation implementation\n\nAdd device_pm_lock() and device_pm_unlock() in kernel_kexec() in sync with\ncurrent hibernation implementation.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.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": "ca195b7f6da3d5dde0bb85a7c322d7de73352653",
      "tree": "1f8a31634ddc2bd4ba8a5fc081b39babab62323b",
      "parents": [
        "fb45daa69d287b394eca1619b3fadff7c0215c71"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: remove duplication of kexec_restart_prepare()\n\nCall kernel_restart_prepare() in kernel_kexec() instead of duplicating the\ncode.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.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": "163f6876f5c3ff8215e900b93779e960a56b3694",
      "tree": "9ba2df8417dedd3a17cf3ba4cba5a2acd578ee3a",
      "parents": [
        "7ade3fcc1fe2801336112027a884070c9ca451af"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE\n\nRename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE, because control\npage is used for not only code on some platform.  For example in kexec\njump, it is used for data and stack too.\n\n[akpm@linux-foundation.org: unbreak powerpc and arm, finish conversion]\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ade3fcc1fe2801336112027a884070c9ca451af",
      "tree": "add446bef1fc2ada030f1e749245075a6baa86a7",
      "parents": [
        "4cd69b986ebf0f8da93f82ffbb89c032ee09c2e1"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec jump: clean up #ifdef and comments\n\nMove if (kexec_image-\u003epreserve_context) { ...  } into #ifdef\nCONFIG_KEXEC_JUMP to make code looks cleaner.\n\nFix no longer correct comments of kernel_kexec().\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.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": "4cd69b986ebf0f8da93f82ffbb89c032ee09c2e1",
      "tree": "cb4085d0b8f18e86b892c5bd88a5d6280c698300",
      "parents": [
        "ce289e89726948b50a58c9e8f4e81174a8c9c254"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Aug 15 00:40:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 08:35:42 2008 -0700"
      },
      "message": "kexec: fix compilation warning on xchg(\u0026kexec_lock, 0) in kernel_kexec()\n\nkernel/kexec.c: In function \u0027kernel_kexec\u0027:\nkernel/kexec.c:1506: warning: value computed is not used\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9",
      "tree": "1835fa64801fee048c8074ae4d63b0a7f4b14ee3",
      "parents": [
        "3ab83521378268044a448113c6aa9a9e245f4d2f"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Jul 25 19:45:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kexec jump: save/restore device state\n\nThis patch implements devices state save/restore before after kexec.\n\nThis patch together with features in kexec_jump patch can be used for\nfollowing:\n\n- A simple hibernation implementation without ACPI support.  You can kexec a\n  hibernating kernel, save the memory image of original system and shutdown\n  the system.  When resuming, you restore the memory image of original system\n  via ordinary kexec load then jump back.\n\n- Kernel/system debug through making system snapshot.  You can make system\n  snapshot, jump back, do some thing and make another system snapshot.\n\n- Cooperative multi-kernel/system.  With kexec jump, you can switch between\n  several kernels/systems quickly without boot process except the first time.\n  This appears like swap a whole kernel/system out/in.\n\n- A general method to call program in physical mode (paging turning\n  off). This can be used to invoke BIOS code under Linux.\n\nThe following user-space tools can be used with kexec jump:\n\n- kexec-tools needs to be patched to support kexec jump. The patches\n  and the precompiled kexec can be download from the following URL:\n       source: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-src_git_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-patches_git_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec_git_kh10\n\n- makedumpfile with patches are used as memory image saving tool, it\n  can exclude free pages from original kernel memory image file. The\n  patches and the precompiled makedumpfile can be download from the\n  following URL:\n       source: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile-src_cvs_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile-patches_cvs_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/makedumpfile/makedumpfile_cvs_kh10\n\n- An initramfs image can be used as the root file system of kexeced\n  kernel. An initramfs image built with \"BuildRoot\" can be downloaded\n  from the following URL:\n       initramfs image: http://khibernation.sourceforge.net/download/release_v10/initramfs/rootfs_cvs_kh10.gz\n  All user space tools above are included in the initramfs image.\n\nUsage example of simple hibernation:\n\n1. Compile and install patched kernel with following options selected:\n\nCONFIG_X86_32\u003dy\nCONFIG_RELOCATABLE\u003dy\nCONFIG_KEXEC\u003dy\nCONFIG_CRASH_DUMP\u003dy\nCONFIG_PM\u003dy\nCONFIG_HIBERNATION\u003dy\nCONFIG_KEXEC_JUMP\u003dy\n\n2. Build an initramfs image contains kexec-tool and makedumpfile, or\n   download the pre-built initramfs image, called rootfs.gz in\n   following text.\n\n3. Prepare a partition to save memory image of original kernel, called\n   hibernating partition in following text.\n\n4. Boot kernel compiled in step 1 (kernel A).\n\n5. In the kernel A, load kernel compiled in step 1 (kernel B) with\n   /sbin/kexec. The shell command line can be as follow:\n\n   /sbin/kexec --load-preserve-context /boot/bzImage --mem-min\u003d0x100000\n     --mem-max\u003d0xffffff --initrd\u003drootfs.gz\n\n6. Boot the kernel B with following shell command line:\n\n   /sbin/kexec -e\n\n7. The kernel B will boot as normal kexec. In kernel B the memory\n   image of kernel A can be saved into hibernating partition as\n   follow:\n\n   jump_back_entry\u003d`cat /proc/cmdline | tr \u0027 \u0027 \u0027\\n\u0027 | grep kexec_jump_back_entry | cut -d \u0027\u003d\u0027`\n   echo $jump_back_entry \u003e kexec_jump_back_entry\n   cp /proc/vmcore dump.elf\n\n   Then you can shutdown the machine as normal.\n\n8. Boot kernel compiled in step 1 (kernel C). Use the rootfs.gz as\n   root file system.\n\n9. In kernel C, load the memory image of kernel A as follow:\n\n   /sbin/kexec -l --args-none --entry\u003d`cat kexec_jump_back_entry` dump.elf\n\n10. Jump back to the kernel A as follow:\n\n   /sbin/kexec -e\n\n   Then, kernel A is resumed.\n\nImplementation point:\n\nTo support jumping between two kernels, before jumping to (executing)\nthe new kernel and jumping back to the original kernel, the devices\nare put into quiescent state, and the state of devices and CPU is\nsaved. After jumping back from kexeced kernel and jumping to the new\nkernel, the state of devices and CPU are restored accordingly. The\ndevices/CPU state save/restore code of software suspend is called to\nimplement corresponding function.\n\nKnown issues:\n\n- Because the segment number supported by sys_kexec_load is limited,\n  hibernation image with many segments may not be load. This is\n  planned to be eliminated by adding a new flag to sys_kexec_load to\n  make a image can be loaded with multiple sys_kexec_load invoking.\n\nNow, only the i386 architecture is supported.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ab83521378268044a448113c6aa9a9e245f4d2f",
      "tree": "e9e8496577e4b2e994edf204e9a8ae7c026eec95",
      "parents": [
        "7fccf0326536c1b245b98740d489abb9aab69a12"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri Jul 25 19:45:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kexec jump\n\nThis patch provides an enhancement to kexec/kdump.  It implements the\nfollowing features:\n\n- Backup/restore memory used by the original kernel before/after\n  kexec.\n\n- Save/restore CPU state before/after kexec.\n\nThe features of this patch can be used as a general method to call program in\nphysical mode (paging turning off).  This can be used to call BIOS code under\nLinux.\n\nkexec-tools needs to be patched to support kexec jump. The patches and\nthe precompiled kexec can be download from the following URL:\n\n       source: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-src_git_kh10.tar.bz2\n       patches: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec-tools-patches_git_kh10.tar.bz2\n       binary: http://khibernation.sourceforge.net/download/release_v10/kexec-tools/kexec_git_kh10\n\nUsage example of calling some physical mode code and return:\n\n1. Compile and install patched kernel with following options selected:\n\nCONFIG_X86_32\u003dy\nCONFIG_KEXEC\u003dy\nCONFIG_PM\u003dy\nCONFIG_KEXEC_JUMP\u003dy\n\n2. Build patched kexec-tool or download the pre-built one.\n\n3. Build some physical mode executable named such as \"phy_mode\"\n\n4. Boot kernel compiled in step 1.\n\n5. Load physical mode executable with /sbin/kexec. The shell command\n   line can be as follow:\n\n   /sbin/kexec --load-preserve-context --args-none phy_mode\n\n6. Call physical mode executable with following shell command line:\n\n   /sbin/kexec -e\n\nImplementation point:\n\nTo support jumping without reserving memory.  One shadow backup page (source\npage) is allocated for each page used by kexeced code image (destination\npage).  When do kexec_load, the image of kexeced code is loaded into source\npages, and before executing, the destination pages and the source pages are\nswapped, so the contents of destination pages are backupped.  Before jumping\nto the kexeced code image and after jumping back to the original kernel, the\ndestination pages and the source pages are swapped too.\n\nC ABI (calling convention) is used as communication protocol between\nkernel and called code.\n\nA flag named KEXEC_PRESERVE_CONTEXT for sys_kexec_load is added to\nindicate that the loaded kernel image is used for jumping back.\n\nNow, only the i386 architecture is supported.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@nigel.suspend2.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7fccf0326536c1b245b98740d489abb9aab69a12",
      "tree": "33344d665a3927d97e105351308b2d425ddd0749",
      "parents": [
        "f1d82698029b92a88f5500b99f66514b6dee2bc3"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Fri Jul 25 19:45:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "kernel/kexec.c: make \u0027kimage_terminate\u0027 void\n\nSince kimage_terminate() always returns 0, make it void.\n\nSigned-off-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "be089d79c46f5efa77fbdf03c5e576e220bf143f",
      "tree": "4aee7d61812806d797b60fe6b8f4987dcc03c011",
      "parents": [
        "c85d194bfd2e36c5254b8058c1f35cfce0dfa10a"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Thu May 01 04:34:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 01 08:04:00 2008 -0700"
      },
      "message": "kexec: make extended crashkernel\u003d syntax less confusing\n\nThe extended crashkernel syntax is a little confusing in the way it handles\nranges.  eg:\n\n crashkernel\u003d512M-2G:64M,2G-:128M\n\nMeans if the machine has between 512M and 2G of memory the crash region should\nbe 64M, and if the machine has 2G of memory the region should be 64M.  Only if\nthe machine has more than 2G memory will 128M be allocated.\n\nAlthough that semantic is correct, it is somewhat baffling.  Instead I propose\nthat the end of the range means the first address past the end of the range,\nie: 512M up to but not including 2G.\n\n[bwalle@suse.de: clarify inclusive/exclusive in crashkernel commandline in documentation]\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nAcked-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "122c7a59055c77434118d7dd4dff4b625d4a2c15",
      "tree": "a17bffce4d5c9574553fdfa075197c0a7b081fbd",
      "parents": [
        "a08cb629f546d1cecebe955392197f226e58dbe1"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Mon Apr 28 02:13:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 28 08:58:23 2008 -0700"
      },
      "message": "vmcoreinfo: add page flags values\n\nAdd some values of page flags to the vmcoreinfo data.\n\nThe vmcoreinfo data has the minimum debugging information only for dump\nfiltering.  makedumpfile (dump filtering command) gets it to distinguish\nunnecessary pages, and makedumpfile creates a small dumpfile.\n\nAn old makedumpfile (v1.2.4 or before) had assumed some values of page flags\ninternally, and this implementation could not follow the change of these\nvalues.  For example, Christoph Lameter is changing these values by the\nfollwing patch: http://lkml.org/lkml/2008/2/29/463\n\nSo a new makedumpfile (v1.2.5) came to need these values and I created this\npatch to let the kernel output them.\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a6550207538619bc9b90bac2e1d5e54902a432ad",
      "tree": "cc9bb9b5153810b544c2afcc7721353ff5ce957d",
      "parents": [
        "5a6483feb0c5193519625d0ea8c4254364d423cc"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Feb 26 10:47:18 2008 -0500"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:17:04 2008 -0400"
      },
      "message": "kernel: Remove unnecessary inclusions of asm/semaphore.h\n\nNone of these files use any of the functionality promised by\nasm/semaphore.h.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "bba1f603b88f30945ae4c5eccf2a6f5a12b877c5",
      "tree": "ae084f845fa4ede7b2926381419d725b7dd7d5d7",
      "parents": [
        "1e4f2955433231b4b02dc4a9eb5d4d403a8680e1"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Thu Feb 07 00:15:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 08:42:25 2008 -0800"
      },
      "message": "vmcoreinfo: add \"VMCOREINFO_\" to all the call for vmcoreinfo_append_str()\n\nFor readability, all the calls to vmcoreinfo_append_str() are changed to macros\nhaving a prefix \"VMCOREINFO_\".\n\nThis discussion is the following:\nhttp://www.ussg.iu.edu/hypermail/linux/kernel/0709.3/0584.html\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c76f860c44357f560a763d2894e95464cab7b159",
      "tree": "49cc50570ae34b02222cf5a7f1023e5828ae246b",
      "parents": [
        "18a01a3beb9f25a70a51e12e3c1c3d273da10eca"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Thu Feb 07 00:15:20 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 07 08:42:25 2008 -0800"
      },
      "message": "vmcoreinfo: rename vmcoreinfo\u0027s macros returning the size\n\nThis patchset is for the vmcoreinfo data.\n\nThe vmcoreinfo data has the minimum debugging information only for dump\nfiltering.  makedumpfile (dump filtering command) gets it to distinguish\nunnecessary pages, and makedumpfile creates a small dumpfile.\n\nThis patch:\n\nVMCOREINFO_SIZE() should be renamed VMCOREINFO_STRUCT_SIZE() since it\u0027s always\nreturning the size of the struct with a given name. This change would allow\nVMCOREINFO_TYPEDEF_SIZE() to simply become VMCOREINFO_SIZE() since it need not\nbe used exclusively for typedefs.\n\nThis discussion is the following:\nhttp://www.ussg.iu.edu/hypermail/linux/kernel/0709.3/0582.html\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83a08e7c6ed533a47631794e7f618a98094b4129",
      "tree": "cf3246a639fc66b4a81968c78edad33598729029",
      "parents": [
        "caeeeecfdaeada2998eb3c29c3ebd59afb79ef06"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Tue Jan 08 15:33:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jan 08 16:10:36 2008 -0800"
      },
      "message": "vmcoreinfo: add the array length of \"free_list\" for filtering free pages\n\nThis patch adds the array length of \"free_area.free_list\" to the vmcoreinfo\ndata so that makedumpfile (dump filtering command) can exclude all free pages\nin linux-2.6.24.\n\nmakedumpfile creates a small dumpfile by excluding unnecessary pages for the\nanalysis. To distinguish unnecessary pages, makedumpfile gets the vmcoreinfo\ndata which has the minimum debugging information only for dump filtering.\n\nIn 2.6.24-rc1 or later, the free_area.free_list is an array which has one list\nfor each migrate types instead of a single list. makedumpfile needs the array\nlength of \"free_area.free_list\" and the vmcoreinfo data should contain it.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nTested-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cba63c3089fe57bfafff56239a67ac26bfe027a0",
      "tree": "a247f3b0352e29e9da5cc07e840b28b5e27ba2e4",
      "parents": [
        "283bb7fada7e33a759d8fc9bd7a44532e4ad420e"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bwalle@suse.de",
        "time": "Thu Oct 18 23:40:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:49 2007 -0700"
      },
      "message": "Extended crashkernel command line\n\nThis patch adds a extended crashkernel syntax that makes the value of reserved\nsystem RAM dependent on the system RAM itself:\n\n    crashkernel\u003d\u003crange1\u003e:\u003csize1\u003e[,\u003crange2\u003e:\u003csize2\u003e,...][@offset]\n    range\u003dstart-[end]\n\nFor example:\n\n    crashkernel\u003d512M-2G:64M,2G-:128M\n\nThe motivation comes from distributors that configure their crashkernel\ncommand line automatically with some configuration tool (YaST, you know ;)).\nOf course that tool knows the value of System RAM, but if the user removes\nRAM, then the system becomes unbootable or at least unusable and error\nhandling is very difficult.\n\nThis series implements this change for i386, x86_64, ia64, ppc64 and sh.  That\nshould be all platforms that support kdump in current mainline.  I tested all\nplatforms except sh due to the lack of a sh processor.\n\nThis patch:\n\nThis is the generic part of the patch.  It adds a parse_crashkernel() function\nin kernel/kexec.c that is called by the architecture specific code that\nactually reserves the memory.  That function takes the whole command line and\nlooks itself for \"crashkernel\u003d\" in it.\n\nIf there are multiple occurrences, then the last one is taken.  The advantage\nis that if you have a bootloader like lilo or elilo which allows you to append\na command line parameter but not to remove one (like in GRUB), then you can\nadd another crashkernel value for testing at the boot command line and this\none overwrites the command line in the configuration then.\n\nSigned-off-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b460cbc581a53cc088ceba80608021dd49c63c43",
      "tree": "83c28d0adbc15f4157c77b40fa60c40a71cb8673",
      "parents": [
        "3743ca05ff464b8a9e345c08a6c9ce30485f9805"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Oct 18 23:39:52 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:37 2007 -0700"
      },
      "message": "pid namespaces: define is_global_init() and is_container_init()\n\nis_init() is an ambiguous name for the pid\u003d\u003d1 check.  Split it into\nis_global_init() and is_container_init().\n\nA cgroup init has it\u0027s tsk-\u003epid \u003d\u003d 1.\n\nA global init also has it\u0027s tsk-\u003epid \u003d\u003d 1 and it\u0027s active pid namespace\nis the init_pid_ns.  But rather than check the active pid namespace,\ncompare the task structure with \u0027init_pid_ns.child_reaper\u0027, which is\ninitialized during boot to the /sbin/init process and never changes.\n\nChangelog:\n\n\t2.6.22-rc4-mm2-pidns1:\n\t- Use \u0027init_pid_ns.child_reaper\u0027 to determine if a given task is the\n\t  global init (/sbin/init) process. This would improve performance\n\t  and remove dependence on the task_pid().\n\n\t2.6.21-mm2-pidns2:\n\n\t- [Sukadev Bhattiprolu] Changed is_container_init() calls in {powerpc,\n\t  ppc,avr32}/traps.c for the _exception() call to is_global_init().\n\t  This way, we kill only the cgroup if the cgroup\u0027s init has a\n\t  bug rather than force a kernel panic.\n\n[akpm@linux-foundation.org: fix comment]\n[sukadev@us.ibm.com: Use is_global_init() in arch/m32r/mm/fault.c]\n[bunk@stusta.de: kernel/pid.c: remove unused exports]\n[sukadev@us.ibm.com: Fix capability.c to work with threaded init]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nAcked-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Herbert Poetzel \u003cherbert@13thfloor.at\u003e\nCc: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c80544dc0b87bb65038355e7aafdc30be16b26ab",
      "tree": "176349304bec88a9de16e650c9919462e0dd453c",
      "parents": [
        "0e9663ee452ffce0d429656ebbcfe69417a30e92"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Thu Oct 18 03:07:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Oct 18 14:37:31 2007 -0700"
      },
      "message": "sparse pointer use of zero as null\n\nGet rid of sparse related warnings from places that use integer as NULL\npointer.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Ian Kent \u003craven@themaw.net\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bcbba6c10ef6b14b0542d7ed7380e95168175818",
      "tree": "052c7c8062d7348a7caf8c4780d2a65aa81a9ca7",
      "parents": [
        "00cab92f9e91c0feeaca11a485b15175304779d5"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Tue Oct 16 23:27:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:54 2007 -0700"
      },
      "message": "add-vmcore: add a prefix \"VMCOREINFO_\" to the vmcoreinfo macros\n\nAdd a prefix \"VMCOREINFO_\" to the vmcoreinfo macros.  Old vmcoreinfo macros\nwere defined as generic names SYMBOL/SIZE/OFFSET /LENGTH/CONFIG, and it is\nimpossible to grep for them.  So these names should be changed.  This\ndiscussion is the following:\nhttp://www.ussg.iu.edu/hypermail/linux/kernel/0709.1/0415.html\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6cfa062f01b601206b980e503f62dc593ed8fcaa",
      "tree": "17cf10b2c569b464a4045679294e5b3c11a29a67",
      "parents": [
        "d768281e97a403815467102bc4b677f6c425a42b"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Tue Oct 16 23:27:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:54 2007 -0700"
      },
      "message": "add-vmcore: add nodemask_t\u0027s size and NR_FREE_PAGES\u0027s value to vmcoreinfo_data\n\n[2/3] Add nodemask_t\u0027s size and NR_FREE_PAGES\u0027s value to vmcoreinfo_data.\n  The dump filetering command \u0027makedumpfile\u0027(v1.1.6 or before) had assumed\n  the above values, and it was not good from the reliability viewpoint.\n  So makedumpfile v1.2.0 came to need these values and I created the patch\n  to let the kernel output them.\n  makedumpfile site:\n  https://sourceforge.net/projects/makedumpfile/\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d768281e97a403815467102bc4b677f6c425a42b",
      "tree": "6ab7d064ffde0d105c256d0fbd7f1c629c54d37a",
      "parents": [
        "fd59d231f81cb02870b9cf15f456a897f3669b4e"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Tue Oct 16 23:27:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:54 2007 -0700"
      },
      "message": "add-vmcore: cleanup the coding style according to Andrew\u0027s comments\n\n[1/3] Cleanup the coding style according to Andrew\u0027s comments:\nhttp://lists.infradead.org/pipermail/kexec/2007-August/000522.html\n- vmcoreinfo_append_str() should have suitable __attribute__s so that\n  the compiler can check its use.\n- vmcoreinfo_max_size should have size_t.\n- Use get_seconds() instead of xtime.tv_sec.\n- Use init_uts_ns.name.release instead of UTS_RELEASE.\n\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd59d231f81cb02870b9cf15f456a897f3669b4e",
      "tree": "5713c13bd678774f1ba3c42bfff5008c1812deae",
      "parents": [
        "0e647c04f665e9b3451a1ebe8252b38ffe0207c8"
      ],
      "author": {
        "name": "Ken\u0027ichi Ohmichi",
        "email": "oomichi@mxs.nes.nec.co.jp",
        "time": "Tue Oct 16 23:27:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:54 2007 -0700"
      },
      "message": "Add vmcoreinfo\n\nThis patch set frees the restriction that makedumpfile users should install a\nvmlinux file (including the debugging information) into each system.\n\nmakedumpfile command is the dump filtering feature for kdump.  It creates a\nsmall dumpfile by filtering unnecessary pages for the analysis.  To\ndistinguish unnecessary pages, it needs a vmlinux file including the debugging\ninformation.  These days, the debugging package becomes a huge file, and it is\nhard to install it into each system.\n\nTo solve the problem, kdump developers discussed it at lkml and kexec-ml.  As\nthe result, we reached the conclusion that necessary information for dump\nfiltering (called \"vmcoreinfo\") should be embedded into the first kernel file\nand it should be accessed through /proc/vmcore during the second kernel.\n(http://www.uwsg.iu.edu/hypermail/linux/kernel/0707.0/1806.html)\n\nDan Aloni created the patch set for the above implementation.\n(http://www.uwsg.iu.edu/hypermail/linux/kernel/0707.1/1053.html)\n\nAnd I updated it for multi architectures and memory models.\n(http://lists.infradead.org/pipermail/kexec/2007-August/000479.html)\n\nSigned-off-by: Dan Aloni \u003cda-x@monatomic.org\u003e\nSigned-off-by: Ken\u0027ichi Ohmichi \u003coomichi@mxs.nes.nec.co.jp\u003e\nSigned-off-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9022e9cb9e919e31d5bc15fcef5c7186740645e",
      "tree": "48aea98aec8d9822155b2054bc60f9142f478769",
      "parents": [
        "ea0b7d5da0024df1c6f2c2139dbeb4fd260baac6"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in kernel/\n\nThis patch cleans up duplicate includes in\n\tkernel/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6672f76a5a1878d42264c1deba8f1ab52b4618d9",
      "tree": "77396eefed3548183c1f0c3d1dc38f034d8fc429",
      "parents": [
        "73285082745045bcd64333c1fbaa88f8490f2626"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Tue May 08 00:28:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "kdump/kexec: calculate note size at compile time\n\nCurrently the size of the per-cpu region reserved to save crash notes is\nset by the per-architecture value MAX_NOTE_BYTES.  Which in turn is\ncurrently set to 1024 on all supported architectures.\n\nWhile testing ia64 I recently discovered that this value is in fact too\nsmall.  The particular setup I was using actually needs 1172 bytes.  This\nlead to very tedious failure mode where the tail of one elf note would\noverwrite the head of another if they ended up being alocated sequentially\nby kmalloc, which was often the case.\n\nIt seems to me that a far better approach is to caclculate the size that\nthe area needs to be.  This patch does just that.\n\nIf a simpler stop-gap patch for ia64 to be squeezed into 2.6.21(.X) is\nneeded then this should be as easy as making MAX_NOTE_BYTES larger in\narch/asm-ia64/kexec.h.  Perhaps 2048 would be a good choice.  However, I\nthink that the approach in this patch is a much more robust idea.\n\nAcked-by:  Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ee7e78e7c78d871409ad4df30551c9355be7d0e",
      "tree": "84deeea72d7234d0b5652483b11760f394ae1131",
      "parents": [
        "7f3af60e5a444b287d740a84998a8f480645dadf",
        "52fd91088bcbaea5ab441d09d39c21eb684e54ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 15:39:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 15:39:22 2006 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] replace kmalloc+memset with kzalloc\n  [IA64] resolve name clash by renaming is_available_memory()\n  [IA64] Need export for csum_ipv6_magic\n  [IA64] Fix DISCONTIGMEM without VIRTUAL_MEM_MAP\n  [PATCH] Add support for type argument in PAL_GET_PSTATE\n  [IA64] tidy up return value of ip_fast_csum\n  [IA64] implement csum_ipv6_magic for ia64.\n  [IA64] More Itanium PAL spec updates\n  [IA64] Update processor_info features\n  [IA64] Add se bit to Processor State Parameter structure\n  [IA64] Add dp bit to cache and bus check structs\n  [IA64] SN: Correctly update smp_affinty mask\n  [IA64] sparse cleanups\n  [IA64] IA64 Kexec/kdump\n"
    },
    {
      "commit": "a79561134f38de12dce14ed72138f38e55ef53fc",
      "tree": "abe109dbe85e5b0085ba9b9a7eed7cc623d67eec",
      "parents": [
        "620034c84d1d939717bdfbe02c51a3fee43541c3"
      ],
      "author": {
        "name": "Zou Nan hai",
        "email": "nanhai.zou@intel.com",
        "time": "Thu Dec 07 09:51:35 2006 -0800"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Thu Dec 07 09:51:35 2006 -0800"
      },
      "message": "[IA64] IA64 Kexec/kdump\n\nChanges and updates.\n\n1. Remove fake rendz path and related code according to discuss with Khalid Aziz.\n2. fc.i offset fix in relocate_kernel.S.\n3. iospic shutdown code eoi and mask race fix from Fujitsu.\n4. Warm boot hook in machine_kexec to SN SAL code from Jack Steiner.\n5. Send slave to SAL slave loop patch from Jay Lan.\n6. Kdump on non-recoverable MCA event patch from Jay Lan\n7. Use CTL_UNNUMBERED in kdump_on_init sysctl.\n\nSigned-off-by: Zou Nan hai \u003cnanhai.zou@intel.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "85916f8166b59eeac63d2b4f7f1df8de849334b4",
      "tree": "176176a0a75cfe42043c463a4391dd9f7975a69c",
      "parents": [
        "6d4df677f8a60ea6bc0ef1a596c1a3a79b1d4882"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "magnus@valinux.co.jp",
        "time": "Wed Dec 06 20:40:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:46 2006 -0800"
      },
      "message": "[PATCH] Kexec / Kdump: Unify elf note code\n\nThe elf note saving code is currently duplicated over several\narchitectures.  This cleanup patch simply adds code to a common file and\nthen replaces the arch-specific code with calls to the newly added code.\n\nThe only drawback with this approach is that s390 doesn\u0027t fully support\nkexec-on-panic which for that arch leads to introduction of unused code.\n\nSigned-off-by: Magnus Damm \u003cmagnus@valinux.co.jp\u003e\nCc: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4668edc334ee90cf50c382c3e423cfc510b5a126",
      "tree": "ee25ca93e72031f7f333b6c251a57a55ef089c90",
      "parents": [
        "304e61e6fbadec586dfe002b535f169a04248e49"
      ],
      "author": {
        "name": "Burman Yan",
        "email": "yan_952@hotmail.com",
        "time": "Wed Dec 06 20:38:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:41 2006 -0800"
      },
      "message": "[PATCH] kernel core: replace kmalloc+memset with kzalloc\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0b4a8a789a328af6aac613734c362cf6aad72201",
      "tree": "e2488a7e4767dd1d25f4691b12fde86041404982",
      "parents": [
        "3171a0305d62e6627a24bff35af4f997e4988a80"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Sep 29 02:00:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:15 2006 -0700"
      },
      "message": "[PATCH] kexec warning fix\n\nThis fixes a couple of compiler warnings, and adds paranoia checks as well.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f400e198b2ed26ce55b22a1412ded0896e7516ac",
      "tree": "a3d78bfc1c20635e199fe0fe85aaa1d8792acc58",
      "parents": [
        "959ed340f4867fda7684340625f60e211c2296d6"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Fri Sep 29 02:00:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 29 09:18:12 2006 -0700"
      },
      "message": "[PATCH] pidspace: is_init()\n\nThis is an updated version of Eric Biederman\u0027s is_init() patch.\n(http://lkml.org/lkml/2006/2/6/280).  It applies cleanly to 2.6.18-rc3 and\nreplaces a few more instances of -\u003epid \u003d\u003d 1 with is_init().\n\nFurther, is_init() checks pid and thus removes dependency on Eric\u0027s other\npatches for now.\n\nEric\u0027s original description:\n\n\tThere are a lot of places in the kernel where we test for init\n\tbecause we give it special properties.  Most  significantly init\n\tmust not die.  This results in code all over the kernel test\n\t-\u003epid \u003d\u003d 1.\n\n\tIntroduce is_init to capture this case.\n\n\tWith multiple pid spaces for all of the cases affected we are\n\tlooking for only the first process on the system, not some other\n\tprocess that has pid \u003d\u003d 1.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: \u003clxc-devel@lists.sourceforge.net\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c0ce7d0886cf0c2579c604eac41a7e125bc0e96d",
      "tree": "f31448371b4295e98753f1551178fdddb8d18b0e",
      "parents": [
        "2cd90bc8fba8720ef7f3fdfd1e0c1a5397a18271"
      ],
      "author": {
        "name": "David Wilder",
        "email": "dwilder@us.ibm.com",
        "time": "Fri Jun 23 15:29:34 2006 -0700"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Jun 28 15:18:52 2006 +1000"
      },
      "message": "[POWERPC] Add the use of the firmware soft-reset-nmi to kdump.\n\nWith this patch, kdump uses the firmware soft-reset NMI for two purposes:\n1) Initiate the kdump (take a crash dump) by issuing a soft-reset.\n2) Break a CPU out of a deadlock condition that is detected during kdump\nprocessing.\n\nWhen a soft-reset is initiated each CPU will enter\nsystem_reset_exception() and set its corresponding bit in the global\nbit-array cpus_in_sr then call die(). When die() finds the CPU\u0027s bit set\nin cpu_in_sr crash_kexec() is called to initiate a crash dump. The first\nCPU to enter crash_kexec() is called the \"crashing CPU\". All other CPUs\nare \"secondary CPUs\". The secondary CPU\u0027s pass through to\ncrash_kexec_secondary() and sleep. The crashing CPU waits for all CPUs\nto enter via soft-reset then boots the kdump kernel (see\ncrash_soft_reset_check())\n\nWhen the system crashes due to a panic or exception, crash_kexec() is\ncalled by panic() or die(). The crashing CPU sends an IPI to all other\nCPUs to notify them of the pending shutdown. If a CPU is in a deadlock\nor hung state with interrupts disabled, the IPI will not be delivered.\nThe result being, that the kdump kernel is not booted. This problem is\nsolved with the use of a firmware generated soft-reset. After the\ncrashing_cpu has issued the IPI, it waits for 10 sec for all CPUs to\nenter crash_ipi_callback(). A CPU signifies its entry to\ncrash_ipi_callback() by setting its corresponding bit in the\ncpus_in_crash bit array. After 10 sec, if one or more CPUs have not set\ntheir bit in cpus_in_crash we assume that the CPU(s) is deadlocked. The\noperator is then prompted to generate a soft-reset to break the\ndeadlock. Each CPU enters the soft reset handler as described above.\n\nTwo conditions must be handled at this point:\n1) The system crashed because the operator generated a soft-reset. See\n2) The system had crashed before the soft-reset was generated ( in the\ncase of a Panic or oops).\n\nThe first CPU to enter crash_kexec() uses the state of the kexec_lock to\ndetermine this state. If kexec_lock is already held then condition 2 is\ntrue and crash_kexec_secondary() is called, else; this CPU is flagged as\nthe crashing CPU, the kexec_lock is acquired and crash_kexec() proceeds\nas described above.\n\nEach additional CPUs responding to the soft-reset will pass through\ncrash_kexec() to kexec_secondary(). All secondary CPUs call\ncrash_ipi_callback() readying them self\u0027s for the shutdown. When ready\nthey clear their bit in cpus_in_sr. The crashing CPU waits in\nkexec_secondary() until all other CPUs have cleared their bits in\ncpus_in_sr. The kexec kernel boot is then started.\n\nSigned-off-by: Haren Myneni \u003charen@us.ibm.com\u003e\nSigned-off-by: David Wilder \u003cdwilder@us.ibm.com\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "c330dda908b5a46469a997eea90b66f2f9f02b34",
      "tree": "aad52aa4e127c366ca185c2122650d7dbb3437a0",
      "parents": [
        "24bbb1faf3f0420eb252dd0fdc1e477b1d4d73bd"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Fri Jun 23 02:05:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:02 2006 -0700"
      },
      "message": "[PATCH] Add a sysfs file to determine if a kexec kernel is loaded\n\nCreate two files in /sys/kernel, kexec_loaded and kexec_crash_loaded.  Each\nfile contains a simple boolean value indicating whether the relevant kernel\nhas been loaded into memory.  The motivation for this is geared around\nsupport.\n\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c59ede7b78db329949d9cdcd7064e22d357560ef",
      "tree": "f9dc9d464fdad5bfd464d983e77c1af031389dda",
      "parents": [
        "e16885c5ad624a6efe1b1bf764e075d75f65a788"
      ],
      "author": {
        "name": "Randy.Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jan 11 12:17:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 18:42:13 2006 -0800"
      },
      "message": "[PATCH] move capable() to capability.h\n\n- Move capable() from sched.h to capability.h;\n\n- Use \u003clinux/capability.h\u003e where capable() is used\n\t(in include/, block/, ipc/, kernel/, a few drivers/,\n\tmm/, security/, \u0026 sound/;\n\tmany more drivers/ to go)\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e996e58133c475bcf3a229f716b9457267cbaa0a",
      "tree": "9fd2f41d7e2c0deaca71a88a1b36d873ede3c7b8",
      "parents": [
        "35ed319a36cdfd88fc3debe6ce24e756bc474cce"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Mon Jan 09 20:51:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:27 2006 -0800"
      },
      "message": "[PATCH] kdump: save registers early (inline functions)\n\n- If system panics then cpu register states are captured through funciton\n  crash_get_current_regs().  This is not a inline function hence a stack frame\n  is pushed on to the stack and then cpu register state is captured.  Later\n  this frame is popped and new frames are pushed (machine_kexec).\n\n- In theory this is not very right as we are capturing register states for a\n  frame and that frame is no more valid.  This seems to have created back\n  trace problems for ppc64.\n\n- This patch fixes it up.  The very first thing it does after entering\n  crash_kexec() is to capture the register states.  Anyway we don\u0027t want the\n  back trace beyond crash_kexec().  crash_get_current_regs() has been made\n  inline\n\n- crash_setup_regs() is the top architecture dependent function which should\n  be responsible for capturing the register states as well as to do some\n  architecture dependent tricks.  For ex.  fixing up ss and esp for i386.\n  crash_setup_regs() has also been made inline to ensure no new call frame is\n  pushed onto stack.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cc57165874e938ef684d71ba7d36e7088b551489",
      "tree": "e1847f5547a7a426214e9ef0719eab908ee305d7",
      "parents": [
        "82409411571ad89d271dc46f7fa26149fad9efdf"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Mon Jan 09 20:51:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:26 2006 -0800"
      },
      "message": "[PATCH] kdump: dynamic per cpu allocation of memory for saving cpu registers\n\n- In case of system crash, current state of cpu registers is saved in memory\n  in elf note format.  So far memory for storing elf notes was being allocated\n  statically for NR_CPUS.\n\n- This patch introduces dynamic allocation of memory for storing elf notes.\n  It uses alloc_percpu() interface.  This should lead to better memory usage.\n\n- Introduced based on Andi Kleen\u0027s and Eric W. Biederman\u0027s suggestions.\n\n- This patch also moves memory allocation for elf notes from architecture\n  dependent portion to architecture independent portion.  Now crash_notes is\n  architecture independent.  The whole idea is that size of memory to be\n  allocated per cpu (MAX_NOTE_BYTES) can be architecture dependent and\n  allocation of this memory can be architecture independent.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c21e2f2441dc5fbb957b030333f5a3f2d02dea7",
      "tree": "1f76d33bb1d76221c6424bc5fed080a4f91349a6",
      "parents": [
        "b38c6845b695141259019e2b7c0fe6c32a6e720d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:42 2005 -0700"
      },
      "message": "[PATCH] mm: split page table lock\n\nChristoph Lameter demonstrated very poor scalability on the SGI 512-way, with\na many-threaded application which concurrently initializes different parts of\na large anonymous area.\n\nThis patch corrects that, by using a separate spinlock per page table page, to\nguard the page table entries in that page, instead of using the mm\u0027s single\npage_table_lock.  (But even then, page_table_lock is still used to guard page\ntable allocation, and anon_vma allocation.)\n\nIn this implementation, the spinlock is tucked inside the struct page of the\npage table page: with a BUILD_BUG_ON in case it overflows - which it would in\nthe case of 32-bit PA-RISC with spinlock debugging enabled.\n\nSplitting the lock is not quite for free: another cacheline access.  Ideally,\nI suppose we would use split ptlock only for multi-threaded processes on\nmulti-cpu machines; but deciding that dynamically would have its own costs.\nSo for now enable it by config, at some number of cpus - since the Kconfig\nlanguage doesn\u0027t support inequalities, let preprocessor compare that with\nNR_CPUS.  But I don\u0027t think it\u0027s worth being user-configurable: for good\ntesting of both split and unsplit configs, split now at 4 cpus, and perhaps\nchange that to 8 later.\n\nThere is a benefit even for singly threaded processes: kswapd can be attacking\none part of the mm while another part is busy faulting.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9796fdd829da626374458e8706daedcc0e432ddd",
      "tree": "a0b4af7f45267cdcdfb677c2167906c6ef981b76",
      "parents": [
        "55016f10e31bb15b85d8c500f979dfdceb37d548"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Oct 21 03:22:03 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 28 08:16:49 2005 -0700"
      },
      "message": "[PATCH] gfp_t: kernel/*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "314b6a4d80a7a5217c86ffdca926b6f406da0e0e",
      "tree": "f2a1b6a94511fb449ff35c7a3f6b1dc0f548335e",
      "parents": [
        "97afa0a25afb43a82954662773a9d48d61b2996a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Jun 27 22:29:33 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 28 14:53:40 2005 -0700"
      },
      "message": "[PATCH] kexec: fix sparse warnings\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "72414d3f1d22fc3e311b162fca95c430048d38ce",
      "tree": "46850947c1602357dd3c51d8d6ebaa5805507f9f",
      "parents": [
        "4f339ecb30c759f94a29992d4635d9194132b6cf"
      ],
      "author": {
        "name": "Maneesh Soni",
        "email": "maneesh@in.ibm.com",
        "time": "Sat Jun 25 14:58:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:55 2005 -0700"
      },
      "message": "[PATCH] kexec code cleanup\n\no Following patch provides purely cosmetic changes and corrects CodingStyle\n  guide lines related certain issues like below in kexec related files\n\n  o braces for one line \"if\" statements, \"for\" loops,\n  o more than 80 column wide lines,\n  o No space after \"while\", \"for\" and \"switch\" key words\n\no Changes:\n  o take-2: Removed the extra tab before \"case\" key words.\n  o take-3: Put operator at the end of line and space before \"*/\"\n\nSigned-off-by: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e274d144302068a00794ec22e73520c0615cb6f",
      "tree": "f7ea59ea47d3c5676fbac8d39e8deaa1f94146ae",
      "parents": [
        "86b1ae38c0a62409dc862a28e3f08920f55f944b"
      ],
      "author": {
        "name": "Alexander Nyberg",
        "email": "alexn@telia.com",
        "time": "Sat Jun 25 14:58:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:54 2005 -0700"
      },
      "message": "[PATCH] kdump: Use real pt_regs from exception\n\nMakes kexec_crashdump() take a pt_regs * as an argument.  This allows to\nget exact register state at the point of the crash.  If we come from direct\npanic assertion NULL will be passed and the current registers saved before\ncrashdump.\n\nThis hooks into two places:\ndie(): check the conditions under which we will panic when calling\ndo_exit and go there directly with the pt_regs that caused the fatal\nfault.\n\ndie_nmi(): If we receive an NMI lockup while in the kernel use the\npt_regs and go directly to crash_kexec(). We\u0027re probably nested up badly\nat this point so this might be the only chance to escape with proper\ninformation.\n\nSigned-off-by: Alexander Nyberg \u003calexn@telia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "50cccc699ed849d31c9e3f7643db33edade20e4e",
      "tree": "7cd6e1adfa7b42a7be2815361e5d41c2fd89ee48",
      "parents": [
        "dc009d92435f99498cbc579ce76bf28e837e2c14"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Jun 25 14:57:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:48 2005 -0700"
      },
      "message": "[PATCH] Kexec on panic vmlinux initrd fix\n\nThis is a minor bug fix in kexec to resolve the problem of loading panic\nkernel with initrd.\n\no Problem: Loading a capture kenrel fails if initrd is also being loaded.\n  This has been observed for vmlinux image for kexec on panic case.\n\no This patch fixes the problem. In segment location and size verification\n  logic, minor correction has been done. Segment memory end (mend) should be\n  mstart + memsz - 1. This one byte offset was source of failure for initrd\n  loading which was being loaded at hole boundary.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dc009d92435f99498cbc579ce76bf28e837e2c14",
      "tree": "2ba8732b28225593d996b8faa079dc6ab4bbc9bc",
      "parents": [
        "d0537508a9921efced238b20967e50e519ac34af"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:52 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:48 2005 -0700"
      },
      "message": "[PATCH] kexec: add kexec syscalls\n\nThis patch introduces the architecture independent implementation the\nsys_kexec_load, the compat_sys_kexec_load system calls.\n\nKexec on panic support has been integrated into the core patch and is\nrelatively clean.\n\nIn addition the hopefully architecture independent option\ncrashkernel\u003dsize@location has been docuemented.  It\u0027s purpose is to reserve\nspace for the panic kernel to live, and where no DMA transfer will ever be\nsetup to access.\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Alexander Nyberg \u003calexn@telia.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
