)]}'
{
  "log": [
    {
      "commit": "2a7d2b96d5cba7568139d9ab157a0e97ab32440f",
      "tree": "ad029d8cc7b7068b7250e914360ec6315fdfa114",
      "parents": [
        "e3c4877de8b9d93bd47b6ee88eb594b1c1e10da5",
        "b67bfe0d42cac56c512dd5da4b1b347a23f4b70a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 20:58:09 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 20:58:09 2013 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (final batch from Andrew)\n\nMerge third patch-bumb from Andrew Morton:\n \"This wraps me up for -rc1.\n   - Lots of misc stuff and things which were deferred/missed from\n     patchbombings 1 \u0026 2.\n   - ocfs2 things\n   - lib/scatterlist\n   - hfsplus\n   - fatfs\n   - documentation\n   - signals\n   - procfs\n   - lockdep\n   - coredump\n   - seqfile core\n   - kexec\n   - Tejun\u0027s large IDR tree reworkings\n   - ipmi\n   - partitions\n   - nbd\n   - random() things\n   - kfifo\n   - tools/testing/selftests updates\n   - Sasha\u0027s large and pointless hlist cleanup\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (163 commits)\n  hlist: drop the node parameter from iterators\n  kcmp: make it depend on CHECKPOINT_RESTORE\n  selftests: add a simple doc\n  tools/testing/selftests/Makefile: rearrange targets\n  selftests/efivarfs: add create-read test\n  selftests/efivarfs: add empty file creation test\n  selftests: add tests for efivarfs\n  kfifo: fix kfifo_alloc() and kfifo_init()\n  kfifo: move kfifo.c from kernel/ to lib/\n  arch Kconfig: centralise CONFIG_ARCH_NO_VIRT_TO_BUS\n  w1: add support for DS2413 Dual Channel Addressable Switch\n  memstick: move the dereference below the NULL test\n  drivers/pps/clients/pps-gpio.c: use devm_kzalloc\n  Documentation/DMA-API-HOWTO.txt: fix typo\n  include/linux/eventfd.h: fix incorrect filename is a comment\n  mtd: mtd_stresstest: use prandom_bytes()\n  mtd: mtd_subpagetest: convert to use prandom library\n  mtd: mtd_speedtest: use prandom_bytes\n  mtd: mtd_pagetest: convert to use prandom library\n  mtd: mtd_oobtest: convert to use prandom library\n  ...\n"
    },
    {
      "commit": "1e142b29e210b5dfb2deeb6ce2210b60af16d2a6",
      "tree": "1897f00bd56135a32dd11dfbebd46343293d26fa",
      "parents": [
        "80d03428597056f4e2d1aed389929ece7879dad1"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Wed Feb 27 17:05:58 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:24 2013 -0800"
      },
      "message": "kcmp: make it depend on CHECKPOINT_RESTORE\n\nSince kcmp syscall has been implemented (initially on x86 architecture) a\nnumber of other archs wire it up as well: xtensa, sparc, sh, s390, mips,\nmicroblaze, m68k (not taking into account those who uses\n\u003casm-generic/unistd.h\u003e for syscall numbers definitions).\n\nBut the Makefile, which turns kcmp.o generation on still depends on former\nconfig-x86.  Thus get rid of this limitation and make kcmp.o depend on\nCHECKPOINT_RESTORE option.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c759b35e6469fe7519e9fe45d5285d49f12cb657",
      "tree": "9a027e1d2fe66b654e07a4cda7e2c87c3df2988e",
      "parents": [
        "887cbce0adead8dc394157b8e53603ed001a3060"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Wed Feb 27 17:05:50 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:23 2013 -0800"
      },
      "message": "kfifo: move kfifo.c from kernel/ to lib/\n\nMove kfifo.c from kernel/ to lib/\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ca7ffb356063c5ece847687da457dfe748612a2",
      "tree": "f7858236ba482814c8cacf45447a3f96548a1688",
      "parents": [
        "30acd906b02470e7eb346401de966a33864d9af4",
        "423a8155facf23719078ff63911c1e85ba40970b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 12:25:47 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 12:25:47 2013 -0800"
      },
      "message": "Merge branch \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild\n\nPull kbuild changes from Michal Marek:\n\n - Alias generation in modpost is cross-compile safe.\n\n - kernel/timeconst.h is now generated using a bc script instead of\n   perl.\n\n - scripts/link-vmlinux.sh now works with an alternative\n   $KCONFIG_CONFIG.\n\n - destination-y for exported headers is supported in Kbuild files\n   again.\n\n - depmod is called with -P $CONFIG_SYMBOL_PREFIX on architectures that\n   need it.\n\n - CONFIG_DEBUG_INFO_REDUCED disables var-tracking\n\n - scripts/setlocalversion works with too much translated locales ;)\n\n* \u0027kbuild\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:\n  kbuild: Fix reading of .config in link-vmlinux.sh\n  kbuild: Unset language specific variables in setlocalversion script\n  Kbuild: Disable var tracking with CONFIG_DEBUG_INFO_REDUCED\n  depmod: pass -P $CONFIG_SYMBOL_PREFIX\n  kbuild: Fix destination-y for installed headers\n  scripts/link-vmlinux.sh: source variables from KCONFIG_CONFIG\n  kernel: Replace timeconst.pl with a bc script\n  mod/file2alias: make modalias generation safe for cross compiling\n"
    },
    {
      "commit": "70730bca1331fc50c3caacaea00439de1325bd6e",
      "tree": "43c9db2193af32e5aec6794dd67e0ae331380c31",
      "parents": [
        "6543becf26fff612cdadeed7250ccc8d49f67f27"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Thu Feb 14 15:13:55 2013 -0800"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Sat Feb 16 23:17:25 2013 +0100"
      },
      "message": "kernel: Replace timeconst.pl with a bc script\n\nbc is the standard tool for multi-precision arithmetic.  We switched\nto Perl because akpm reported a hard-to-reproduce build hang, which\nwas very odd because affected and unaffected machines were all running\nthe same version of GNU bc.\n\nUnfortunately switching to Perl required a really ugly \"canning\"\nmechanism to support Perl \u003c 5.8 installations lacking the Math::BigInt\nmodule.\n\nIt was recently pointed out to me that some very old versions of GNU\nmake had problems with pipes in subshells, which was indeed the\nconstruct used in the Makefile rules in that version of the patch;\nPerl didn\u0027t need it so switching to Perl fixed the problem for\nunrelated reasons.  With the problem (hopefully) root-caused, we can\nswitch back to bc and do the arbitrary-precision arithmetic naturally.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "227536740e5cb157fb9fa9b381178c7d34b95d3b",
      "tree": "18068d0713e94f543c0c29b93aaca9418926f6f8",
      "parents": [
        "a3535c7e4f4495fe947f7901d25447d80e04fe52"
      ],
      "author": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Fri Jan 25 13:41:00 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 25 16:55:35 2013 +1030"
      },
      "message": "MODSIGN: Simplify Makefile with a Kconfig helper\n\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "7a684c452e2589f3ddd7e2d466b4f747d3715ad9",
      "tree": "fed803e7450770993575b37807ba2195eafd5b0e",
      "parents": [
        "7f2de8171ddf28fdb2ca7f9a683ee1207849f718",
        "e10e1774efbdaec54698454200619a03a01e1d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "message": "Merge tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module update from Rusty Russell:\n \"Nothing all that exciting; a new module-from-fd syscall for those who\n  want to verify the source of the module (ChromeOS) and/or use standard\n  IMA on it or other security hooks.\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  MODSIGN: Fix kbuild output when using default extra_certificates\n  MODSIGN: Avoid using .incbin in C source\n  modules: don\u0027t hand 0 to vmalloc.\n  module: Remove a extra null character at the top of module-\u003estrtab.\n  ASN.1: Use the ASN1_LONG_TAG and ASN1_INDEFINITE_LENGTH constants\n  ASN.1: Define indefinite length marker constant\n  moduleparam: use __UNIQUE_ID()\n  __UNIQUE_ID()\n  MODSIGN: Add modules_sign make target\n  powerpc: add finit_module syscall.\n  ima: support new kernel module syscall\n  add finit_module syscall to asm-generic\n  ARM: add finit_module syscall to ARM\n  security: introduce kernel_module_from_file hook\n  module: add flags arg to sys_finit_module()\n  module: add syscall to load module from fd\n"
    },
    {
      "commit": "e10e1774efbdaec54698454200619a03a01e1d64",
      "tree": "1c2261c2dda60b6d0e3b279e0f317d7b61f93849",
      "parents": [
        "919aa45e43a84d40c27c83f6117cfa6542cee14e"
      ],
      "author": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Dec 11 12:26:22 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:45 2012 +1030"
      },
      "message": "MODSIGN: Fix kbuild output when using default extra_certificates\n\nReported-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\nAcked-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "919aa45e43a84d40c27c83f6117cfa6542cee14e",
      "tree": "5da5152ca40016670a066abd948b0960da2c0d4b",
      "parents": [
        "82fab442f5322b016f72891c0db2436c6a6c20b7"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Dec 11 11:37:13 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Dec 14 13:06:44 2012 +1030"
      },
      "message": "MODSIGN: Avoid using .incbin in C source\n\nUsing the asm .incbin statement in C sources breaks any gcc wrapper which\nassumes that preprocessed C source is self-contained. Use a separate .S\nfile to include the siging key and certificate.\n\n[ This means we no longer need SYMBOL_PREFIX which is defined in kernel.h\n  from cbdbf2abb7844548a7d7a6a2ae7af6b6fbcea401, so I removed it -- RR ]\n\nTested-by: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\n"
    },
    {
      "commit": "630e1e0bcddfda9566462d4f9a0d58b31c29d467",
      "tree": "b09a28cf7b9ff0fee53af2245a7e3f8d006ae091",
      "parents": [
        "7e5530af11be68f3109672aed59243f82e1272f0",
        "91d1aa43d30505b0b825db8898ffc80a8eca96c7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Dec 03 06:27:05 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Dec 03 06:27:05 2012 +0100"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nConflicts:\n\tarch/x86/kernel/ptrace.c\n\nPull the latest RCU tree from Paul E. McKenney:\n\n\"       The major features of this series are:\n\n  1.\tA first version of no-callbacks CPUs.  This version prohibits\n  \tofflining CPU 0, but only when enabled via CONFIG_RCU_NOCB_CPU\u003dy.\n  \tRelaxing this constraint is in progress, but not yet ready\n  \tfor prime time.  These commits were posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/724, and are at branch rcu/nocb.\n\n  2.\tChanges to SRCU that allows statically initialized srcu_struct\n  \tstructures.  These commits were posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/296, and are at branch rcu/srcu.\n\n  3.\tRestructuring of RCU\u0027s debugfs output.  These commits were posted\n  \tto LKML at https://lkml.org/lkml/2012/10/30/341, and are at\n  \tbranch rcu/tracing.\n\n  4.\tAdditional CPU-hotplug/RCU improvements, posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/327, and are at branch rcu/hotplug.\n  \tNote that the commit eliminating __stop_machine() was judged to\n  \tbe too-high of risk, so is deferred to 3.9.\n\n  5.\tChanges to RCU\u0027s idle interface, most notably a new module\n  \tparameter that redirects normal grace-period operations to\n  \ttheir expedited equivalents.  These were posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/739, and are at branch rcu/idle.\n\n  6.\tAdditional diagnostics for RCU\u0027s CPU stall warning facility,\n  \tposted to LKML at https://lkml.org/lkml/2012/10/30/315, and\n  \tare at branch rcu/stall.  The most notable change reduces the\n  \tdefault RCU CPU stall-warning time from 60 seconds to 21 seconds,\n  \tso that it once again happens sooner than the softlockup timeout.\n\n  7.\tDocumentation updates, which were posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/280, and are at branch rcu/doc.\n  \tA couple of late-breaking changes were posted at\n  \thttps://lkml.org/lkml/2012/11/16/634 and\n  \thttps://lkml.org/lkml/2012/11/16/547.\n\n  8.\tMiscellaneous fixes, which were posted to LKML at\n  \thttps://lkml.org/lkml/2012/10/30/309, along with a late-breaking\n  \tchange posted at Fri, 16 Nov 2012 11:26:25 -0800 with message-ID\n  \t\u003c20121116192625.GA447@linux.vnet.ibm.com\u003e, but which lkml.org\n  \tseems to have missed.  These are at branch rcu/fixes.\n\n  9.\tFinally, a fix for an lockdep-RCU splat was posted to LKML\n  \tat https://lkml.org/lkml/2012/11/7/486.  This is at rcu/next. \"\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "91d1aa43d30505b0b825db8898ffc80a8eca96c7",
      "tree": "911636f846d800c8a44efd540842dc726ec7c191",
      "parents": [
        "4e79752c25ec221ac1e28f8875b539ed7631a0db"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Nov 27 19:33:25 2012 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Nov 30 11:40:07 2012 -0800"
      },
      "message": "context_tracking: New context tracking susbsystem\n\nCreate a new subsystem that probes on kernel boundaries\nto keep track of the transitions between level contexts\nwith two basic initial contexts: user or kernel.\n\nThis is an abstraction of some RCU code that use such tracking\nto implement its userspace extended quiescent state.\n\nWe need to pull this up from RCU into this new level of indirection\nbecause this tracking is also going to be used to implement an \"on\ndemand\" generic virtual cputime accounting. A necessary step to\nshutdown the tick while still accounting the cputime.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Gilad Ben-Yossef \u003cgilad@benyossef.com\u003e\nReviewed-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n[ paulmck: fix whitespace error and email address. ]\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2008713c7174e5c0f207bac684c6df0939047009",
      "tree": "0442715e0de7522c33e9f4bc413e32b9fc6202a5",
      "parents": [
        "6bb1e3819c08d640bc7e64fc522d7d8b1bc4d0b9"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Oct 24 14:11:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 25 16:00:53 2012 -0700"
      },
      "message": "Makefile: Documentation for external tool should be correct\n\nIf one includes documentation for an external tool, it should be\ncorrect.  This is not:\n\n1. Overriding the input to rngd should typically be neither\n   necessary nor desired.  This is especially so since newer\n   versions of rngd support a number of different *types* of sources.\n2. The default kernel-exported device is called /dev/hwrng not\n   /dev/hwrandom nor /dev/hw_random (both of which were used in the\n   past; however, kernel and udev seem to have converged on\n   /dev/hwrng.)\n\nOverall it is better if the documentation for rngd is kept with rngd\nrather than in a kernel Makefile.\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jeff Garzik \u003cjgarzik@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d25282d1c9b9bc4cda7f9d3c0205108e99aa7a9d",
      "tree": "f414482d768b015a609924293b779b4ad0b8f764",
      "parents": [
        "b6eea87fc6850d3531a64a27d2323a4498cd4e43",
        "dbadc17683e6c673a69b236c0f041b931cc55c42"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 14 13:39:34 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 14 13:39:34 2012 -0700"
      },
      "message": "Merge branch \u0027modules-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module signing support from Rusty Russell:\n \"module signing is the highlight, but it\u0027s an all-over David Howells frenzy...\"\n\nHmm \"Magrathea: Glacier signing key\". Somebody has been reading too much HHGTTG.\n\n* \u0027modules-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (37 commits)\n  X.509: Fix indefinite length element skip error handling\n  X.509: Convert some printk calls to pr_devel\n  asymmetric keys: fix printk format warning\n  MODSIGN: Fix 32-bit overflow in X.509 certificate validity date checking\n  MODSIGN: Make mrproper should remove generated files.\n  MODSIGN: Use utf8 strings in signer\u0027s name in autogenerated X.509 certs\n  MODSIGN: Use the same digest for the autogen key sig as for the module sig\n  MODSIGN: Sign modules during the build process\n  MODSIGN: Provide a script for generating a key ID from an X.509 cert\n  MODSIGN: Implement module signature checking\n  MODSIGN: Provide module signing public keys to the kernel\n  MODSIGN: Automatically generate module signing keys if missing\n  MODSIGN: Provide Kconfig options\n  MODSIGN: Provide gitignore and make clean rules for extra files\n  MODSIGN: Add FIPS policy\n  module: signature checking hook\n  X.509: Add a crypto key parser for binary (DER) X.509 certificates\n  MPILIB: Provide a function to read raw data into an MPI\n  X.509: Add an ASN.1 decoder\n  X.509: Add simple ASN.1 grammar compiler\n  ...\n"
    },
    {
      "commit": "d5b719365ec13ef825f2548ba54903b9d029238c",
      "tree": "c22d21c4351cb065f2f049a04223dd27fcbf5b6e",
      "parents": [
        "e7d113bcf243a838ba1c32025172ab214349dfad"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 02 14:35:24 2012 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:36 2012 +1030"
      },
      "message": "MODSIGN: Make mrproper should remove generated files.\n\nIt doesn\u0027t, because the clean targets don\u0027t include kernel/Makefile, and\nbecause two files were missing from the list.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "e7d113bcf243a838ba1c32025172ab214349dfad",
      "tree": "1a8830155cc2273388546ba85dba1f0a7f5e6d40",
      "parents": [
        "5e8cb1e441dd74723898cd28fe64af5651023af0"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Sep 28 11:16:57 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:35 2012 +1030"
      },
      "message": "MODSIGN: Use utf8 strings in signer\u0027s name in autogenerated X.509 certs\n\nPlace an indication that the certificate should use utf8 strings into the\nx509.genkey template generated by kernel/Makefile.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "5e8cb1e441dd74723898cd28fe64af5651023af0",
      "tree": "75d771910d536f9a10cf1eab682d1655ec4adcd3",
      "parents": [
        "80d65e58e93ffdabf58202653a0435bd3cf2d82e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Sep 28 11:16:57 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:06:34 2012 +1030"
      },
      "message": "MODSIGN: Use the same digest for the autogen key sig as for the module sig\n\nUse the same digest type for the autogenerated key signature as for the module\nsignature so that the hash algorithm is guaranteed to be present in the kernel.\n\nWithout this, the X.509 certificate loader may reject the X.509 certificate so\ngenerated because it was self-signed and the signature will be checked against\nitself - but this won\u0027t work if the digest algorithm must be loaded as a\nmodule.\n\nThe symptom is that the key fails to load with the following message emitted\ninto the kernel log:\n\n\tMODSIGN: Problem loading in-kernel X.509 certificate (-65)\n\nthe error in brackets being -ENOPKG.  What you should see is something like:\n\n\tMODSIGN: Loaded cert \u0027Magarathea: Glacier signing key: 9588321144239a119d3406d4c4cf1fbae1836fa0\u0027\n\nNote that this doesn\u0027t apply to certificates that are not self-signed as we\ndon\u0027t check those currently as they require the parent CA certificate to be\navailable.\n\nReported-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "631cc66eb9eaa7296e303197ff1eb0f55e32b61d",
      "tree": "631c962060a776a16ec35c477e99d4ef87c8db24",
      "parents": [
        "d441108c6f77541bb66fcd5b3389415b4c232008"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:09:51 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:01:22 2012 +1030"
      },
      "message": "MODSIGN: Provide module signing public keys to the kernel\n\nInclude a PGP keyring containing the public keys required to perform module\nverification in the kernel image during build and create a special keyring\nduring boot which is then populated with keys of crypto type holding the public\nkeys found in the PGP keyring.\n\nThese can be seen by root:\n\n[root@andromeda ~]# cat /proc/keys\n07ad4ee0 I-----     1 perm 3f010000     0     0 crypto    modsign.0: RSA 87b9b3bd []\n15c7f8c3 I-----     1 perm 1f030000     0     0 keyring   .module_sign: 1/4\n...\n\nIt is probably worth permitting root to invalidate these keys, resulting in\ntheir removal and preventing further modules from being loaded with that key.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d441108c6f77541bb66fcd5b3389415b4c232008",
      "tree": "eda7f0ed11d134b992bcb085a4543d63f38def4b",
      "parents": [
        "ea0b6dcf71d216dc11733ac19b26df0f5d0fd6c2"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 26 10:09:51 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:01:21 2012 +1030"
      },
      "message": "MODSIGN: Automatically generate module signing keys if missing\n\nAutomatically generate keys for module signing if they\u0027re absent so that\nallyesconfig doesn\u0027t break.  The builder should consider generating their own\nkey and certificate, however, so that the keys are appropriately named.\n\nThe private key for the module signer should be placed in signing_key.priv\n(unencrypted!) and the public key in an X.509 certificate as signing_key.x509.\n\nIf a transient key is desired for signing the modules, a config file for\n\u0027openssl req\u0027 can be placed in x509.genkey, looking something like the\nfollowing:\n\n\t[ req ]\n\tdefault_bits \u003d 4096\n\tdistinguished_name \u003d req_distinguished_name\n\tprompt \u003d no\n\tx509_extensions \u003d myexts\n\n\t[ req_distinguished_name ]\n\tO \u003d Magarathea\n\tCN \u003d Glacier signing key\n\temailAddress \u003d slartibartfast@magrathea.h2g2\n\n\t[ myexts ]\n\tbasicConstraints\u003dcritical,CA:FALSE\n\tkeyUsage\u003ddigitalSignature\n\tsubjectKeyIdentifier\u003dhash\n\tauthorityKeyIdentifier\u003dhash\n\nThe build process will use this to configure:\n\n\topenssl req -new -nodes -utf8 -sha1 -days 36500 -batch \\\n\t\t-x509 -config x509.genkey \\\n\t\t-outform DER -out signing_key.x509 \\\n\t\t-keyout signing_key.priv\n\nto generate the key.\n\nNote that it is required that the X.509 certificate have a subjectKeyIdentifier\nand an authorityKeyIdentifier.  Without those, the certificate will be\nrejected.  These can be used to check the validity of a certificate.\n\nNote that \u0027make distclean\u0027 will remove signing_key.{priv,x509} and x509.genkey,\nwhether or not they were generated automatically.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "106a4ee258d14818467829bf0e12aeae14c16cd7",
      "tree": "4a5d002eceff4a028ebc8d88223b1ed735bee224",
      "parents": [
        "c26fd69fa00916a31a47f5f096fd7be924106df8"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Sep 26 10:09:40 2012 +0100"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 10 20:00:55 2012 +1030"
      },
      "message": "module: signature checking hook\n\nWe do a very simple search for a particular string appended to the module\n(which is cache-hot and about to be SHA\u0027d anyway).  There\u0027s both a config\noption and a boot parameter which control whether we accept or fail with\nunsigned modules and modules that are signed with an unknown key.\n\nIf module signing is enabled, the kernel will be tainted if a module is\nloaded that is unsigned or has a signature for which we don\u0027t have the\nkey.\n\n(Useful feedback and tweaks by David Howells \u003cdhowells@redhat.com\u003e)\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "7e92daaefa68e5ef1e1732e45231e73adbb724e7",
      "tree": "8e7f8ac9d82654df4c65939c6682f95510e22977",
      "parents": [
        "7a68294278ae714ce2632a54f0f46916dca64f56",
        "1d787d37c8ff6612b8151c6dff15bfa7347bcbdf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 01 10:28:49 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 01 10:28:49 2012 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull perf update from Ingo Molnar:\n \"Lots of changes in this cycle as well, with hundreds of commits from\n  over 30 contributors.  Most of the activity was on the tooling side.\n\n  Higher level changes:\n\n   - New \u0027perf kvm\u0027 analysis tool, from Xiao Guangrong.\n\n   - New \u0027perf trace\u0027 system-wide tracing tool\n\n   - uprobes fixes + cleanups from Oleg Nesterov.\n\n   - Lots of patches to make perf build on Android out of box, from\n     Irina Tirdea\n\n   - Extend ftrace function tracing utility to be more dynamic for its\n     users.  It allows for data passing to the callback functions, as\n     well as reading regs as if a breakpoint were to trigger at function\n     entry.\n\n     The main goal of this patch series was to allow kprobes to use\n     ftrace as an optimized probe point when a probe is placed on an\n     ftrace nop.  With lots of help from Masami Hiramatsu, and going\n     through lots of iterations, we finally came up with a good\n     solution.\n\n   - Add cpumask for uncore pmu, use it in \u0027stat\u0027, from Yan, Zheng.\n\n   - Various tracing updates from Steve Rostedt\n\n   - Clean up and improve \u0027perf sched\u0027 performance by elliminating lots\n     of needless calls to libtraceevent.\n\n   - Event group parsing support, from Jiri Olsa\n\n   - UI/gtk refactorings and improvements from Namhyung Kim\n\n   - Add support for non-tracepoint events in perf script python, from\n     Feng Tang\n\n   - Add --symbols to \u0027script\u0027, similar to the one in \u0027report\u0027, from\n     Feng Tang.\n\n  Infrastructure enhancements and fixes:\n\n   - Convert the trace builtins to use the growing evsel/evlist\n     tracepoint infrastructure, removing several open coded constructs\n     like switch like series of strcmp to dispatch events, etc.\n     Basically what had already been showcased in \u0027perf sched\u0027.\n\n   - Add evsel constructor for tracepoints, that uses libtraceevent just\n     to parse the /format events file, use it in a new \u0027perf test\u0027 to\n     make sure the libtraceevent format parsing regressions can be more\n     readily caught.\n\n   - Some strange errors were happening in some builds, but not on the\n     next, reported by several people, problem was some parser related\n     files, generated during the build, didn\u0027t had proper make deps, fix\n     from Eric Sandeen.\n\n   - Introduce struct and cache information about the environment where\n     a perf.data file was captured, from Namhyung Kim.\n\n   - Fix handling of unresolved samples when --symbols is used in\n     \u0027report\u0027, from Feng Tang.\n\n   - Add union member access support to \u0027probe\u0027, from Hyeoncheol Lee.\n\n   - Fixups to die() removal, from Namhyung Kim.\n\n   - Render fixes for the TUI, from Namhyung Kim.\n\n   - Don\u0027t enable annotation in non symbolic view, from Namhyung Kim.\n\n   - Fix pipe mode in \u0027report\u0027, from Namhyung Kim.\n\n   - Move related stats code from stat to util/, will be used by the\n     \u0027stat\u0027 kvm tool, from Xiao Guangrong.\n\n   - Remove die()/exit() calls from several tools.\n\n   - Resolve vdso callchains, from Jiri Olsa\n\n   - Don\u0027t pass const char pointers to basename, so that we can\n     unconditionally use libgen.h and thus avoid ifdef BIONIC lines,\n     from David Ahern\n\n   - Refactor hist formatting so that it can be reused with the GTK\n     browser, From Namhyung Kim\n\n   - Fix build for another rbtree.c change, from Adrian Hunter.\n\n   - Make \u0027perf diff\u0027 command work with evsel hists, from Jiri Olsa.\n\n   - Use the only field_sep var that is set up: symbol_conf.field_sep,\n     fix from Jiri Olsa.\n\n   - .gitignore compiled python binaries, from Namhyung Kim.\n\n   - Get rid of die() in more libtraceevent places, from Namhyung Kim.\n\n   - Rename libtraceevent \u0027private\u0027 struct member to \u0027priv\u0027 so that it\n     works in C++, from Steven Rostedt\n\n   - Remove lots of exit()/die() calls from tools so that the main perf\n     exit routine can take place, from David Ahern\n\n   - Fix x86 build on x86-64, from David Ahern.\n\n   - {int,str,rb}list fixes from Suzuki K Poulose\n\n   - perf.data header fixes from Namhyung Kim\n\n   - Allow user to indicate objdump path, needed in cross environments,\n     from Maciek Borzecki\n\n   - Fix hardware cache event name generation, fix from Jiri Olsa\n\n   - Add round trip test for sw, hw and cache event names, catching the\n     problem Jiri fixed, after Jiri\u0027s patch, the test passes\n     successfully.\n\n   - Clean target should do clean for lib/traceevent too, fix from David\n     Ahern\n\n   - Check the right variable for allocation failure, fix from Namhyung\n     Kim\n\n   - Set up evsel-\u003etp_format regardless of evsel-\u003ename being set\n     already, fix from Namhyung Kim\n\n   - Oprofile fixes from Robert Richter.\n\n   - Remove perf_event_attr needless version inflation, from Jiri Olsa\n\n   - Introduce libtraceevent strerror like error reporting facility,\n     from Namhyung Kim\n\n   - Add pmu mappings to perf.data header and use event names from cmd\n     line, from Robert Richter\n\n   - Fix include order for bison/flex-generated C files, from Ben\n     Hutchings\n\n   - Build fixes and documentation corrections from David Ahern\n\n   - Assorted cleanups from Robert Richter\n\n   - Let O\u003d makes handle relative paths, from Steven Rostedt\n\n   - perf script python fixes, from Feng Tang.\n\n   - Initial bash completion support, from Frederic Weisbecker\n\n   - Allow building without libelf, from Namhyung Kim.\n\n   - Support DWARF CFI based unwind to have callchains when %bp based\n     unwinding is not possible, from Jiri Olsa.\n\n   - Symbol resolution fixes, while fixing support PPC64 files with an\n     .opt ELF section was the end goal, several fixes for code that\n     handles all architectures and cleanups are included, from Cody\n     Schafer.\n\n   - Assorted fixes for Documentation and build in 32 bit, from Robert\n     Richter\n\n   - Cache the libtraceevent event_format associated to each evsel\n     early, so that we avoid relookups, i.e.  calling pevent_find_event\n     repeatedly when processing tracepoint events.\n\n     [ This is to reduce the surface contact with libtraceevents and\n        make clear what is that the perf tools needs from that lib: so\n        far parsing the common and per event fields.  ]\n\n   - Don\u0027t stop the build if the audit libraries are not installed, fix\n     from Namhyung Kim.\n\n   - Fix bfd.h/libbfd detection with recent binutils, from Markus\n     Trippelsdorf.\n\n   - Improve warning message when libunwind devel packages not present,\n     from Jiri Olsa\"\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (282 commits)\n  perf trace: Add aliases for some syscalls\n  perf probe: Print an enum type variable in \"enum variable-name\" format when showing accessible variables\n  perf tools: Check libaudit availability for perf-trace builtin\n  perf hists: Add missing period_* fields when collapsing a hist entry\n  perf trace: New tool\n  perf evsel: Export the event_format constructor\n  perf evsel: Introduce rawptr() method\n  perf tools: Use perf_evsel__newtp in the event parser\n  perf evsel: The tracepoint constructor should store sys:name\n  perf evlist: Introduce set_filter() method\n  perf evlist: Renane set_filters method to apply_filters\n  perf test: Add test to check we correctly parse and match syscall open parms\n  perf evsel: Handle endianity in intval method\n  perf evsel: Know if byte swap is needed\n  perf tools: Allow handling a NULL cpu_map as meaning \"all cpus\"\n  perf evsel: Improve tracepoint constructor setup\n  tools lib traceevent: Fix error path on pevent_parse_event\n  perf test: Fix build failure\n  trace: Move trace event enable from fs_initcall to core_initcall\n  tracing: Add an option for disabling markers\n  ...\n"
    },
    {
      "commit": "ea632e9f12033346cc68247faa3b924d54936b8b",
      "tree": "b87fe48b7127a8d890ba7073fd460a1c99b0c831",
      "parents": [
        "76bab1b78ab6f25d5f74165f94526c25fc93d984"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Sun Sep 02 19:45:14 2012 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Sep 13 22:52:08 2012 -0400"
      },
      "message": "trace: Stop compiling in trace_clock unconditionally\n\nCommit 56449f437 \"tracing: make the trace clocks available generally\",\nin April 2009, made trace_clock available unconditionally, since\nCONFIG_X86_DS used it too.\n\nCommit faa4602e47 \"x86, perf, bts, mm: Delete the never used BTS-ptrace code\",\nin March 2010, removed CONFIG_X86_DS, and now only CONFIG_RING_BUFFER (split\nout from CONFIG_TRACING for general use) has a dependency on trace_clock. So,\nonly compile in trace_clock with CONFIG_RING_BUFFER or CONFIG_TRACING\nenabled.\n\nLink: http://lkml.kernel.org/r/20120903024513.GA19583@leaf\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3180d89b47701072cf129f800a735baf3acdbb8a",
      "tree": "345dea7130831f61095e6a55db6723a11f7f433c",
      "parents": [
        "f97f8f06a49febbc3cb3635172efbe64ddc79700"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Thu Jul 12 01:55:54 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Aug 13 17:01:07 2012 +0200"
      },
      "message": "hotplug: Fix UP bug in smpboot hotplug code\n\nBecause kernel subsystems need their per-CPU kthreads on UP systems as\nwell as on SMP systems, the smpboot hotplug kthread functions must be\nprovided in UP builds as well as in SMP builds.  This commit therefore\nadds smpboot.c to UP builds and excludes irrelevant code via #ifdef.\n    \nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1193755ac6328ad240ba987e6ec41d5e8baf0680",
      "tree": "40bf847d7e3ebaa57b107151d14e6cd1d280cc6d",
      "parents": [
        "4edebed86690eb8db9af3ab85baf4a34e73266cc",
        "0ef97dcfce4179a2eba046b855ee2f91d6f1b414"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 01 10:34:35 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jun 01 10:34:35 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs changes from Al Viro.\n \"A lot of misc stuff.  The obvious groups:\n   * Miklos\u0027 atomic_open series; kills the damn abuse of\n     -\u003ed_revalidate() by NFS, which was the major stumbling block for\n     all work in that area.\n   * ripping security_file_mmap() and dealing with deadlocks in the\n     area; sanitizing the neighborhood of vm_mmap()/vm_munmap() in\n     general.\n   * -\u003eencode_fh() switched to saner API; insane fake dentry in\n     mm/cleancache.c gone.\n   * assorted annotations in fs (endianness, __user)\n   * parts of Artem\u0027s -\u003es_dirty work (jff2 and reiserfs parts)\n   * -\u003eupdate_time() work from Josef.\n   * other bits and pieces all over the place.\n\n  Normally it would\u0027ve been in two or three pull requests, but\n  signal.git stuff had eaten a lot of time during this cycle ;-/\"\n\nFix up trivial conflicts in Documentation/filesystems/vfs.txt (the\n\u0027truncate_range\u0027 inode method was removed by the VM changes, the VFS\nupdate adds an \u0027update_time()\u0027 method), and in fs/btrfs/ulist.[ch] (due\nto sparse fix added twice, with other changes nearby).\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (95 commits)\n  nfs: don\u0027t open in -\u003ed_revalidate\n  vfs: retry last component if opening stale dentry\n  vfs: nameidata_to_filp(): don\u0027t throw away file on error\n  vfs: nameidata_to_filp(): inline __dentry_open()\n  vfs: do_dentry_open(): don\u0027t put filp\n  vfs: split __dentry_open()\n  vfs: do_last() common post lookup\n  vfs: do_last(): add audit_inode before open\n  vfs: do_last(): only return EISDIR for O_CREAT\n  vfs: do_last(): check LOOKUP_DIRECTORY\n  vfs: do_last(): make ENOENT exit RCU safe\n  vfs: make follow_link check RCU safe\n  vfs: do_last(): use inode variable\n  vfs: do_last(): inline walk_component()\n  vfs: do_last(): make exit RCU safe\n  vfs: split do_lookup()\n  Btrfs: move over to use -\u003eupdate_time\n  fs: introduce inode operation -\u003eupdate_time\n  reiserfs: get rid of resierfs_sync_super\n  reiserfs: mark the superblock as dirty a bit later\n  ...\n"
    },
    {
      "commit": "fb21affa49204acd409328415b49bfe90136653c",
      "tree": "3535dbe0c0aad049a38cadfcffe78409397a1b32",
      "parents": [
        "a00b6151a2ae4c52576c35d3998e144a993d50b8",
        "f23ca335462e3c84f13270b9e65f83936068ec2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 18:47:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 18:47:30 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal\n\nPull second pile of signal handling patches from Al Viro:\n \"This one is just task_work_add() series + remaining prereqs for it.\n\n  There probably will be another pull request from that tree this\n  cycle - at least for helpers, to get them out of the way for per-arch\n  fixes remaining in the tree.\"\n\nFix trivial conflict in kernel/irq/manage.c: the merge of Andrew\u0027s pile\nhad brought in commit 97fd75b7b8e0 (\"kernel/irq/manage.c: use the\npr_foo() infrastructure to prefix printks\") which changed one of the\npr_err() calls that this merge moves around.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:\n  keys: kill task_struct-\u003ereplacement_session_keyring\n  keys: kill the dummy key_replace_session_keyring()\n  keys: change keyctl_session_to_parent() to use task_work_add()\n  genirq: reimplement exit_irq_thread() hook via task_work_add()\n  task_work_add: generic process-context callbacks\n  avr32: missed _TIF_NOTIFY_RESUME on one of do_notify_resume callers\n  parisc: need to check NOTIFY_RESUME when exiting from syscall\n  move key_repace_session_keyring() into tracehook_notify_resume()\n  TIF_NOTIFY_RESUME is defined on all targets now\n"
    },
    {
      "commit": "d97b46a64674a267bc41c9e16132ee2a98c3347d",
      "tree": "316f77d212c84aef226684eb05d5d33f40743ac9",
      "parents": [
        "818411616baf46ceba0cff6f05af3a9b294734f7"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu May 31 16:26:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 31 17:49:32 2012 -0700"
      },
      "message": "syscalls, x86: add __NR_kcmp syscall\n\nWhile doing the checkpoint-restore in the user space one need to determine\nwhether various kernel objects (like mm_struct-s of file_struct-s) are\nshared between tasks and restore this state.\n\nThe 2nd step can be solved by using appropriate CLONE_ flags and the\nunshare syscall, while there\u0027s currently no ways for solving the 1st one.\n\nOne of the ways for checking whether two tasks share e.g.  mm_struct is to\nprovide some mm_struct ID of a task to its proc file, but showing such\ninfo considered to be not that good for security reasons.\n\nThus after some debates we end up in conclusion that using that named\n\u0027comparison\u0027 syscall might be the best candidate.  So here is it --\n__NR_kcmp.\n\nIt takes up to 5 arguments - the pids of the two tasks (which\ncharacteristics should be compared), the comparison type and (in case of\ncomparison of files) two file descriptors.\n\nLookups for pids are done in the caller\u0027s PID namespace only.\n\nAt moment only x86 is supported and tested.\n\n[akpm@linux-foundation.org: fix up selftests, warnings]\n[akpm@linux-foundation.org: include errno.h]\n[akpm@linux-foundation.org: tweak comment text]\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nCc: Pekka Enberg \u003cpenberg@kernel.org\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Valdis.Kletnieks@vt.edu\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: Frederic Weisbecker \u003cfweisbec@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": "eea62f831b8030b0eeea8314eed73b6132d1de26",
      "tree": "7fd58cf63e62484b8d3a0c8c5d2e9193b85945a4",
      "parents": [
        "9dd6fa03ab31bb57cee4623a689d058d222fbe68"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Tue May 08 13:32:24 2012 +0930"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue May 29 23:28:41 2012 -0400"
      },
      "message": "brlocks/lglocks: turn into functions\n\nlglocks and brlocks are currently generated with some complicated macros\nin lglock.h.  But there\u0027s no reason to not just use common utility\nfunctions and put all the data into a common data structure.\n\nSince there are at least two users it makes sense to share this code in a\nlibrary.  This is also easier maintainable than a macro forest.\n\nThis will also make it later possible to dynamically allocate lglocks and\nalso use them in modules (this would both still need some additional, but\nnow straightforward, code)\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e73f8959af0439d114847eab5a8a5ce48f1217c4",
      "tree": "47f056093590a5e5552e3a75f163e1f798063bda",
      "parents": [
        "62366c88b29c5a32e1531142092f98eaf49b1103"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri May 11 10:59:07 2012 +1000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed May 23 22:09:21 2012 -0400"
      },
      "message": "task_work_add: generic process-context callbacks\n\nProvide a simple mechanism that allows running code in the (nonatomic)\ncontext of the arbitrary task.\n\nThe caller does task_work_add(task, task_work) and this task executes\ntask_work-\u003efunc() either from do_notify_resume() or from do_exit().  The\ncallback can rely on PF_EXITING to detect the latter case.\n\n\"struct task_work\" can be embedded in another struct, still it has \"void\n*data\" to handle the most common/simple case.\n\nThis allows us to kill the -\u003ereplacement_session_keyring hack, and\npotentially this can have more users.\n\nPerformance-wise, this adds 2 \"unlikely(!hlist_empty())\" checks into\ntracehook_notify_resume() and do_exit().  But at the same time we can\nremove the \"replacement_session_keyring !\u003d NULL\" checks from\narch/*/signal.c and exit_creds().\n\nNote: task_work_add/task_work_run abuses -\u003epi_lock.  This is only because\nthis lock is already used by lookup_pi_state() to synchronize with\ndo_exit() setting PF_EXITING.  Fortunately the scope of this lock in\ntask_work.c is really tiny, and the code is unlikely anyway.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Alexander Gordeev \u003cagordeev@redhat.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: David Smith \u003cdsmith@redhat.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "38498a67aa2cf8c80754b8d304bfacc10bc582b5",
      "tree": "5d1d5ff7fd9b847454f9d5053ad0709ffb3cc32c",
      "parents": [
        "8239c25f47d2b318156993b15f33900a86ea5e17"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 20 13:05:44 2012 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Apr 26 12:06:09 2012 +0200"
      },
      "message": "smp: Add generic smpboot facility\n\nStart a new file, which will hold SMP and CPU hotplug related generic\ninfrastructure.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: James E.J. Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: x86@kernel.org\nLink: http://lkml.kernel.org/r/20120420124557.035417523@linutronix.de\n\n"
    },
    {
      "commit": "1f87f0b52b1d6581168cb80f86746bc4df918d01",
      "tree": "73576c0872c61c526ade225d6441a6610beb666b",
      "parents": [
        "de4e83bd6b5e16d491ec068cd22801d5d063b07a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Jan 06 04:07:15 2012 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jan 24 16:37:54 2012 -0800"
      },
      "message": "sysctl: Move the implementation into fs/proc/proc_sysctl.c\n\nMove the core sysctl code from kernel/sysctl.c and kernel/sysctl_check.c\ninto fs/proc/proc_sysctl.c.\n\nCurrently sysctl maintenance is hampered by the sysctl implementation\nbeing split across 3 files with artificial layering between them.\nConsolidate the entire sysctl implementation into 1 file so that\nit is easier to see what is going on and hopefully allowing for\nsimpler maintenance.\n\nFor functions that are now only used in fs/proc/proc_sysctl.c remove\ntheir declarations from sysctl.h and make them static in fs/proc/proc_sysctl.c\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "dae5cbc2440b1d21a15715d0f1fb20f632dd38ee",
      "tree": "7cfb0b0cddcaff333bef271c54406bbdc505a75b",
      "parents": [
        "96e80a7851b44f3decaac0625665cd64e550b71d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:33:03 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:33:03 2012 +0100"
      },
      "message": "PM: Make sysrq-o be available for CONFIG_PM unset\n\nAfter commit 1eb208aea3179dd2fc0cdeea45ef869d75b4fe70, \"PM: Make\nCONFIG_PM depend on (CONFIG_PM_SLEEP || CONFIG_PM_RUNTIME)\", the\nfiles under kernel/power are not built unless CONFIG_PM_SLEEP or\nCONFIG_PM_RUNTIME is set.  In particular, this causes\nkernel/power/poweroff.c to be omitted, even though it should be\ncompiled, because CONFIG_MAGIC_SYSRQ is set.\n\nFix the problem by causing kernel/power/Makefile to be processed\nfor CONFIG_PM unset too.\n\nReported-and-tested-by: Phil Oester \u003ckernel@linuxace.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "391e43da797a96aeb65410281891f6d0b0e9611c",
      "tree": "0ce6784525a5a8f75b377170cf1a7d60abccea29",
      "parents": [
        "029632fbb7b7c9d85063cc9eb470de6c54873df3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 15 17:14:39 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 17 12:20:22 2011 +0100"
      },
      "message": "sched: Move all scheduler bits into kernel/sched/\n\nThere\u0027s too many sched*.[ch] files in kernel/, give them their own\ndirectory.\n\n(No code changed, other than Makefile glue added.)\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "029632fbb7b7c9d85063cc9eb470de6c54873df3",
      "tree": "511303f0fa32f997c4b2f68364b032555b6a642e",
      "parents": [
        "60686317da05049385eae86e44c710cde535f95f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 25 10:00:11 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 17 12:20:19 2011 +0100"
      },
      "message": "sched: Make separate sched*.c translation units\n\nSince once needs to do something at conferences and fixing compile\nwarnings doesn\u0027t actually require much if any attention I decided\nto break up the sched.c #include \"*.c\" fest.\n\nThis further modularizes the scheduler code.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-x0fcd3mnp8f9c99grcpewmhi@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fdb24e969110fafea36d3b393bea438f702c87f",
      "tree": "47a1dfef8a259e7922285315f8a02d31b4efe2f1",
      "parents": [
        "f362f98e7c445643d27c610bb7a86b79727b592e",
        "531a6a941745e1e045dd2a6bd09e1dc01247a5f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 12:02:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 12:02:27 2011 -0700"
      },
      "message": "Merge branch \u0027devel-stable\u0027 of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm\n\n* \u0027devel-stable\u0027 of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (178 commits)\n  ARM: 7139/1: fix compilation with CONFIG_ARM_ATAG_DTB_COMPAT and large TEXT_OFFSET\n  ARM: gic, local timers: use the request_percpu_irq() interface\n  ARM: gic: consolidate PPI handling\n  ARM: switch from NO_MACH_MEMORY_H to NEED_MACH_MEMORY_H\n  ARM: mach-s5p64x0: remove mach/memory.h\n  ARM: mach-s3c64xx: remove mach/memory.h\n  ARM: plat-mxc: remove mach/memory.h\n  ARM: mach-prima2: remove mach/memory.h\n  ARM: mach-zynq: remove mach/memory.h\n  ARM: mach-bcmring: remove mach/memory.h\n  ARM: mach-davinci: remove mach/memory.h\n  ARM: mach-pxa: remove mach/memory.h\n  ARM: mach-ixp4xx: remove mach/memory.h\n  ARM: mach-h720x: remove mach/memory.h\n  ARM: mach-vt8500: remove mach/memory.h\n  ARM: mach-s5pc100: remove mach/memory.h\n  ARM: mach-tegra: remove mach/memory.h\n  ARM: plat-tcc: remove mach/memory.h\n  ARM: mach-mmp: remove mach/memory.h\n  ARM: mach-cns3xxx: remove mach/memory.h\n  ...\n\nFix up mostly pretty trivial conflicts in:\n - arch/arm/Kconfig\n - arch/arm/include/asm/localtimer.h\n - arch/arm/kernel/Makefile\n - arch/arm/mach-shmobile/board-ap4evb.c\n - arch/arm/mach-u300/core.c\n - arch/arm/mm/dma-mapping.c\n - arch/arm/mm/proc-v7.S\n - arch/arm/plat-omap/Kconfig\nlargely due to some CONFIG option renaming (ie CONFIG_PM_SLEEP -\u003e\nCONFIG_ARM_CPU_SUSPEND for the arm-specific suspend code etc) and\naddition of NEED_MACH_MEMORY_H next to HAVE_IDE.\n"
    },
    {
      "commit": "ab10023e0088d5075354afc7cb9e72304757dddd",
      "tree": "5e8424c9818056335baeefcddab18b0600417053",
      "parents": [
        "b6fd41e29dea9c6753b1843a77e50433e6123bcb"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Feb 10 02:04:45 2011 -0800"
      },
      "committer": {
        "name": "Santosh Shilimkar",
        "email": "santosh.shilimkar@ti.com",
        "time": "Fri Sep 23 12:05:29 2011 +0530"
      },
      "message": "cpu_pm: Add cpu power management notifiers\n\nDuring some CPU power modes entered during idle, hotplug and\nsuspend, peripherals located in the CPU power domain, such as\nthe GIC, localtimers, and VFP, may be powered down.  Add a\nnotifier chain that allows drivers for those peripherals to\nbe notified before and after they may be reset.\n\nNotified drivers can include VFP co-processor, interrupt controller\nand it\u0027s PM extensions, local CPU timers context save/restore which\nshouldn\u0027t be interrupted. Hence CPU PM event APIs  must be called\nwith interrupts disabled.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\nSigned-off-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nReviewed-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nTested-and-Acked-by: Shawn Guo \u003cshawn.guo@linaro.org\u003e\nTested-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nTested-by: Vishwanath BS \u003cvishwanath.bs@ti.com\u003e\n"
    },
    {
      "commit": "e8db0be1245de16a6cc6365506abc392c3c212d4",
      "tree": "01cf446568080c06c8797262554f3b0f758ae137",
      "parents": [
        "b5e8d269d814763d597ccc0108d1fa6639ad35a1"
      ],
      "author": {
        "name": "Jean Pihet",
        "email": "j-pihet@ti.com",
        "time": "Thu Aug 25 15:35:03 2011 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Aug 25 15:35:03 2011 +0200"
      },
      "message": "PM QoS: Move and rename the implementation files\n\nThe PM QoS implementation files are better named\nkernel/power/qos.c and include/linux/pm_qos.h.\n\nThe PM QoS support is compiled under the CONFIG_PM option.\n\nSigned-off-by: Jean Pihet \u003cj-pihet@ti.com\u003e\nAcked-by: markgross \u003cmarkgross@thegnar.org\u003e\nReviewed-by: Kevin Hilman \u003ckhilman@ti.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "b77f0f3c1f587791aa5d9bd1b0012c9a89eb9258",
      "tree": "994a1acc79d69ae13caa965df035ae5da1828fb3",
      "parents": [
        "6d158f3ec537bd6d3786196b6db97fcc0f973aef"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Aug 05 16:40:40 2011 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 05 23:57:33 2011 +0200"
      },
      "message": "jump label: Reduce the cycle count by changing the link order\n\nIn the course of testing jump labels for use with the CFS\nbandwidth controller, Paul Turner, discovered that using jump\nlabels reduced the branch count and the instruction count, but\ndid not reduce the cycle count or wall time.\n\nI noticed that having the jump_label.o included in the kernel\nbut not used in any way still caused this increase in cycle\ncount and wall time. Thus, I moved jump_label.o in the\nkernel/Makefile, thus changing the link order, and presumably\nmoving it out of hot icache areas. This brought down the cycle\ncount/time as expected.\n\nIn addition to Paul\u0027s testing,  I\u0027ve tested the patch using a\nsingle \u0027static_branch()\u0027 in the getppid() path, and basically\nrunning tight loops of calls to getppid(). Here are my results\nfor the branch disabled case:\n\nWith jump labels turned on (CONFIG_JUMP_LABEL), branch disabled:\n\n Performance counter stats for \u0027bash -c /tmp/getppid;true\u0027 (50 runs):\n\n     3,969,510,217 instructions             #\t   0.864 IPC     ( +-0.000% )\n     4,592,334,954 cycles                     ( +-   0.046% )\n       751,634,470 branches                   ( +-   0.000% )\n\n        1.722635797  seconds time elapsed   ( +-   0.046% )\n\nJump labels turned off (CONFIG_JUMP_LABEL not set), branch\ndisabled:\n\n Performance counter stats for \u0027bash -c /tmp/getppid;true\u0027 (50 runs):\n\n     4,009,611,846 instructions             #\t   0.867 IPC     ( +-0.000% )\n     4,622,210,580 cycles                     ( +-   0.012% )\n       771,662,904 branches                   ( +-   0.000% )\n\n        1.734341454  seconds time elapsed   ( +-   0.022% )\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: rth@redhat.com\nCc: a.p.zijlstra@chello.nl\nCc: rostedt@goodmis.org\nLink: http://lkml.kernel.org/r/20110805204040.GG2522@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nTested-by: Paul Turner \u003cpjt@google.com\u003e\n"
    },
    {
      "commit": "e78e8f2d8318851d0911039999c903a6082bef2e",
      "tree": "6de5c0c1fd3219985116b2225448c0c0f8a23093",
      "parents": [
        "f210735fe2f17a6225432ee3d1239bcf23a8659c"
      ],
      "author": {
        "name": "Peter Foley",
        "email": "pefoley2@verizon.net",
        "time": "Tue Jul 05 19:42:18 2011 -0400"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Jul 20 01:32:32 2011 +0200"
      },
      "message": "kernel: prevent unnecessary rebuilding due to config_data.gz\n\nWhen IKCONFIG is built-in make oldconfig will cause the kernel to be\nrelinked even if .config didn\u0027t change. This happens because of a\nconfig_data.gz dependency on .config. This patch changes the if_changed\nto a filechk so that config_data.h is only rebuilt when the contents\nhave actually changed.\n\nSigned-off-by: Peter Foley \u003cpefoley2@verizon.net\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "a77aea92010acf54ad785047234418d5d68772e2",
      "tree": "c7cb57b62fd02bee2baceb79251923f7caec6139",
      "parents": [
        "d846687d7f84e45f23ecf3846dbb43312a1206dd"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "daniel.lezcano@free.fr",
        "time": "Thu May 26 16:25:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroup: remove the ns_cgroup\n\nThe ns_cgroup is an annoying cgroup at the namespace / cgroup frontier and\nleads to some problems:\n\n  * cgroup creation is out-of-control\n  * cgroup name can conflict when pids are looping\n  * it is not possible to have a single process handling a lot of\n    namespaces without falling in a exponential creation time\n  * we may want to create a namespace without creating a cgroup\n\n  The ns_cgroup was replaced by a compatibility flag \u0027clone_children\u0027,\n  where a newly created cgroup will copy the parent cgroup values.\n  The userspace has to manually create a cgroup and add a task to\n  the \u0027tasks\u0027 file.\n\nThis patch removes the ns_cgroup as suggested in the following thread:\n\nhttps://lists.linux-foundation.org/pipermail/containers/2009-June/018616.html\n\nThe \u0027cgroup_clone\u0027 function is removed because it is no longer used.\n\nThis is a userspace-visible change.  Commit 45531757b45c (\"cgroup: notify\nns_cgroup deprecated\") (merged into 2.6.27) caused the kernel to emit a\nprintk warning users that the feature is planned for removal.  Since that\ntime we have heard from XXX users who were affected by this.\n\nSigned-off-by: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48dbb6dc86ca5d1b2224937d774c7ba98bc3a485",
      "tree": "7c1aaae9ebb6554b0ef2a48aeab158c1a0466655",
      "parents": [
        "fae85b7c8bcc7de9c0a2698587e20c15beb7d5a6"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue May 03 15:26:43 2011 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue May 03 15:26:43 2011 +0200"
      },
      "message": "hw breakpoints: Move to kernel/events/\n\nAs part of the events sybsystem unification, relocate hw_breakpoint.c\ninto its new destination.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "fae85b7c8bcc7de9c0a2698587e20c15beb7d5a6",
      "tree": "96ea37ea08d52b2ef89f823f6e43ba8b15cc66bb",
      "parents": [
        "ac0a3260f37b8616da8d33488ec94b94e6ae5b31"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Oct 26 20:24:03 2010 +0200"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue May 03 12:59:43 2011 +0200"
      },
      "message": "perf: Start the restructuring\n\nmv kernel/perf_event.c -\u003e kernel/events/core.c. From there, all further\nsensible splitting can happen. The idea is that due to perf_event.c\nbecoming pretty sizable and with the advent of the marriage with ftrace,\nsplitting functionality into its logical parts should help speeding up\nthe unification and to manage the complexity of the subsystem.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "93a72052be81823fa1584b9be037d51924f9efa4",
      "tree": "4f5c824c8fe3fb737e27b91bfd60c10d092dc3e9",
      "parents": [
        "8547727756a7322b99aa313ce50fe15d8f858872"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olaf@aepfle.de",
        "time": "Wed Mar 23 16:43:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 23 19:47:19 2011 -0700"
      },
      "message": "crash_dump: export is_kdump_kernel to modules, consolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn\n\nThe Xen PV drivers in a crashed HVM guest can not connect to the dom0\nbackend drivers because both frontend and backend drivers are still in\nconnected state.  To run the connection reset function only in case of a\ncrashdump, the is_kdump_kernel() function needs to be available for the PV\ndriver modules.\n\nConsolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn into\nkernel/crash_dump.c Also export elfcorehdr_addr to make is_kdump_kernel()\nusable for modules.\n\nLeave \u0027elfcorehdr\u0027 as early_param().  This changes powerpc from __setup()\nto early_param().  It adds an address range check from x86 also on ia64\nand powerpc.\n\n[akpm@linux-foundation.org: additional #includes]\n[akpm@linux-foundation.org: remove elfcorehdr_addr export]\n[akpm@linux-foundation.org: fix for Tejun\u0027s mm/nobootmem.c changes]\nSigned-off-by: Olaf Hering \u003colaf@aepfle.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "351f8f8e6499ae4fff40f5e3a8fe16d9e1903646",
      "tree": "9393c8d3a6a1eaa9dba50932eb6de3017a8afe86",
      "parents": [
        "b8cb464e4a8abc60ad5a43e0375fec8a3c728167"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Wed Jan 12 16:59:39 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 13 08:03:08 2011 -0800"
      },
      "message": "kernel: clean up USE_GENERIC_SMP_HELPERS\n\nFor arch which needs USE_GENERIC_SMP_HELPERS, it has to select\nUSE_GENERIC_SMP_HELPERS, rather than leaving a choice to user, since they\ndon\u0027t provide their own implementions.\n\nAlso, move on_each_cpu() to kernel/smp.c, it is strange to put it in\nkernel/softirq.c.\n\nFor arch which doesn\u0027t use USE_GENERIC_SMP_HELPERS, e.g.  blackfin, only\non_each_cpu() is compiled.\n\nSigned-off-by: Amerigo Wang \u003camwang@redhat.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\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": "42776163e13a56ea3096edff7a5df95408e80eb4",
      "tree": "92f17bb5dadc7261b2d9238244cd8d4cb6c1bfd7",
      "parents": [
        "edb2877f4a62647e36e20839a786f94d688a06ed",
        "3d03e2ea74103a50c23d6ab1906cf73399c0dafb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 11 11:02:13 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 11 11:02:13 2011 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (28 commits)\n  perf session: Fix infinite loop in __perf_session__process_events\n  perf evsel: Support perf_evsel__open(cpus \u003e 1 \u0026\u0026 threads \u003e 1)\n  perf sched: Use PTHREAD_STACK_MIN to avoid pthread_attr_setstacksize() fail\n  perf tools: Emit clearer message for sys_perf_event_open ENOENT return\n  perf stat: better error message for unsupported events\n  perf sched: Fix allocation result check\n  perf, x86: P4 PMU - Fix unflagged overflows handling\n  dynamic debug: Fix build issue with older gcc\n  tracing: Fix TRACE_EVENT power tracepoint creation\n  tracing: Fix preempt count leak\n  tracepoint: Add __rcu annotation\n  tracing: remove duplicate null-pointer check in skb tracepoint\n  tracing/trivial: Add missing comma in TRACE_EVENT comment\n  tracing: Include module.h in define_trace.h\n  x86: Save rbp in pt_regs on irq entry\n  x86, dumpstack: Fix unused variable warning\n  x86, NMI: Clean-up default_do_nmi()\n  x86, NMI: Allow NMI reason io port (0x61) to be processed on any CPU\n  x86, NMI: Remove DIE_NMI_IPI\n  x86, NMI: Add priorities to handlers\n  ...\n"
    },
    {
      "commit": "870915e047a2da695be118d32dd5a900f0c3e933",
      "tree": "5d816db36d55d7b78b58dbb1d60a127d528ebb06",
      "parents": [
        "1dbd1951f39e13da579ffe879cce19586d0462de"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@efficios.com",
        "time": "Thu Oct 28 11:31:17 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Jan 07 23:26:29 2011 -0500"
      },
      "message": "tracing: Fix TRACE_EVENT power tracepoint creation\n\nDEFINE_TRACE should also exist when CONFIG_EVENT_TRACING\u003dn. Otherwise, setting\nonly TRACEPOINTS\u003dy is broken.\n\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nLKML-Reference: \u003c20101028153117.GA4051@Krystal\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "41263fc6716dea402125c95f38ed83ebf59d5172",
      "tree": "b38af603d534914187e396c989fc01a20894a2ff",
      "parents": [
        "ba9effa2ecdc08325bd297d541b4207b2df38184"
      ],
      "author": {
        "name": "Ben Gardiner",
        "email": "bengardiner@nanometrics.ca",
        "time": "Tue Dec 14 11:39:44 2010 -0500"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Dec 14 23:05:02 2010 +0100"
      },
      "message": "kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG\n\nIf you try to build a kernel with KCONFIG_CONFIG set (to a value\nnot equal to .config) and that config sets CONFIG_IKCONFIG then the\nbuild will fail with:\n\nmake[1]: *** No rule to make target `.config\u0027, needed by \\\n`kernel/config_data.gz\u0027.  Stop.\n\nbecause the kernel/Makefile contains a direct reference to .config.\n\nThis issue has been present since the introduction of KCONFIG_CONFIG\nin 14cdd3c402bf7c66f0bcd76e290f0770a54a4b21.\n\nSigned-off-by: Ben Gardiner \u003cbengardiner@nanometrics.ca\u003e\nCC: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCC: Michal Marek \u003cmmarek@suse.cz\u003e\nReviewed-by: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "3044100e58c84e133791c8b60a2f5bef69d732e4",
      "tree": "f9ed0d1f3df89c31dd81ccaf0cf3478f57b08440",
      "parents": [
        "b5153163ed580e00c67bdfecb02b2e3843817b3e",
        "67e87f0a1c5cbc750f81ebf6a128e8ff6f4376cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 18:52:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 18:52:11 2010 -0700"
      },
      "message": "Merge branch \u0027core-memblock-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-memblock-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (74 commits)\n  x86-64: Only set max_pfn_mapped to 512 MiB if we enter via head_64.S\n  xen: Cope with unmapped pages when initializing kernel pagetable\n  memblock, bootmem: Round pfn properly for memory and reserved regions\n  memblock: Annotate memblock functions with __init_memblock\n  memblock: Allow memblock_init to be called early\n  memblock/arm: Fix memblock_region_is_memory() typo\n  x86, memblock: Remove __memblock_x86_find_in_range_size()\n  memblock: Fix wraparound in find_region()\n  x86-32, memblock: Make add_highpages honor early reserved ranges\n  x86, memblock: Fix crashkernel allocation\n  arm, memblock: Fix the sparsemem build\n  memblock: Fix section mismatch warnings\n  powerpc, memblock: Fix memblock API change fallout\n  memblock, microblaze: Fix memblock API change fallout\n  x86: Remove old bootmem code\n  x86, memblock: Use memblock_memory_size()/memblock_free_memory_size() to get correct dma_reserve\n  x86: Remove not used early_res code\n  x86, memblock: Replace e820_/_early string with memblock_\n  x86: Use memblock to replace early_res\n  x86, memblock: Use memblock_debug to control debug message print out\n  ...\n\nFix up trivial conflicts in arch/x86/kernel/setup.c and kernel/Makefile\n"
    },
    {
      "commit": "5d70f79b5ef6ea2de4f72a37b2d96e2601e40a22",
      "tree": "a0d6de0930ba83ecf4629c2e2e261f5eaa2d8f33",
      "parents": [
        "888a6f77e0418b049f83d37547c209b904d30af4",
        "750ed158bf6c782d2813da1bca2c824365a0b777"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 12:54:49 2010 -0700"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (163 commits)\n  tracing: Fix compile issue for trace_sched_wakeup.c\n  [S390] hardirq: remove pointless header file includes\n  [IA64] Move local_softirq_pending() definition\n  perf, powerpc: Fix power_pmu_event_init to not use event-\u003ectx\n  ftrace: Remove recursion between recordmcount and scripts/mod/empty\n  jump_label: Add COND_STMT(), reducer wrappery\n  perf: Optimize sw events\n  perf: Use jump_labels to optimize the scheduler hooks\n  jump_label: Add atomic_t interface\n  jump_label: Use more consistent naming\n  perf, hw_breakpoint: Fix crash in hw_breakpoint creation\n  perf: Find task before event alloc\n  perf: Fix task refcount bugs\n  perf: Fix group moving\n  irq_work: Add generic hardirq context callbacks\n  perf_events: Fix transaction recovery in group_sched_in()\n  perf_events: Fix bogus AMD64 generic TLB events\n  perf_events: Fix bogus context time tracking\n  tracing: Remove parent recording in latency tracer graph options\n  tracing: Use one prologue for the preempt irqs off tracer function tracers\n  ...\n"
    },
    {
      "commit": "e360adbe29241a0194e10e20595360dd7b98a2b3",
      "tree": "ef5fa5f50a895096bfb25bc11b25949603158238",
      "parents": [
        "8e5fc1a7320baf6076391607515dceb61319b36a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Oct 14 14:01:34 2010 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 18 19:58:50 2010 +0200"
      },
      "message": "irq_work: Add generic hardirq context callbacks\n\nProvide a mechanism that allows running code in IRQ context. It is\nmost useful for NMI code that needs to interact with the rest of the\nsystem -- like wakeup a task to drain buffers.\n\nPerf currently has such a mechanism, so extract that and provide it as\na generic feature, independent of perf so that others may also\nbenefit.\n\nThe IRQ context callback is generated through self-IPIs where\npossible, or on architectures like powerpc the decrementer (the\nbuilt-in timer facility) is set to generate an interrupt immediately.\n\nArchitectures that don\u0027t have anything like this get to do with a\ncallback from the timer tick. These architectures can call\nirq_work_run() at the tail of any IRQ handlers that might enqueue such\nwork (like the perf IRQ handler) to avoid undue latencies in\nprocessing the work.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n[ various fixes ]\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nLKML-Reference: \u003c1287036094.7768.291.camel@yhuang-dev\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bf5438fca2950b03c21ad868090cc1a8fcd49536",
      "tree": "9fc5693763263704de8d8ba1c37a84172dbe5eb7",
      "parents": [
        "fa6f2cc77081792e4edca9168420a3422299ef15"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Sep 17 11:09:00 2010 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Sep 22 16:29:41 2010 -0400"
      },
      "message": "jump label: Base patch for jump label\n\nbase patch to implement \u0027jump labeling\u0027. Based on a new \u0027asm goto\u0027 inline\nassembly gcc mechanism, we can now branch to labels from an \u0027asm goto\u0027\nstatment. This allows us to create a \u0027no-op\u0027 fastpath, which can subsequently\nbe patched with a jump to the slowpath code. This is useful for code which\nmight be rarely used, but which we\u0027d like to be able to call, if needed.\nTracepoints are the current usecase that these are being implemented for.\n\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nLKML-Reference: \u003cee8b3595967989fdaf84e698dc7447d315ce972a.1284733808.git.jbaron@redhat.com\u003e\n\n[ cleaned up some formating ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "daab7fc734a53fdeaf844b7c03053118ad1769da",
      "tree": "575deb3cdcc6dda562acaed6f7c29bc81ae01cf2",
      "parents": [
        "774ea0bcb27f57b6fd521b3b6c43237782fed4b9",
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 31 09:45:21 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 31 09:45:46 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.36-rc3\u0027 into x86/memblock\n\nConflicts:\n\tarch/x86/kernel/trampoline.c\n\tmm/memblock.c\n\nMerge reason: Resolve the conflicts, update to latest upstream.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a587d2daebcd2bc159d4348b6a7b028950a6d803",
      "tree": "8001158a76efe400600a4e54dc5dae384b32b6e5",
      "parents": [
        "a9ce6bc15100023b411f8117e53a016d61889800"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Aug 25 13:39:18 2010 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Fri Aug 27 11:13:51 2010 -0700"
      },
      "message": "x86: Remove not used early_res code\n\nand some functions in e820.c that are not used anymore\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "a57eb940d130477a799dfb24a570ee04979c0f7f",
      "tree": "5add1c135a302cf1c1a454b0620ed17eb802923b",
      "parents": [
        "4d87ffadbba88105f33271bef5f2c79366c6a4e1"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jun 29 16:49:16 2010 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Aug 20 08:55:00 2010 -0700"
      },
      "message": "rcu: Add a TINY_PREEMPT_RCU\n\nImplement a small-memory-footprint uniprocessor-only implementation of\npreemptible RCU.  This implementation uses but a single blocked-tasks\nlist rather than the combinatorial number used per leaf rcu_node by\nTREE_PREEMPT_RCU, which reduces memory consumption and greatly simplifies\nprocessing.  This version also takes advantage of uniprocessor execution\nto accelerate grace periods in the case where there are no readers.\n\nThe general design is otherwise broadly similar to that of TREE_PREEMPT_RCU.\n\nThis implementation is a step towards having RCU implementation driven\noff of the SMP and PREEMPT kernel configuration variables, which can\nhappen once this implementation has accumulated sufficient experience.\n\nRemoved ACCESS_ONCE() from __rcu_read_unlock() and added barrier() as\nsuggested by Steve Rostedt in order to avoid the compiler-reordering\nissue noted by Mathieu Desnoyers (http://lkml.org/lkml/2010/8/16/183).\n\nAs can be seen below, CONFIG_TINY_PREEMPT_RCU represents almost 5Kbyte\nsavings compared to CONFIG_TREE_PREEMPT_RCU.  Of course, for non-real-time\nworkloads, CONFIG_TINY_RCU is even better.\n\n\tCONFIG_TREE_PREEMPT_RCU\n\n\t   text\t   data\t    bss\t    dec\t   filename\n\t     13\t      0\t      0\t     13\t   kernel/rcupdate.o\n\t   6170\t    825\t     28\t   7023\t   kernel/rcutree.o\n\t\t\t\t   ----\n\t\t\t\t   7026    Total\n\n\tCONFIG_TINY_PREEMPT_RCU\n\n\t   text\t   data\t    bss\t    dec\t   filename\n\t     13\t      0\t      0\t     13\t   kernel/rcupdate.o\n\t   2081\t     81\t      8\t   2170\t   kernel/rcutiny.o\n\t\t\t\t   ----\n\t\t\t\t   2183    Total\n\n\tCONFIG_TINY_RCU (non-preemptible)\n\n\t   text\t   data\t    bss\t    dec\t   filename\n\t     13\t      0\t      0\t     13\t   kernel/rcupdate.o\n\t    719\t     25\t      0\t    744\t   kernel/rcutiny.o\n\t\t\t\t    ---\n\t\t\t\t    757    Total\n\nRequested-by: Loïc Minier \u003cloic.minier@canonical.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "8c8946f509a494769a8c602b5ed189df01917d39",
      "tree": "dfd96bd6ca5ea6803c6d77f65ba37e04f78b2d3b",
      "parents": [
        "5f248c9c251c60af3403902b26e08de43964ea0b",
        "1968f5eed54ce47bde488fd9a450912e4a2d7138"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:39:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 10 11:39:13 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify\n\n* \u0027for-linus\u0027 of git://git.infradead.org/users/eparis/notify: (132 commits)\n  fanotify: use both marks when possible\n  fsnotify: pass both the vfsmount mark and inode mark\n  fsnotify: walk the inode and vfsmount lists simultaneously\n  fsnotify: rework ignored mark flushing\n  fsnotify: remove global fsnotify groups lists\n  fsnotify: remove group-\u003emask\n  fsnotify: remove the global masks\n  fsnotify: cleanup should_send_event\n  fanotify: use the mark in handler functions\n  audit: use the mark in handler functions\n  dnotify: use the mark in handler functions\n  inotify: use the mark in handler functions\n  fsnotify: send fsnotify_mark to groups in event handling functions\n  fsnotify: Exchange list heads instead of moving elements\n  fsnotify: srcu to protect read side of inode and vfsmount locks\n  fsnotify: use an explicit flag to indicate fsnotify_destroy_mark has been called\n  fsnotify: use _rcu functions for mark list traversal\n  fsnotify: place marks on object in order of group memory address\n  vfs/fsnotify: fsnotify_close can delay the final work in fput\n  fsnotify: store struct file not struct path\n  ...\n\nFix up trivial delete/modify conflict in fs/notify/inotify/inotify.c.\n"
    },
    {
      "commit": "3b7433b8a8a83c87972065b1852b7dcae691e464",
      "tree": "93fa2c003f8baef5ab0733b53bac77961ed5240c",
      "parents": [
        "4a386c3e177ca2fbc70c9283d0b46537844763a0",
        "6ee0578b4daaea01c96b172c6aacca43fd9807a6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 07 12:42:58 2010 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq: (55 commits)\n  workqueue: mark init_workqueues() as early_initcall()\n  workqueue: explain for_each_*cwq_cpu() iterators\n  fscache: fix build on !CONFIG_SYSCTL\n  slow-work: kill it\n  gfs2: use workqueue instead of slow-work\n  drm: use workqueue instead of slow-work\n  cifs: use workqueue instead of slow-work\n  fscache: drop references to slow-work\n  fscache: convert operation to use workqueue instead of slow-work\n  fscache: convert object to use workqueue instead of slow-work\n  workqueue: fix how cpu number is stored in work-\u003edata\n  workqueue: fix mayday_mask handling on UP\n  workqueue: fix build problem on !CONFIG_SMP\n  workqueue: fix locking in retry path of maybe_create_worker()\n  async: use workqueue for worker pool\n  workqueue: remove WQ_SINGLE_CPU and use WQ_UNBOUND instead\n  workqueue: implement unbound workqueue\n  workqueue: prepare for WQ_UNBOUND implementation\n  libata: take advantage of cmwq and remove concurrency limitations\n  workqueue: fix worker management invocation without pending works\n  ...\n\nFixed up conflicts in fs/cifs/* as per Tejun. Other trivial conflicts in\ninclude/linux/workqueue.h, kernel/trace/Kconfig and kernel/workqueue.c\n"
    },
    {
      "commit": "61be7fdec2f51b99570cd5dcc30c7848c8e56513",
      "tree": "4a73ee635bc3e35dc54f75caddd26ffb6238bb5c",
      "parents": [
        "12a81c8df13c60904febcafcf6b90ca1acb67122",
        "eb703f98191a505f78d0066712ad67d5dedc4c90"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 05 08:45:05 2010 +0200"
      },
      "message": "Merge branch \u0027perf/nmi\u0027 into perf/core\n\nConflicts:\n\tkernel/Makefile\n\nMerge reason: Add the now complete topic, fix the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "939a67fc4cbab8ca11c90da8a769d7e965d66a9b",
      "tree": "973363dabb2e84aa18e0ce1bbaf794be434e3901",
      "parents": [
        "67640b602f68332a83808426911636e9dbcc71fe"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Dec 17 20:12:06 2009 -0500"
      },
      "committer": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Jul 28 09:58:19 2010 -0400"
      },
      "message": "Audit: split audit watch Kconfig\n\nAudit watch should depend on CONFIG_AUDIT_SYSCALL and should select\nFSNOTIFY.  This splits the spagetti like mixing of audit_watch and\naudit_filter code so they can be configured seperately.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "181a51f6e040d0ac006d6adaf4a031ffa440f41c",
      "tree": "ed06062b8c606149497dffbb6a6ef0548cc44911",
      "parents": [
        "6ecd7c2dd9f5dd4f6e8f65c8027159f9c73b0e4c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jul 20 22:09:02 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jul 23 13:14:49 2010 +0200"
      },
      "message": "slow-work: kill it\n\nslow-work doesn\u0027t have any user left.  Kill it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "c433820971ffa854feda6adc17f5f24201354f11",
      "tree": "efb8028cc56e36eeade40d3a96bb461a242bab51",
      "parents": [
        "a0fe3cc5d36a5f5b4f60abfe1a4b1caf4a5cce5a"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Tue May 19 07:49:32 2009 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu May 20 21:04:18 2010 -0500"
      },
      "message": "Move kernel/kgdb.c to kernel/debug/debug_core.c\n\nMove kgdb.c in preparation to separate the gdbstub from the debug\ncore and exception handling.\n\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "58687acba59266735adb8ccd9b5b9aa2c7cd205b",
      "tree": "7236582375310b116eedec6facbee87d42e3dd6d",
      "parents": [
        "a9aa1d02de36b450990b0e25a88fc2ff1c3e6b94"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Fri May 07 17:11:44 2010 -0400"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 12 23:55:33 2010 +0200"
      },
      "message": "lockup_detector: Combine nmi_watchdog and softlockup detector\n\nThe new nmi_watchdog (which uses the perf event subsystem) is very\nsimilar in structure to the softlockup detector.  Using Ingo\u0027s\nsuggestion, I combined the two functionalities into one file:\nkernel/watchdog.c.\n\nNow both the nmi_watchdog (or hardlockup detector) and softlockup\ndetector sit on top of the perf event subsystem, which is run every\n60 seconds or so to see if there are any lockups.\n\nTo detect hardlockups, cpus not responding to interrupts, I\nimplemented an hrtimer that runs 5 times for every perf event\noverflow event.  If that stops counting on a cpu, then the cpu is\nmost likely in trouble.\n\nTo detect softlockups, tasks not yielding to the scheduler, I used the\nprevious kthread idea that now gets kicked every time the hrtimer fires.\nIf the kthread isn\u0027t being scheduled neither is anyone else and the\nwarning is printed to the console.\n\nI tested this on x86_64 and both the softlockup and hardlockup paths\nwork.\n\nV2:\n- cleaned up the Kconfig and softlockup combination\n- surrounded hardlockup cases with #ifdef CONFIG_PERF_EVENTS_NMI\n- seperated out the softlockup case from perf event subsystem\n- re-arranged the enabling/disabling nmi watchdog from proc space\n- added cpumasks for hardlockup failure cases\n- removed fallback to soft events if no PMU exists for hard events\n\nV3:\n- comment cleanups\n- drop support for older softlockup code\n- per_cpu cleanups\n- completely remove software clock base hardlockup detector\n- use per_cpu masking on hard/soft lockup detection\n- #ifdef cleanups\n- rename config option NMI_WATCHDOG to LOCKUP_DETECTOR\n- documentation additions\n\nV4:\n- documentation fixes\n- convert per_cpu to __get_cpu_var\n- powerpc compile fixes\n\nV5:\n- split apart warn flags for hard and soft lockups\n\nTODO:\n- figure out how to make an arch-agnostic clock2cycles call\n  (if possible) to feed into perf events as a sample period\n\n[fweisbec: merged conflict patch]\n\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nLKML-Reference: \u003c1273266711-18706-2-git-send-email-dzickus@redhat.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "a9aa1d02de36b450990b0e25a88fc2ff1c3e6b94",
      "tree": "1f9d19f1642d263e65906a916a48be9339accc73",
      "parents": [
        "5671a10e2bc7f99d9157c6044faf8be2ef302361",
        "b57f95a38233a2e73b679bea4a5453a1cc2a1cc9"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 12 23:19:01 2010 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed May 12 23:20:33 2010 +0200"
      },
      "message": "Merge commit \u0027v2.6.34-rc7\u0027 into perf/nmi\n\nMerge reason: catch up with latest softlockup detector changes.\n"
    },
    {
      "commit": "bbf1bb3eee86f2eef2baa14e600be454d09109ee",
      "tree": "f7c200742a2d6ce20e72ad976b66d30d1aa6a04d",
      "parents": [
        "fc390cde362309f6892bb719194f242c466a978b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat May 08 16:20:53 2010 +0200"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat May 08 17:12:33 2010 +0200"
      },
      "message": "cpu_stop: add dummy implementation for UP\n\nWhen !CONFIG_SMP, cpu_stop functions weren\u0027t defined at all which\ncould lead to build failures if UP code uses cpu_stop facility.  Add\ndummy cpu_stop implementation for UP.  The waiting variants execute\nthe work function directly with preempt disabled and\nstop_one_cpu_nowait() schedules a workqueue work.\n\nMakefile and ifdefs around stop_machine implementation are updated to\naccomodate CONFIG_SMP \u0026\u0026 !CONFIG_STOP_MACHINE case.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fcccbac89f5bbc5e41aa72086960059fce372da",
      "tree": "9e42ee69f0216e612e5bd4338d6203dbad2d002f",
      "parents": [
        "088e7af73a962fcc8883b7a6392544d8342553d6"
      ],
      "author": {
        "name": "Daisuke HATAYAMA",
        "email": "d.hatayama@jp.fujitsu.com",
        "time": "Fri Mar 05 13:44:07 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:45 2010 -0800"
      },
      "message": "elf coredump: replace ELF_CORE_EXTRA_* macros by functions\n\nelf_core_dump() and elf_fdpic_core_dump() use #ifdef and the corresponding\nmacro for hiding _multiline_ logics in functions.  This patch removes\n#ifdef and replaces ELF_CORE_EXTRA_* by corresponding functions.  For\narchitectures not implemeonting ELF_CORE_EXTRA_*, we use weak functions in\norder to reduce a range of modification.\n\nThis cleanup is for my next patches, but I think this cleanup itself is\nworth doing regardless of my firnal purpose.\n\nSigned-off-by: Daisuke HATAYAMA \u003cd.hatayama@jp.fujitsu.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a626b46e17d0762d664ce471d40bc506b6e721ab",
      "tree": "445f6ac655ea9247d2e27529f23ba02d0991fec0",
      "parents": [
        "c1dcb4bb1e3e16e9baee578d9bb040e5fba1063e",
        "dce46a04d55d6358d2d4ab44a4946a19f9425fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:05 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 03 08:15:05 2010 -0800"
      },
      "message": "Merge branch \u0027x86-bootmem-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-bootmem-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (30 commits)\n  early_res: Need to save the allocation name in drop_range_partial()\n  sparsemem: Fix compilation on PowerPC\n  early_res: Add free_early_partial()\n  x86: Fix non-bootmem compilation on PowerPC\n  core: Move early_res from arch/x86 to kernel/\n  x86: Add find_fw_memmap_area\n  Move round_up/down to kernel.h\n  x86: Make 32bit support NO_BOOTMEM\n  early_res: Enhance check_and_double_early_res\n  x86: Move back find_e820_area to e820.c\n  x86: Add find_early_area_size\n  x86: Separate early_res related code from e820.c\n  x86: Move bios page reserve early to head32/64.c\n  sparsemem: Put mem map for one node together.\n  sparsemem: Put usemap for one node together\n  x86: Make 64 bit use early_res instead of bootmem before slab\n  x86: Only call dma32_reserve_bootmem 64bit !CONFIG_NUMA\n  x86: Make early_node_mem get mem \u003e 4 GB if possible\n  x86: Dynamically increase early_res array size\n  x86: Introduce max_early_res and early_res_count\n  ...\n"
    },
    {
      "commit": "580e0ad21d6d6f932461d24b47041e3dd499c23f",
      "tree": "3476c71849c0f9aa54c160b9a994bf4d211bd697",
      "parents": [
        "dd645cee7b50b61cb2d05b59eb6027679c437af6"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Tue Feb 16 18:40:35 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Feb 16 21:43:39 2010 -0800"
      },
      "message": "core: Move early_res from arch/x86 to kernel/\n\nThis makes the range reservation feature available to other\narchitectures.\n\n-v2: add get_max_mapped, max_pfn_mapped only defined in x86...\n     to fix PPC compiling\n-v3: according to hpa, add CONFIG_HAVE_EARLY_RES\n-v4: fix typo about EARLY_RES in config\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c4B7B5723.4070009@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "27811d8cabe56e0c3622251b049086f49face4ff",
      "tree": "d3966301efca0886fa2b53d74d1f9e5f1cf55056",
      "parents": [
        "c85e4aae699360e8db4ebfe710e917ac9b6fc77e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:07 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 10 17:47:17 2010 -0800"
      },
      "message": "x86: Move range related operation to one file\n\nWe have almost the same code for mtrr cleanup and amd_bus checkup, and\nthis code  will also be used in replacing bootmem with early_res,\nso try to move them together and reuse it from different parts.\n\nAlso rename update_range to subtract_range as that is what the\nfunction is actually doing.\n\n-v2: update comments as Christoph requested\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-4-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "84e478c6f1eb9c4bfa1fff2f8108e9a061b46428",
      "tree": "15be1e0d92d4439e49ecc98a504589dc596fc211",
      "parents": [
        "1fb9d6ad2766a1dd70d167552988375049a97f21"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Fri Feb 05 21:47:05 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 08 08:29:03 2010 +0100"
      },
      "message": "nmi_watchdog: Config option to enable new nmi_watchdog\n\nThese are the bits that enable the new nmi_watchdog and safely\nisolate the old nmi_watchdog.  Only one or the other can run,\nnot both at the same time.\n\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: gorcunov@gmail.com\nCc: aris@redhat.com\nCc: peterz@infradead.org\nLKML-Reference: \u003c1265424425-31562-4-git-send-email-dzickus@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16295bec6398a3eedc9377e1af6ff4c71b98c300",
      "tree": "992d82d920b5e6b81fe08df58f8c2d677244f759",
      "parents": [
        "863b557a88f8c033f7419fabafef4712a5055f85"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Jan 06 19:47:10 2010 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jan 06 19:47:10 2010 +1100"
      },
      "message": "padata: Generic parallelization/serialization interface\n\nThis patch introduces an interface to process data objects\nin parallel. The parallelized objects return after serialization\nin the same order as they were before the parallelization.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ed9216c1717a3f3738a77908aff78995ea69e7ff",
      "tree": "c6b5ace7c333dabbf1d94074a13a98244bcdfb26",
      "parents": [
        "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
        "d5696725b2a4c59503f5e0bc33adeee7f30cd45b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 08:02:38 2009 -0800"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.33\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (84 commits)\n  KVM: VMX: Fix comparison of guest efer with stale host value\n  KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c\n  KVM: Drop user return notifier when disabling virtualization on a cpu\n  KVM: VMX: Disable unrestricted guest when EPT disabled\n  KVM: x86 emulator: limit instructions to 15 bytes\n  KVM: s390: Make psw available on all exits, not just a subset\n  KVM: x86: Add KVM_GET/SET_VCPU_EVENTS\n  KVM: VMX: Report unexpected simultaneous exceptions as internal errors\n  KVM: Allow internal errors reported to userspace to carry extra data\n  KVM: Reorder IOCTLs in main kvm.h\n  KVM: x86: Polish exception injection via KVM_SET_GUEST_DEBUG\n  KVM: only clear irq_source_id if irqchip is present\n  KVM: x86: disallow KVM_{SET,GET}_LAPIC without allocated in-kernel lapic\n  KVM: x86: disallow multiple KVM_CREATE_IRQCHIP\n  KVM: VMX: Remove vmx-\u003emsr_offset_efer\n  KVM: MMU: update invlpg handler comment\n  KVM: VMX: move CR3/PDPTR update to vmx_set_cr3\n  KVM: remove duplicated task_switch check\n  KVM: powerpc: Fix BUILD_BUG_ON condition\n  KVM: VMX: Use shared msr infrastructure\n  ...\n\nTrivial conflicts due to new Kconfig options in arch/Kconfig and kernel/Makefile\n"
    },
    {
      "commit": "1557d33007f63dd96e5d15f33af389378e5f2e54",
      "tree": "06d05722b2ba5d2a67532f779fa8a88efe3c88f1",
      "parents": [
        "6ec22f9b037fc0c2e00ddb7023fad279c365324d",
        "c656ae95d1c5c8ed5763356263ace2d03087efec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:38:50 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:38:50 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/sysctl-2.6: (43 commits)\n  security/tomoyo: Remove now unnecessary handling of security_sysctl.\n  security/tomoyo: Add a special case to handle accesses through the internal proc mount.\n  sysctl: Drop \u0026 in front of every proc_handler.\n  sysctl: Remove CTL_NONE and CTL_UNNUMBERED\n  sysctl: kill dead ctl_handler definitions.\n  sysctl: Remove the last of the generic binary sysctl support\n  sysctl net: Remove unused binary sysctl code\n  sysctl security/tomoyo: Don\u0027t look at ctl_name\n  sysctl arm: Remove binary sysctl support\n  sysctl x86: Remove dead binary sysctl support\n  sysctl sh: Remove dead binary sysctl support\n  sysctl powerpc: Remove dead binary sysctl support\n  sysctl ia64: Remove dead binary sysctl support\n  sysctl s390: Remove dead sysctl binary support\n  sysctl frv: Remove dead binary sysctl support\n  sysctl mips/lasat: Remove dead binary sysctl support\n  sysctl drivers: Remove dead binary sysctl support\n  sysctl crypto: Remove dead binary sysctl support\n  sysctl security/keys: Remove dead binary sysctl support\n  sysctl kernel: Remove binary sysctl logic\n  ...\n"
    },
    {
      "commit": "c3fa27d1367fac63ac8533d6f20ea851d0d70a10",
      "tree": "e7731554085e22b6b63411b1ebb401079f3e0bbb",
      "parents": [
        "96fa2b508d2d3fe040cf4ef2fffb955f0a537ea1",
        "d103d01e4b19f185d3c85f77402b605534c32e89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 15:30:21 2009 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (470 commits)\n  x86: Fix comments of register/stack access functions\n  perf tools: Replace %m with %a in sscanf\n  hw-breakpoints: Keep track of user disabled breakpoints\n  tracing/syscalls: Make syscall events print callbacks static\n  tracing: Add DEFINE_EVENT(), DEFINE_SINGLE_EVENT() support to docbook\n  perf: Don\u0027t free perf_mmap_data until work has been done\n  perf_event: Fix compile error\n  perf tools: Fix _GNU_SOURCE macro related strndup() build error\n  trace_syscalls: Remove unused syscall_name_to_nr()\n  trace_syscalls: Simplify syscall profile\n  trace_syscalls: Remove duplicate init_enter_##sname()\n  trace_syscalls: Add syscall_nr field to struct syscall_metadata\n  trace_syscalls: Remove enter_id exit_id\n  trace_syscalls: Set event_enter_##sname-\u003edata to its metadata\n  trace_syscalls: Remove unused event_syscall_enter and event_syscall_exit\n  perf_event: Initialize data.period in perf_swevent_hrtimer()\n  perf probe: Simplify event naming\n  perf probe: Add --list option for listing current probe events\n  perf probe: Add argv_split() from lib/argv_split.c\n  perf probe: Move probe event utility functions to probe-event.c\n  ...\n"
    },
    {
      "commit": "607781762e7aae9c976f0a9a8829d4ba3e2da4ab",
      "tree": "933dad6ecb0be49e9b1ef41b69d5aa256510720e",
      "parents": [
        "d0b093a8b5ae34ee8be1f7e0dd197fe4788fa1d5",
        "8bfb2f8e655b9d0c45fde679fcd5fd97e34513db"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:52:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 05 09:52:14 2009 -0800"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (31 commits)\n  rcu: Make RCU\u0027s CPU-stall detector be default\n  rcu: Add expedited grace-period support for preemptible RCU\n  rcu: Enable fourth level of TREE_RCU hierarchy\n  rcu: Rename \"quiet\" functions\n  rcu: Re-arrange code to reduce #ifdef pain\n  rcu: Eliminate unneeded function wrapping\n  rcu: Fix grace-period-stall bug on large systems with CPU hotplug\n  rcu: Eliminate __rcu_pending() false positives\n  rcu: Further cleanups of use of lastcomp\n  rcu: Simplify association of forced quiescent states with grace periods\n  rcu: Accelerate callback processing on CPUs not detecting GP end\n  rcu: Mark init-time-only rcu_bootup_announce() as __init\n  rcu: Simplify association of quiescent states with grace periods\n  rcu: Rename dynticks_completed to completed_fqs\n  rcu: Enable synchronize_sched_expedited() fastpath\n  rcu: Remove inline from forward-referenced functions\n  rcu: Fix note_new_gpnum() uses of -\u003egpnum\n  rcu: Fix synchronization for rcu_process_gp_end() uses of -\u003ecompleted counter\n  rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling of -\u003ecompleted counter\n  rcu: Cleanup: balance rcu_irq_enter()/rcu_irq_exit() calls\n  ...\n"
    },
    {
      "commit": "58988b07cfe2ebe9f9b39d973fd8a083390e749f",
      "tree": "f7a164abe85b8aa768c58a80c1261208372fb4b0",
      "parents": [
        "22763c5cf3690a681551162c15d34d935308c8d7",
        "8e7cac79808b62f242069a6ac88d364d35621371"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:30:06 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Thu Dec 03 09:30:06 2009 +0200"
      },
      "message": "Merge remote branch \u0027tip/x86/entry\u0027 into kvm-updates/2.6.33\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "f13a48bd798a159291ca583b95453171b88b7448",
      "tree": "a644293386e30ed5ab297e5943e57658e1d11e6a",
      "parents": [
        "df87f8c06c7f562ef9d93b9d674eebf2ffb96f6a"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 01 15:36:11 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 01 08:20:31 2009 -0800"
      },
      "message": "SLOW_WORK: Move slow_work\u0027s proc file to debugfs\n\nMove slow_work\u0027s debugging proc file to debugfs.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nRequested-and-acked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e3d8330ae2c4b2c11a9577a0130d2ecda1c610d",
      "tree": "4d360eaa3e9cefc16081f3853b5fa02996b9caf4",
      "parents": [
        "bfd451184d80301d1ae970b1ebffde1e9c6240f9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 10:19:20 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Nov 23 10:19:20 2009 +0100"
      },
      "message": "perf events: Do not generate function trace entries in perf code\n\nDecreases perf overhead when function tracing is enabled,\nby about 50%.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8fba10a42d191de612e60e7009c8f0313f90a9b3",
      "tree": "1e772fcc7ad3eb5bb3ca1c6cd156171295e6db25",
      "parents": [
        "6b8268b17a1ffc942bc72d7d00274e433d6b6719"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Nov 19 18:10:51 2009 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Nov 19 18:10:51 2009 +0000"
      },
      "message": "SLOW_WORK: Allow the work items to be viewed through a /proc file\n\nAllow the executing and queued work items to be viewed through a /proc file\nfor debugging purposes.  The contents look something like the following:\n\n    THR PID   ITEM ADDR        FL MARK  DESC\n    \u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d \u003d\u003d \u003d\u003d\u003d\u003d\u003d \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n      0  3005 ffff880023f52348  a 952ms FSC: OBJ17d3: LOOK\n      1  3006 ffff880024e33668  2 160ms FSC: OBJ17e5 OP60d3b: Write1/Store fl\u003d2\n      2  3165 ffff8800296dd180  a 424ms FSC: OBJ17e4: LOOK\n      3  4089 ffff8800262c8d78  a 212ms FSC: OBJ17ea: CRTN\n      4  4090 ffff88002792bed8  2 388ms FSC: OBJ17e8 OP60d36: Write1/Store fl\u003d2\n      5  4092 ffff88002a0ef308  2 388ms FSC: OBJ17e7 OP60d2e: Write1/Store fl\u003d2\n      6  4094 ffff88002abaf4b8  2 132ms FSC: OBJ17e2 OP60d4e: Write1/Store fl\u003d2\n      7  4095 ffff88002bb188e0  a 388ms FSC: OBJ17e9: CRTN\n    vsq     - ffff880023d99668  1 308ms FSC: OBJ17e0 OP60f91: Write1/EnQ fl\u003d2\n    vsq     - ffff8800295d1740  1 212ms FSC: OBJ16be OP4d4b6: Write1/EnQ fl\u003d2\n    vsq     - ffff880025ba3308  1 160ms FSC: OBJ179a OP58dec: Write1/EnQ fl\u003d2\n    vsq     - ffff880024ec83e0  1 160ms FSC: OBJ17ae OP599f2: Write1/EnQ fl\u003d2\n    vsq     - ffff880026618e00  1 160ms FSC: OBJ17e6 OP60d33: Write1/EnQ fl\u003d2\n    vsq     - ffff880025a2a4b8  1 132ms FSC: OBJ16a2 OP4d583: Write1/EnQ fl\u003d2\n    vsq     - ffff880023cbe6d8  9 212ms FSC: OBJ17eb: LOOK\n    vsq     - ffff880024d37590  9 212ms FSC: OBJ17ec: LOOK\n    vsq     - ffff880027746cb0  9 212ms FSC: OBJ17ed: LOOK\n    vsq     - ffff880024d37ae8  9 212ms FSC: OBJ17ee: LOOK\n    vsq     - ffff880024d37cb0  9 212ms FSC: OBJ17ef: LOOK\n    vsq     - ffff880025036550  9 212ms FSC: OBJ17f0: LOOK\n    vsq     - ffff8800250368e0  9 212ms FSC: OBJ17f1: LOOK\n    vsq     - ffff880025036aa8  9 212ms FSC: OBJ17f2: LOOK\n\nIn the \u0027THR\u0027 column, executing items show the thread they\u0027re occupying and\nqueued threads indicate which queue they\u0027re on.  \u0027PID\u0027 shows the process ID of\na slow-work thread that\u0027s executing something.  \u0027FL\u0027 shows the work item flags.\n\u0027MARK\u0027 indicates how long since an item was queued or began executing.  Lastly,\nthe \u0027DESC\u0027 column permits the owner of an item to give some information.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "afa588b2651a03da4bc601a17a244b1cd97264f2",
      "tree": "cb7a03753f282b4e459305fec307caf0837e756b",
      "parents": [
        "b419148e567728f6af0c3b01965c1cc141e3e13a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Apr 02 23:44:59 2009 -0700"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 06 03:20:07 2009 -0800"
      },
      "message": "sysctl: Separate the binary sysctl logic into it\u0027s own file.\n\nIn preparation for more invasive cleanups separate the core\nbinary sysctl logic into it\u0027s own file.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "9b1d82fa1611706fa7ee1505f290160a18caf95d",
      "tree": "7b2eed068360465d0b028d345eb318b1a8217305",
      "parents": [
        "0edf1a683e499191b27a067956ae9f5fa6e046c6"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Oct 25 19:03:50 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 26 09:40:29 2009 +0100"
      },
      "message": "rcu: \"Tiny RCU\", The Bloatwatch Edition\n\nThis patch is a version of RCU designed for !SMP provided for a\nsmall-footprint RCU implementation.  In particular, the\nimplementation of synchronize_rcu() is extremely lightweight and\nhigh performance. It passes rcutorture testing in each of the\nfour relevant configurations (combinations of NO_HZ and PREEMPT)\non x86.  This saves about 1K bytes compared to old Classic RCU\n(which is no longer in mainline), and more than three kilobytes\ncompared to Hierarchical RCU (updated to 2.6.30):\n\n\tCONFIG_TREE_RCU:\n\n\t   text\t   data\t    bss\t    dec\t    filename\n\t    183       4       0     187     kernel/rcupdate.o\n\t   2783     520      36    3339     kernel/rcutree.o\n\t\t\t\t   3526 Total (vs 4565 for v7)\n\n\tCONFIG_TREE_PREEMPT_RCU:\n\n\t   text\t   data\t    bss\t    dec\t    filename\n\t    263       4       0     267     kernel/rcupdate.o\n\t   4594     776      52    5422     kernel/rcutree.o\n\t   \t\t\t   5689 Total (6155 for v7)\n\n\tCONFIG_TINY_RCU:\n\n\t   text\t   data\t    bss\t    dec\t    filename\n\t     96       4       0     100     kernel/rcupdate.o\n\t    734      24       0     758     kernel/rcutiny.o\n\t    \t\t\t    858 Total (vs 848 for v7)\n\nThe above is for x86.  Your mileage may vary on other platforms.\nFurther compression is possible, but is being procrastinated.\n\nChanges from v7 (http://lkml.org/lkml/2009/10/9/388)\n\no\tApply Lai Jiangshan\u0027s review comments (aside from\nmight_sleep() \tin synchronize_sched(), which is covered by SMP builds).\n\no\tFix up expedited primitives.\n\nChanges from v6 (http://lkml.org/lkml/2009/9/23/293).\n\no\tForward ported to put it into the 2.6.33 stream.\n\no\tAdded lockdep support.\n\no\tMake lightweight rcu_barrier.\n\nChanges from v5 (http://lkml.org/lkml/2009/6/23/12).\n\no\tPorted to latest pre-2.6.32 merge window kernel.\n\n\t- Renamed rcu_qsctr_inc() to rcu_sched_qs().\n\t- Renamed rcu_bh_qsctr_inc() to rcu_bh_qs().\n\t- Provided trivial rcu_cpu_notify().\n\t- Provided trivial exit_rcu().\n\t- Provided trivial rcu_needs_cpu().\n\t- Fixed up the rcu_*_enter/exit() functions in linux/hardirq.h.\n\no\tRemoved the dependence on EMBEDDED, with a view to making\n\tTINY_RCU default for !SMP at some time in the future.\n\no\tAdded (trivial) support for expedited grace periods.\n\nChanges from v4 (http://lkml.org/lkml/2009/5/2/91) include:\n\no\tSqueeze the size down a bit further by removing the\n\t-\u003ecompleted field from struct rcu_ctrlblk.\n\no\tThis permits synchronize_rcu() to become the empty function.\n\tPrevious concerns about rcutorture were unfounded, as\n\trcutorture correctly handles a constant value from\n\trcu_batches_completed() and rcu_batches_completed_bh().\n\nChanges from v3 (http://lkml.org/lkml/2009/3/29/221) include:\n\no\tChanged rcu_batches_completed(), rcu_batches_completed_bh()\n\trcu_enter_nohz(), rcu_exit_nohz(), rcu_nmi_enter(), and\n\trcu_nmi_exit(), to be static inlines, as suggested by David\n\tHowells.  Doing this saves about 100 bytes from rcutiny.o.\n\t(The numbers between v3 and this v4 of the patch are not directly\n\tcomparable, since they are against different versions of Linux.)\n\nChanges from v2 (http://lkml.org/lkml/2009/2/3/333) include:\n\no\tFix whitespace issues.\n\no\tChange short-circuit \"||\" operator to instead be \"+\" in order\nto \tfix performance bug noted by \"kraai\" on LWN.\n\n\t\t(http://lwn.net/Articles/324348/)\n\nChanges from v1 (http://lkml.org/lkml/2009/1/13/440) include:\n\no\tThis version depends on EMBEDDED as well as !SMP, as suggested\n\tby Ingo.\n\no\tUpdated rcu_needs_cpu() to unconditionally return zero,\n\tpermitting the CPU to enter dynticks-idle mode at any time.\n\tThis works because callbacks can be invoked upon entry to\n\tdynticks-idle mode.\n\no\tPaul is now OK with this being included, based on a poll at\nthe \tKernel Miniconf at linux.conf.au, where about ten people said\n\tthat they cared about saving 900 bytes on single-CPU systems.\n\no\tApplies to both mainline and tip/core/rcu.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nReviewed-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: dipankar@in.ibm.com\nCc: mathieu.desnoyers@polymtl.ca\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nCc: Valdis.Kletnieks@vt.edu\nCc: avi@redhat.com\nCc: mtosatti@redhat.com\nLKML-Reference: \u003c12565226351355-git-send-email-\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7a041097518a120f92af631a83db4d41e07ee51b",
      "tree": "42add260dac48c75ea0d836d72faaa2355488bf8",
      "parents": [
        "7c68af6e32c73992bad24107311f3433c89016e2"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Oct 25 14:24:45 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 25 17:37:57 2009 +0100"
      },
      "message": "x86: Fix user return notifier build\n\nWhen CONFIG_USER_RETURN_NOTIFIER is set, we need to link\nkernel/user-return-notifier.o.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\nLKML-Reference: \u003c1256473485-23109-1-git-send-email-avi@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0f8f86c7bdd1c954fbe153af437a0d91a6c5721a",
      "tree": "94a8d419a470a4f9852ca397bb9bbe48db92ff5c",
      "parents": [
        "dca2d6ac09d9ef59ff46820d4f0c94b08a671202",
        "f39cdf25bf77219676ec5360980ac40b1a7e144a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Oct 18 01:09:09 2009 +0200"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Oct 18 01:12:33 2009 +0200"
      },
      "message": "Merge commit \u0027perf/core\u0027 into perf/hw-breakpoint\n\nConflicts:\n\tkernel/Makefile\n\tkernel/trace/Makefile\n\tkernel/trace/trace.h\n\tsamples/Makefile\n\nMerge reason: We need to be uptodate with the perf events development\nbranch because we plan to rewrite the breakpoints API on top of\nperf events.\n"
    },
    {
      "commit": "fe6934354f8e287275500cd6ec73826d4d6ad457",
      "tree": "f5ccab89d27472f5116257d1f7248594d3510882",
      "parents": [
        "c6d57f3312a6619d47c5557b5f6154a74d04ff80"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Wed Sep 23 15:56:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:20:57 2009 -0700"
      },
      "message": "cgroups: move the cgroup debug subsys into cgroup.c to access internal state\n\nWhile it\u0027s architecturally clean to have the cgroup debug subsystem be\ncompletely independent of the cgroups framework, it limits its usefulness\nfor debugging the contents of internal data structures.  Move the debug\nsubsystem code into the scope of all the cgroups data structures to make\nmore detailed debugging possible.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43c1266ce4dc06bfd236cec31e11e9ecd69c0bef",
      "tree": "40a86739ca4c36200f447f655b01c57cfe646e26",
      "parents": [
        "b8c7f1dc5ca4e0d10709182233cdab932cef593d",
        "57c0c15b5244320065374ad2c54f4fbec77a6428"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 21 09:15:07 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-rename-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Tidy up after the big rename\n  perf: Do the big rename: Performance Counters -\u003e Performance Events\n  perf_counter: Rename \u0027event\u0027 to event_id/hw_event\n  perf_counter: Rename list_entry -\u003e group_entry, counter_list -\u003e group_list\n\nManually resolved some fairly trivial conflicts with the tracing tree in\ninclude/trace/ftrace.h and kernel/trace/trace_syscalls.c.\n"
    },
    {
      "commit": "cdd6c482c9ff9c55475ee7392ec8f672eddb7be6",
      "tree": "81f98a3ab46c589792057fe2392c1e10f8ad7893",
      "parents": [
        "dfc65094d0313cc48969fa60bcf33d693aeb05a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 12:02:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 14:28:04 2009 +0200"
      },
      "message": "perf: Do the big rename: Performance Counters -\u003e Performance Events\n\nBye-bye Performance Counters, welcome Performance Events!\n\nIn the past few months the perfcounters subsystem has grown out its\ninitial role of counting hardware events, and has become (and is\nbecoming) a much broader generic event enumeration, reporting, logging,\nmonitoring, analysis facility.\n\nNaming its core object \u0027perf_counter\u0027 and naming the subsystem\n\u0027perfcounters\u0027 has become more and more of a misnomer. With pending\ncode like hw-breakpoints support the \u0027counter\u0027 name is less and\nless appropriate.\n\nAll in one, we\u0027ve decided to rename the subsystem to \u0027performance\nevents\u0027 and to propagate this rename through all fields, variables\nand API names. (in an ABI compatible fashion)\n\nThe word \u0027event\u0027 is also a bit shorter than \u0027counter\u0027 - which makes\nit slightly more convenient to write/handle as well.\n\nThanks goes to Stephane Eranian who first observed this misnomer and\nsuggested a rename.\n\nUser-space tooling and ABI compatibility is not affected - this patch\nshould be function-invariant. (Also, defconfigs were not touched to\nkeep the size down.)\n\nThis patch has been generated via the following script:\n\n  FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n  sed -i \\\n    -e \u0027s/PERF_EVENT_/PERF_RECORD_/g\u0027 \\\n    -e \u0027s/PERF_COUNTER/PERF_EVENT/g\u0027 \\\n    -e \u0027s/perf_counter/perf_event/g\u0027 \\\n    -e \u0027s/nb_counters/nb_events/g\u0027 \\\n    -e \u0027s/swcounter/swevent/g\u0027 \\\n    -e \u0027s/tpcounter_event/tp_event/g\u0027 \\\n    $FILES\n\n  for N in $(find . -name perf_counter.[ch]); do\n    M\u003d$(echo $N | sed \u0027s/perf_counter/perf_event/g\u0027)\n    mv $N $M\n  done\n\n  FILES\u003d$(find . -name perf_event.*)\n\n  sed -i \\\n    -e \u0027s/COUNTER_MASK/REG_MASK/g\u0027 \\\n    -e \u0027s/COUNTER/EVENT/g\u0027 \\\n    -e \u0027s/\\\u003cevent\\\u003e/event_id/g\u0027 \\\n    -e \u0027s/counter/event/g\u0027 \\\n    -e \u0027s/Counter/Event/g\u0027 \\\n    $FILES\n\n... to keep it as correct as possible. This script can also be\nused by anyone who has pending perfcounters patches - it converts\na Linux kernel tree over to the new naming. We tried to time this\nchange to the point in time where the amount of pending patches\nis the smallest: the end of the merge window.\n\nNamespace clashes were fixed up in a preparatory patch - and some\nstylistic fallout will be fixed up in a subsequent patch.\n\n( NOTE: \u0027counters\u0027 are still the proper terminology when we deal\n  with hardware registers - and these sed scripts are a bit\n  over-eager in renaming them. I\u0027ve undone some of that, but\n  in case there\u0027s something left where \u0027counter\u0027 would be\n  better than \u0027event\u0027 we can undo that on an individual basis\n  instead of touching an otherwise nicely automated patch. )\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fc5377668c3d808e1d53c4aee152c836f55c3490",
      "tree": "366723ccb26a64c311074c346721aaf4ff0e7d58",
      "parents": [
        "df58bee21ed218cb7dfb561a590b1bd2a99531cf"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Sep 17 19:35:28 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 18 21:22:08 2009 +0200"
      },
      "message": "tracing: Remove markers\n\nNow that the last users of markers have migrated to the event\ntracer we can kill off the (now orphan) support code.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20090917173527.GA1699@lst.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a56af87648054089d89874b52e3fc23ed4f274ad",
      "tree": "81714be5cc39f830b4acf55ec782b46f36e67ebe",
      "parents": [
        "162dd4212409fd2d36ff22547ea821bf3e86bcc9"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun Jul 12 21:44:55 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 15 09:50:47 2009 -0700"
      },
      "message": "driver-core: move dma-coherent.c from kernel to driver/base\n\nPlacing dma-coherent.c in driver/base is better than in kernel,\nsince it contains code to do per-device coherent dma memory\nhandling.\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "dca2d6ac09d9ef59ff46820d4f0c94b08a671202",
      "tree": "fdec753b842dad09e3a4151954fab3eb5c43500d",
      "parents": [
        "d6a65dffb30d8636b1e5d4c201564ef401a246cf",
        "18240904960a39e582ced8ba8ececb10b8c22dd3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 15 12:18:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 15 12:18:15 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/hw-breakpoints\n\nConflicts:\n\tarch/x86/kernel/process_64.c\n\nSemantic conflict fixed in:\n\tarch/x86/kvm/x86.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c91d7d54ea9e75ec18c733969ba16dd7ab94fc99",
      "tree": "5b93c6931adf9908f9f207eaa7a0f91d8207ad08",
      "parents": [
        "133309a89e7430f907ebe85e78906ee12c311727",
        "48586218b6515b9bd70694e3cd8c901a6a6ee69c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 19:59:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 19:59:37 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-kconfig:\n  kconfig: add missing dependency of conf to localyesconfig\n  kconfig: test if a .config already exists\n  kconfig: make local .config default for streamline_config\n  kconfig: test for /boot/config-uname after /proc/config.gz in localconfig\n  kconfig: unset IKCONFIG_PROC and clean up nesting\n  kconfig: search for a config to base the local(mod|yes)config on\n  kconfig: keep config.gz around even if CONFIG_IKCONFIG_PROC is not set\n  kconfig: have extract-ikconfig read ELF files\n  kconfig: add check if end exists in extract-ikconfig\n  kconfig: enable CONFIG_IKCONFIG from streamline_config.pl\n  kconfig: do not warn about modules built in\n  kconfig: streamline_config.pl do not stop with no depends\n  kconfig: add make localyesconfig option\n  kconfig: make localmodconfig to run streamline_config.pl\n  kconfig: add streamline_config.pl to scripts\n"
    },
    {
      "commit": "a1922ed661ab2c1637d0b10cde933bd9cd33d965",
      "tree": "0f1777542b385ebefd30b3586d830fd8ed6fda5b",
      "parents": [
        "75e33751ca8bbb72dd6f1a74d2810ddc8cbe4bdf",
        "d28daf923ac5e4a0d7cecebae56f3e339189366b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 07 08:19:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 07 08:19:51 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core\u0027 into tracing/hw-breakpoints\n\nConflicts:\n\tarch/Kconfig\n\tkernel/trace/trace.h\n\nMerge reason: resolve the conflicts, plus adopt to the new\n              ring-buffer APIs.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6b3ef48adf847f7adf11c870e3ffacac150f1564",
      "tree": "e1403ce515bf00ade99ec806f6ab6b6db999aa0b",
      "parents": [
        "f41d911f8c49a5d65c86504c19e8204bb605c4fd"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat Aug 22 13:56:53 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 23 10:32:40 2009 +0200"
      },
      "message": "rcu: Remove CONFIG_PREEMPT_RCU\n\nNow that CONFIG_TREE_PREEMPT_RCU is in place, there is no\nfurther need for CONFIG_PREEMPT_RCU.  Remove it, along with\nwhatever subtle bugs it may (or may not) contain.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: akpm@linux-foundation.org\nCc: mathieu.desnoyers@polymtl.ca\nCc: josht@linux.vnet.ibm.com\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nLKML-Reference: \u003c125097461396-git-send-email-\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f41d911f8c49a5d65c86504c19e8204bb605c4fd",
      "tree": "59bcd3048652ef290b3e19d2904409afd5c90eb3",
      "parents": [
        "a157229cabd6dd8cfa82525fc9bf730c94cc9ac2"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat Aug 22 13:56:52 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Aug 23 10:32:40 2009 +0200"
      },
      "message": "rcu: Merge preemptable-RCU functionality into hierarchical RCU\n\nCreate a kernel/rcutree_plugin.h file that contains definitions\nfor preemptable RCU (or, under the #else branch of the #ifdef,\nempty definitions for the classic non-preemptable semantics).\nThese definitions fit into plugins defined in kernel/rcutree.c\nfor this purpose.\n\nThis variant of preemptable RCU uses a new algorithm whose\nread-side expense is roughly that of classic hierarchical RCU\nunder CONFIG_PREEMPT. This new algorithm\u0027s update-side expense\nis similar to that of classic hierarchical RCU, and, in absence\nof read-side preemption or blocking, is exactly that of classic\nhierarchical RCU.  Perhaps more important, this new algorithm\nhas a much simpler implementation, saving well over 1,000 lines\nof code compared to mainline\u0027s implementation of preemptable\nRCU, which will hopefully be retired in favor of this new\nalgorithm.\n\nThe simplifications are obtained by maintaining per-task\nnesting state for running tasks, and using a simple\nlock-protected algorithm to handle accounting when tasks block\nwithin RCU read-side critical sections, making use of lessons\nlearned while creating numerous user-level RCU implementations\nover the past 18 months.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: laijs@cn.fujitsu.com\nCc: dipankar@in.ibm.com\nCc: akpm@linux-foundation.org\nCc: mathieu.desnoyers@polymtl.ca\nCc: josht@linux.vnet.ibm.com\nCc: dvhltc@us.ibm.com\nCc: niv@us.ibm.com\nCc: peterz@infradead.org\nCc: rostedt@goodmis.org\nLKML-Reference: \u003c12509746134003-git-send-email-\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de481560eb0bd9d940b90311eba85711e4b1150b",
      "tree": "51001590f3a317a6de96d8fa32c86c5be63579dd",
      "parents": [
        "6be51ffc1791b72d11cef9bb0a578fe8c5d64c6a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Apr 30 12:32:04 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Aug 18 22:01:08 2009 -0400"
      },
      "message": "kconfig: keep config.gz around even if CONFIG_IKCONFIG_PROC is not set\n\nIf CONFIG_IKCONFIG is set but CONFIG_IKCONFIG_PROC is not, then\ngcc will optimize the config.gz out, because nobody uses it.\n\nThis patch adds \"__used\" to the config.gz data to keep it around so that\ncode like extract-ikconfig can still find it.\n\n[ Impact: allow extract-ikconfig to find config.gz ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "fa08661af834875c9bd6f7f0b1b9388dc72a6585",
      "tree": "c381fcfcfeb38515bfa93445c80ad9231343414d",
      "parents": [
        "240ebbf81f149b11a31e060ebe5ee51a3c775360",
        "64f1607ffbbc772685733ea63e6f7f4183df1b16"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Aug 15 18:55:58 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Aug 15 18:56:13 2009 +0200"
      },
      "message": "Merge commit \u0027v2.6.31-rc6\u0027 into core/rcu\n\nMerge reason: the branch was on pre-rc1 .30, update to latest.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5",
      "tree": "39ee39ee45333b9eadb0c1183d9e88f86be59983",
      "parents": [
        "61abfd2df8aa43a137ae58446dd0638a2385586e",
        "0296e4254f3318e0dcad9706fa1daf8e5addc1e9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:04 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  ftrace: Fix the output of profile\n  ring-buffer: Make it generally available\n  ftrace: Remove duplicate newline\n  tracing: Fix trace_buf_size boot option\n  ftrace: Fix t_hash_start()\n  ftrace: Don\u0027t manipulate @pos in t_start()\n  ftrace: Don\u0027t increment @pos in g_start()\n  tracing: Reset iterator in t_start()\n  trace_stat: Don\u0027t increment @pos in seq start()\n  tracing_bprintk: Don\u0027t increment @pos in t_start()\n  tracing/events: Don\u0027t increment @pos in s_start()\n"
    },
    {
      "commit": "1155de47cd66d0c496d5a6fb2223e980ef1285b2",
      "tree": "0ee762d6b1215a37fe89acc174de8cbbf476d218",
      "parents": [
        "00e54d087afb3867b0b461aef6c1ff433d0df564"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu Jun 25 14:30:12 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 10:31:30 2009 +0200"
      },
      "message": "ring-buffer: Make it generally available\n\nIn hunting down the cause for the hwlat_detector ring buffer spew in\nmy failed -next builds it became obvious that folks are now treating\nring_buffer as something that is generic independent of tracing and thus,\nsuitable for public driver consumption.\n\nGiven that there are only a few minor areas in ring_buffer that have any\nreliance on CONFIG_TRACING or CONFIG_FUNCTION_TRACER, provide stubs for\nthose and make it generally available.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Jon Masters \u003cjcm@jonmasters.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090625053012.GB19944@linux-sh.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3a6a6c16be78472a52f6dd7d88913373b42ad0f7",
      "tree": "98bb91e983e54f0c026ba3b2c6d66368d06e244a",
      "parents": [
        "c82e6d450fda56cb2d4f68534173d3cd11b32f9f"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Jun 24 16:09:01 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:42:05 2009 -0400"
      },
      "message": "audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL\n\nEven though one cannot make use of the audit watch code without\nCONFIG_AUDIT_SYSCALL the spaghetti nature of the audit code means that\nthe audit rule filtering requires that it at least be compiled.\n\nThus build the audit_watch code when we build auditfilter like it was\nbefore cfcad62c74abfef83762dc05a556d21bdf3980a2\n\nClearly this is a point of potential future cleanup..\n\nReported-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c17ef45342cc033fdf7bdd5b28615e0090f8d2e7",
      "tree": "6bb4b1d09f0801d5e3ad5a727e14035090b25931",
      "parents": [
        "f6faac71d502be1c29c81b2f45657662c3b84470"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jun 23 17:12:47 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 15:05:13 2009 +0200"
      },
      "message": "rcu: Remove Classic RCU\n\nRemove Classic RCU, given that the combination of Tree RCU and\nthe proposed Bloatwatch RCU do everything that Classic RCU can\nwith fewer bugs.\n\nTree RCU has been default in x86 builds for almost six months,\nand seems to be quite reliable, so there does not seem to be\nmuch justification for keeping the Classic RCU code and config\ncomplexity around anymore.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.ibm.com\u003e\nCc: akpm@linux-foundation.org\nCc: niv@us.ibm.com\nCc: dvhltc@us.ibm.com\nCc: dipankar@in.ibm.com\nCc: dhowells@redhat.com\nCc: lethal@linux-sh.org\nCc: kernel@wantstofly.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cfcad62c74abfef83762dc05a556d21bdf3980a2",
      "tree": "d253dbf8dfa4d31379dcd886cc1b41c69921acdd",
      "parents": [
        "ea7ae60bfe39aeedfb29571c47280bf0067ee5f3"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:36 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:59 2009 -0400"
      },
      "message": "audit: seperate audit inode watches into a subfile\n\nIn preparation for converting audit to use fsnotify instead of inotify we\nseperate the inode watching code into it\u0027s own file.  This is similar to\nhow the audit tree watching code is already seperated into audit_tree.c\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "2521f2c228ad750701ba4702484e31d876dbc386",
      "tree": "2221de3e3de9512979b8244c6304366e3be5be63",
      "parents": [
        "0b923606e75f1ab672e25b14ac039a1cdcfa382f"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "oberpar@linux.vnet.ibm.com",
        "time": "Wed Jun 17 16:28:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:03:57 2009 -0700"
      },
      "message": "gcov: add gcov profiling infrastructure\n\nEnable the use of GCC\u0027s coverage testing tool gcov [1] with the Linux\nkernel.  gcov may be useful for:\n\n * debugging (has this code been reached at all?)\n * test improvement (how do I change my test to cover these lines?)\n * minimizing kernel configurations (do I need this option if the\n   associated code is never run?)\n\nThe profiling patch incorporates the following changes:\n\n * change kbuild to include profiling flags\n * provide functions needed by profiling code\n * present profiling data as files in debugfs\n\nNote that on some architectures, enabling gcc\u0027s profiling option\n\"-fprofile-arcs\" for the entire kernel may trigger compile/link/\nrun-time problems, some of which are caused by toolchain bugs and\nothers which require adjustment of architecture code.\n\nFor this reason profiling the entire kernel is initially restricted\nto those architectures for which it is known to work without changes.\nThis restriction can be lifted once an architecture has been tested\nand found compatible with gcc\u0027s profiling. Profiling of single files\nor directories is still available on all platforms (see config help\ntext).\n\n[1] http://gcc.gnu.org/onlinedocs/gcc/Gcov.html\n\nSigned-off-by: Peter Oberparleiter \u003coberpar@linux.vnet.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Li Wei \u003cW.Li@Sun.COM\u003e\nCc: Michael Ellerman \u003cmichaele@au1.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Heiko Carstens \u003cheicars2@linux.vnet.ibm.com\u003e\nCc: Martin Schwidefsky \u003cmschwid2@linux.vnet.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eadb8a091b27a840de7450f84ecff5ef13476424",
      "tree": "58c3782d40def63baa8167f3d31e3048cb4c7660",
      "parents": [
        "73874005cd8800440be4299bd095387fff4b90ac",
        "65795efbd380a832ae508b04dba8f8e53f0b84d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 17 12:52:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 17 12:56:49 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/hw-breakpoints\n\nConflicts:\n\tarch/x86/Kconfig\n\tarch/x86/kernel/traps.c\n\tarch/x86/power/cpu.c\n\tarch/x86/power/cpu_32.c\n\tkernel/Makefile\n\nSemantic conflict:\n\tarch/x86/kernel/hw_breakpoint.c\n\nMerge reason: Resolve the conflicts, move from put_cpu_no_sched() to\n              put_cpu() in arch/x86/kernel/hw_breakpoint.c.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "30639b6af85a92491b22dd14c17b14ca11da60e6",
      "tree": "f21c4dd631da5b8750678958b29947d4d0e90cb0",
      "parents": [
        "8b0b1db0133e4218a9b45c09e53793c039edebe1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Jun 16 15:33:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 16 19:47:48 2009 -0700"
      },
      "message": "groups: move code to kernel/groups.c\n\nMove supplementary groups implementation to kernel/groups.c .\nkernel/sys.c already accumulated quite a few random stuff.\n\nDo strictly copy/paste + add required headers to compile.  Compile-tested\non many configs and archs.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.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": "940010c5a314a7bd9b498593bc6ba1718ac5aec5",
      "tree": "d141e08ced08c40c6a8e3ab2cdecde5ff14e560f",
      "parents": [
        "8dc8e5e8bc0ce00b0f656bf972f67cd8a72759e5",
        "991ec02cdca33b03a132a0cacfe6f0aa0be9aa8d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 17:55:42 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 11 17:55:42 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into perfcounters/core\n\nConflicts:\n\tarch/x86/kernel/irqinit.c\n\tarch/x86/kernel/irqinit_64.c\n\tarch/x86/kernel/traps.c\n\tarch/x86/mm/fault.c\n\tinclude/linux/sched.h\n\tkernel/exit.c\n"
    }
  ],
  "next": "62a038d34db26771756cf3689e36de638bedd2c4"
}
