)]}'
{
  "log": [
    {
      "commit": "446f24d1199e8a546ba7c97da3fbb9a505a94795",
      "tree": "42c44a565fbdd6f923e0c2403b1c62154acab1b2",
      "parents": [
        "a05342cbd62b7f6dacb8d71683d799f5e5e694b8"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Tue Apr 30 15:28:42 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:09 2013 -0700"
      },
      "message": "Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS\n\nThe help text for this config is duplicated across the x86, parisc, and\ns390 Kconfig.debug files.  Arnd Bergman noted that the help text was\nslightly misleading and should be fixed to state that enabling this\noption isn\u0027t a problem when using pre 4.4 gcc.\n\nTo simplify the rewording, consolidate the text into lib/Kconfig.debug\nand modify it there to be more explicit about when you should say N to\nthis config.\n\nAlso, make the text a bit more generic by stating that this option\nenables compile time checks so we can cover architectures which emit\nwarnings vs.  ones which emit errors.  The details of how an\narchitecture decided to implement the checks isn\u0027t as important as the\nconcept of compile time checking of copy_from_user() calls.\n\nWhile we\u0027re doing this, remove all the copy_from_user_overflow() code\nthat\u0027s duplicated many times and place it into lib/ so that any\narchitecture supporting this option can get the function for free.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Helge Deller \u003cdeller@gmx.de\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c75aaa8ed03eb1312ed2990f1a716b2b9cc0df42",
      "tree": "7646064b514d7e799ef59abe3f4f445bf2cbd029",
      "parents": [
        "4130f0efbfe5adb360328b777afa8e45f7e467f7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue Apr 30 15:28:25 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:07 2013 -0700"
      },
      "message": "rbtree_test: add __init/__exit annotations\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4130f0efbfe5adb360328b777afa8e45f7e467f7",
      "tree": "1067bb405268e345a2faa59f987491157bc82d2a",
      "parents": [
        "31c3a3fe0777642816045a8dd1b666f1718851d7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue Apr 30 15:28:24 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:07 2013 -0700"
      },
      "message": "rbtree_test: add extra rbtree integrity check\n\nAccount for the rbtree having  2**bh(v)-1 internal nodes.\n\nWhile this can be seen as a consequence of other checks, Michel states\nthat it nicely sums up what the other properties are for.\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d338b1379f96b20e63aa65082e19e9a18a93b608",
      "tree": "fce537cd0f14c8664de42be3cc7f6465adf15b79",
      "parents": [
        "576d742e4a0d0f1bab7950012addccb82fbc172a"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Tue Apr 30 15:27:32 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:03 2013 -0700"
      },
      "message": "dynamic_debug: reuse generic string_unescape function\n\nThere is kernel function to do the job in generic way. Let\u0027s use it.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16c7fa05829e8b91db48e3539c5d6ff3c2b18a23",
      "tree": "6658e9f27c033e5f6de19284fe9a6b8485360aa6",
      "parents": [
        "e1d12f327037a59e06c66520951ab4e0bd29f9c4"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Tue Apr 30 15:27:30 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:03 2013 -0700"
      },
      "message": "lib/string_helpers: introduce generic string_unescape\n\nThere are several places in kernel where modules unescapes input to convert\nC-Style Escape Sequences into byte codes.\n\nThe patch provides generic implementation of such approach. Test cases are\nalso included into the patch.\n\n[akpm@linux-foundation.org: clarify comment]\n[akpm@linux-foundation.org: export get_random_int() to modules]\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: William Hubbs \u003cw.d.hubbs@gmail.com\u003e\nCc: Chris Brannon \u003cchris@the-brannons.com\u003e\nCc: Kirk Reiser \u003ckirk@braille.uwo.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "196779b9b4ce1922afabdc20d0270720603bd46c",
      "tree": "9628ad58fef85b4cc060f434e01fe50a8e0e333c",
      "parents": [
        "89e3f23da9c827bfa9806c3d4da83a12c1c8543a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 30 15:27:12 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:02 2013 -0700"
      },
      "message": "dump_stack: consolidate dump_stack() implementations and unify their behaviors\n\nBoth dump_stack() and show_stack() are currently implemented by each\narchitecture.  show_stack(NULL, NULL) dumps the backtrace for the\ncurrent task as does dump_stack().  On some archs, dump_stack() prints\nextra information - pid, utsname and so on - in addition to the\nbacktrace while the two are identical on other archs.\n\nThe usages in arch-independent code of the two functions indicate\nshow_stack(NULL, NULL) should print out bare backtrace while\ndump_stack() is used for debugging purposes when something went wrong,\nso it does make sense to print additional information on the task which\ntriggered dump_stack().\n\nThere\u0027s no reason to require archs to implement two separate but mostly\nidentical functions.  It leads to unnecessary subtle information.\n\nThis patch expands the dummy fallback dump_stack() implementation in\nlib/dump_stack.c such that it prints out debug information (taken from\nx86) and invokes show_stack(NULL, NULL) and drops arch-specific\ndump_stack() implementations in all archs except blackfin.  Blackfin\u0027s\ndump_stack() does something wonky that I don\u0027t understand.\n\nDebug information can be printed separately by calling\ndump_stack_print_info() so that arch-specific dump_stack()\nimplementation can still emit the same debug information.  This is used\nin blackfin.\n\nThis patch brings the following behavior changes.\n\n* On some archs, an extra level in backtrace for show_stack() could be\n  printed.  This is because the top frame was determined in\n  dump_stack() on those archs while generic dump_stack() can\u0027t do that\n  reliably.  It can be compensated by inlining dump_stack() but not\n  sure whether that\u0027d be necessary.\n\n* Most archs didn\u0027t use to print debug info on dump_stack().  They do\n  now.\n\nAn example WARN dump follows.\n\n WARNING: at kernel/workqueue.c:4841 init_workqueues+0x35/0x505()\n Hardware name: empty\n Modules linked in:\n CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.9.0-rc1-work+ #9\n  0000000000000009 ffff88007c861e08 ffffffff81c614dc ffff88007c861e48\n  ffffffff8108f50f ffffffff82228240 0000000000000040 ffffffff8234a03c\n  0000000000000000 0000000000000000 0000000000000000 ffff88007c861e58\n Call Trace:\n  [\u003cffffffff81c614dc\u003e] dump_stack+0x19/0x1b\n  [\u003cffffffff8108f50f\u003e] warn_slowpath_common+0x7f/0xc0\n  [\u003cffffffff8108f56a\u003e] warn_slowpath_null+0x1a/0x20\n  [\u003cffffffff8234a071\u003e] init_workqueues+0x35/0x505\n  ...\n\nv2: CPU number added to the generic debug info as requested by s390\n    folks and dropped the s390 specific dump_stack().  This loses %ksp\n    from the debug message which the maintainers think isn\u0027t important\n    enough to keep the s390-specific dump_stack() implementation.\n\n    dump_stack_print_info() is moved to kernel/printk.c from\n    lib/dump_stack.c.  Because linkage is per objecct file,\n    dump_stack_print_info() living in the same lib file as generic\n    dump_stack() means that archs which implement custom dump_stack()\n    - at this point, only blackfin - can\u0027t use dump_stack_print_info()\n    as that will bring in the generic version of dump_stack() too.  v1\n    The v1 patch broke build on blackfin due to this issue.  The build\n    breakage was reported by Fengguang Wu.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Vineet Gupta \u003cvgupta@synopsys.com\u003e\nAcked-by: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nAcked-by: Vineet Gupta \u003cvgupta@synopsys.com\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\t[s390 bits]\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nCc: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nAcked-by: Richard Kuo \u003crkuo@codeaurora.org\u003e\t\t[hexagon bits]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16fa94b532b1958f508e07eca1a9256351241fbc",
      "tree": "90012a7b7fe2b8cf96f6f5ec12490e0c5e152291",
      "parents": [
        "e0972916e8fe943f342b0dd1c9d43dbf5bc261c2",
        "25f55d9d01ad7a7ad248fd5af1d22675ffd202c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:43:28 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 07:43:28 2013 -0700"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler changes from Ingo Molnar:\n \"The main changes in this development cycle were:\n\n   - full dynticks preparatory work by Frederic Weisbecker\n\n   - factor out the cpu time accounting code better, by Li Zefan\n\n   - multi-CPU load balancer cleanups and improvements by Joonsoo Kim\n\n   - various smaller fixes and cleanups\"\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (45 commits)\n  sched: Fix init NOHZ_IDLE flag\n  sched: Prevent to re-select dst-cpu in load_balance()\n  sched: Rename load_balance_tmpmask to load_balance_mask\n  sched: Move up affinity check to mitigate useless redoing overhead\n  sched: Don\u0027t consider other cpus in our group in case of NEWLY_IDLE\n  sched: Explicitly cpu_idle_type checking in rebalance_domains()\n  sched: Change position of resched_cpu() in load_balance()\n  sched: Fix wrong rq\u0027s runnable_avg update with rt tasks\n  sched: Document task_struct::personality field\n  sched/cpuacct/UML: Fix header file dependency bug on the UML build\n  cgroup: Kill subsys.active flag\n  sched/cpuacct: No need to check subsys active state\n  sched/cpuacct: Initialize cpuacct subsystem earlier\n  sched/cpuacct: Initialize root cpuacct earlier\n  sched/cpuacct: Allocate per_cpu cpuusage for root cpuacct statically\n  sched/cpuacct: Clean up cpuacct.h\n  sched/cpuacct: Remove redundant NULL checks in cpuacct_acount_field()\n  sched/cpuacct: Remove redundant NULL checks in cpuacct_charge()\n  sched/cpuacct: Add cpuacct_acount_field()\n  sched/cpuacct: Add cpuacct_init()\n  ...\n"
    },
    {
      "commit": "f39fee5f11f7adfcf5c9643f87718b80450be18a",
      "tree": "5565b5c7d22b4f16327dd675c9764669b5b81219",
      "parents": [
        "56a1ba5fd1802c059d08d72d09c1fec6e02e2c35"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 29 16:21:28 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:42 2013 -0700"
      },
      "message": "lib/: rename random32() to prandom_u32()\n\nUse preferable function name which implies using a pseudo-random\nnumber generator.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@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": "cedddb00023b1321f2bb2739739aa8c9927fc063",
      "tree": "425bb1e104ffd4693b28076ee35bcad8f7fbfcd9",
      "parents": [
        "3ec39abdcc0d3099e8d8894dcbcc8c9490ee48e2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Apr 29 16:21:25 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:42 2013 -0700"
      },
      "message": "uuid: use prandom_bytes()\n\nUse prandom_bytes() to generate 16 bytes of pseudo-random bytes.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e6628c4b347a558965041290c5a92791dd4c741",
      "tree": "7f437ed24761f467b61c0a401fc8d6a6ca7fee3a",
      "parents": [
        "27cf10e133c393f39399137b028c7b24d64ca06e"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Apr 29 16:21:16 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:41 2013 -0700"
      },
      "message": "idr: introduce idr_alloc_cyclic()\n\nAs Tejun points out, there are several users of the IDR facility that\nattempt to use it in a cyclic fashion.  These users are likely to see\n-ENOSPC errors after the counter wraps one or more times however.\n\nThis patchset adds a new idr_alloc_cyclic routine and converts several\nof these users to it.  Many of these users are in obscure parts of the\nkernel, and I don\u0027t have a good way to test some of them.  The change is\npretty straightforward though, so hopefully it won\u0027t be an issue.\n\nThere is one other cyclic user of idr_alloc that I didn\u0027t touch in\nipc/util.c.  That one is doing some strange stuff that I didn\u0027t quite\nunderstand, but it looks like it should probably be converted later\nsomehow.\n\nThis patch:\n\nThus spake Tejun Heo:\n\n    Ooh, BTW, the cyclic allocation is broken.  It\u0027s prone to -ENOSPC\n    after the first wraparound.  There are several cyclic users in the\n    kernel and I think it probably would be best to implement cyclic\n    support in idr.\n\nThis patch does that by adding new idr_alloc_cyclic function that such\nusers in the kernel can use.  With this, there\u0027s no need for a caller to\nkeep track of the last value used as that\u0027s now tracked internally.  This\nshould prevent the ENOSPC problems that can hit when the \"last allocated\"\ncounter exceeds INT_MAX.\n\nLater patches will convert existing cyclic users to the new interface.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nReviewed-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Eric Paris \u003ceparis@parisplace.org\u003e\nCc: Jack Morgenstein \u003cjackm@dev.mellanox.co.il\u003e\nCc: John McCutchan \u003cjohn@johnmccutchan.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nCc: Robert Love \u003crlove@rlove.org\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nCc: Vlad Yasevich \u003cvyasevich@gmail.com\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e0fb404c86d6c86dc33e284310eb5d28d192dcf",
      "tree": "c75a1dd1cab54473d3174aa00fc49d18deabfa5e",
      "parents": [
        "095d141b2e40665289d44a42d387ffac2841ef82"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Mon Apr 29 16:18:11 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:19 2013 -0700"
      },
      "message": "lib, net: make isodigit() public and use it\n\nThere are at least two users of isodigit().  Let\u0027s make it a public\nfunction of ctype.h.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "095d141b2e40665289d44a42d387ffac2841ef82",
      "tree": "3a70ce1eb403955647ab80d1089ea47e95afd9f3",
      "parents": [
        "30493cc9dddb68066dcc4878015660fdaa8e0965"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Apr 29 16:18:10 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:19 2013 -0700"
      },
      "message": "argv_split(): teach it to handle mutable strings\n\nargv_split() allocates argv[count_argc(str)] array and assumes that it\nwill find the same number of arguments later.  This is obviously wrong if\nthis string can be changed, say, by sysctl.\n\nWith this patch argv_split() kstrndup\u0027s the whole string and does not\nsplit it, we simply replace the spaces with zeroes and keep the allocated\nmemory in argv[-1] for argv_free(arg).\n\nWe do not use argv[0] because:\n\n\t- str can be all-spaces or empty. In fact this case is fine,\n\t  we could kfree() it before return, but:\n\n\t- str can have a space at the start, and we can not rely on\n\t  kstrndup(skip_spaces(str)) because it can equally race if\n\t  this string is mutable.\n\nAlso, simplify count_argc() and kill the no longer used skip_arg().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30493cc9dddb68066dcc4878015660fdaa8e0965",
      "tree": "89d750aea6ea06bbb95e5c76fa6c2279fcf6b116",
      "parents": [
        "4d22f8c306233433bdf9298b2e7806e9c71674bc"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Mon Apr 29 16:18:09 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:19 2013 -0700"
      },
      "message": "lib/int_sqrt.c: optimize square root algorithm\n\nOptimize the current version of the shift-and-subtract (hardware)\nalgorithm, described by John von Newmann[1] and Guy L Steele.\n\nIterating 1,000,000 times, perf shows for the current version:\n\n Performance counter stats for \u0027./sqrt-curr\u0027 (10 runs):\n\n         27.170996 task-clock                #    0.979 CPUs utilized            ( +-  3.19% )\n                 3 context-switches          #    0.103 K/sec                    ( +-  4.76% )\n                 0 cpu-migrations            #    0.004 K/sec                    ( +-100.00% )\n               104 page-faults               #    0.004 M/sec                    ( +-  0.16% )\n        64,921,199 cycles                    #    2.389 GHz                      ( +-  0.03% )\n        28,967,789 stalled-cycles-frontend   #   44.62% frontend cycles idle     ( +-  0.18% )\n   \u003cnot supported\u003e stalled-cycles-backend\n       104,502,623 instructions              #    1.61  insns per cycle\n                                             #    0.28  stalled cycles per insn  ( +-  0.00% )\n        34,088,368 branches                  # 1254.587 M/sec                    ( +-  0.00% )\n             4,901 branch-misses             #    0.01% of all branches          ( +-  1.32% )\n\n       0.027763015 seconds time elapsed                                          ( +-  3.22% )\n\nAnd for the new version:\n\nPerformance counter stats for \u0027./sqrt-new\u0027 (10 runs):\n\n          0.496869 task-clock                #    0.519 CPUs utilized            ( +-  2.38% )\n                 0 context-switches          #    0.000 K/sec\n                 0 cpu-migrations            #    0.403 K/sec                    ( +-100.00% )\n               104 page-faults               #    0.209 M/sec                    ( +-  0.15% )\n           590,760 cycles                    #    1.189 GHz                      ( +-  2.35% )\n           395,053 stalled-cycles-frontend   #   66.87% frontend cycles idle     ( +-  3.67% )\n   \u003cnot supported\u003e stalled-cycles-backend\n           398,963 instructions              #    0.68  insns per cycle\n                                             #    0.99  stalled cycles per insn  ( +-  0.39% )\n            70,228 branches                  #  141.341 M/sec                    ( +-  0.36% )\n             3,364 branch-misses             #    4.79% of all branches          ( +-  5.45% )\n\n       0.000957440 seconds time elapsed                                          ( +-  2.42% )\n\nFurthermore, this saves space in instruction text:\n\n   text    data     bss     dec     hex filename\n    111       0       0     111      6f lib/int_sqrt-baseline.o\n     89       0       0      89      59 lib/int_sqrt.o\n\n[1] http://en.wikipedia.org/wiki/First_Draft_of_a_Report_on_the_EDVAC\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Jonathan Gonzalez \u003cjgonzlez@linets.cl\u003e\nTested-by: Jonathan Gonzalez \u003cjgonzlez@linets.cl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9375db07adeaeea5f5ea7ca0463a8b371d71ddbb",
      "tree": "8825d1985a7bd6acd9e13de4594c574c81dd11fe",
      "parents": [
        "3119b487e03650b51589a86aac33098b7cc2a09e"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "p.zabel@pengutronix.de",
        "time": "Mon Apr 29 16:17:10 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 18:28:13 2013 -0700"
      },
      "message": "genalloc: add devres support, allow to find a managed pool by device\n\nThis patch adds three exported functions to lib/genalloc.c:\ndevm_gen_pool_create, dev_get_gen_pool, and of_get_named_gen_pool.\n\ndevm_gen_pool_create is a managed version of gen_pool_create that keeps\ntrack of the pool via devres and allows the management code to\nautomatically destroy it after device removal.\n\ndev_get_gen_pool retrieves the gen_pool for a given device, if it was\ncreated with devm_gen_pool_create, using devres_find.\n\nof_get_named_gen_pool retrieves the gen_pool for a given device node and\nproperty name, where the property must contain a phandle pointing to a\nplatform device node.  The corresponding platform device is then fed into\ndev_get_gen_pool and the resulting gen_pool is returned.\n\n[akpm@linux-foundation.org: make the of_get_named_gen_pool() stub static, fixing a zillion link errors]\n[akpm@linux-foundation.org: squish \"struct device declared inside parameter list\" warning]\nSigned-off-by: Philipp Zabel \u003cp.zabel@pengutronix.de\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Fabio Estevam \u003cfabio.estevam@freescale.com\u003e\nCc: Matt Porter \u003cmporter@ti.com\u003e\nCc: Dong Aisheng \u003cdong.aisheng@linaro.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nCc: Javier Martin \u003cjavier.martin@vista-silicon.com\u003e\nCc: Huang Shijie \u003cshijie8@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": "4b59e6c4730978679b414a8da61514a2518da512",
      "tree": "241f48acea764191a458c6ae2d058b079b24f12d",
      "parents": [
        "fe0bfaaff84429a35e4447d4ccd646aecf5999fb"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Apr 29 15:06:11 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 29 15:54:28 2013 -0700"
      },
      "message": "mm, show_mem: suppress page counts in non-blockable contexts\n\nOn large systems with a lot of memory, walking all RAM to determine page\ntypes may take a half second or even more.\n\nIn non-blockable contexts, the page allocator will emit a page allocation\nfailure warning unless __GFP_NOWARN is specified.  In such contexts, irqs\nare typically disabled and such a lengthy delay may even result in NMI\nwatchdog timeouts.\n\nTo fix this, suppress the page walk in such contexts when printing the\npage allocation failure warning.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Dave Hansen \u003cdave@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": "830ac8524f301da8867400777d5c19e6d01ec525",
      "tree": "8d8588c66e9d424973304a84e6857d1a87695eaa",
      "parents": [
        "db93f8b42036bd60d95e8d28ee98b308d5846b9f",
        "157752d84f5df47e01577970f9c5f61a0b9f4546"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 20 18:40:36 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 20 18:40:36 2013 -0700"
      },
      "message": "Merge branch \u0027x86-kdump-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull kdump fixes from Peter Anvin:\n \"The kexec/kdump people have found several problems with the support\n  for loading over 4 GiB that was introduced in this merge cycle.  This\n  is partly due to a number of design problems inherent in the way the\n  various pieces of kdump fit together (it is pretty horrifically manual\n  in many places.)\n\n  After a *lot* of iterations this is the patchset that was agreed upon,\n  but of course it is now very late in the cycle.  However, because it\n  changes both the syntax and semantics of the crashkernel option, it\n  would be desirable to avoid a stable release with the broken\n  interfaces.\"\n\nI\u0027m not happy with the timing, since originally the plan was to release\nthe final 3.9 tomorrow.  But apparently I\u0027m doing an -rc8 instead...\n\n* \u0027x86-kdump-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  kexec: use Crash kernel for Crash kernel low\n  x86, kdump: Change crashkernel_high/low\u003d to crashkernel\u003d,high/low\n  x86, kdump: Retore crashkernel\u003d to allocate under 896M\n  x86, kdump: Set crashkernel_low automatically\n"
    },
    {
      "commit": "db93f8b42036bd60d95e8d28ee98b308d5846b9f",
      "tree": "e98018a262346250f9bf8ff68b80132a94fd18ab",
      "parents": [
        "8c3a13c84b90f2551b646ff2956ac68bef69a810",
        "c0a9f451e4e7ecd2ad1a6c27ea5c31d0226bdddf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 20 18:38:48 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 20 18:38:48 2013 -0700"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 fixes from Peter Anvin:\n \"Three groups of fixes:\n\n   1. Make sure we don\u0027t execute the early microcode patching if family\n      \u003c 6, since it would touch MSRs which don\u0027t exist on those\n      families, causing crashes.\n\n   2. The Xen partial emulation of HyperV can be dealt with more\n      gracefully than just disabling the driver.\n\n   3. More EFI variable space magic.  In particular, variables hidden\n      from runtime code need to be taken into account too.\"\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, microcode: Verify the family before dispatching microcode patching\n  x86, hyperv: Handle Xen emulation of Hyper-V more gracefully\n  x86,efi: Implement efi_no_storage_paranoia parameter\n  efi: Export efi_query_variable_store() for efivars.ko\n  x86/Kconfig: Make EFI select UCS2_STRING\n  efi: Distinguish between \"remaining space\" and actually used space\n  efi: Pass boot services variable info to runtime code\n  Move utf16 functions to kernel core and rename\n  x86,efi: Check max_size only if it is non-zero.\n  x86, efivars: firmware bug workarounds should be in platform code\n"
    },
    {
      "commit": "c0a9f451e4e7ecd2ad1a6c27ea5c31d0226bdddf",
      "tree": "dcb22c46c33a994db115ec8925093f91f6463f15",
      "parents": [
        "74c3e3fcf350b2e7e3eaf9550528ee3f74e44b37",
        "8c58bf3eec3b8fc8162fe557e9361891c20758f2"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Apr 19 17:09:03 2013 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Fri Apr 19 17:09:03 2013 -0700"
      },
      "message": "Merge remote-tracking branch \u0027efi/urgent\u0027 into x86/urgent\n\nMatt Fleming (1):\n      x86, efivars: firmware bug workarounds should be in platform\n      code\n\nMatthew Garrett (3):\n      Move utf16 functions to kernel core and rename\n      efi: Pass boot services variable info to runtime code\n      efi: Distinguish between \"remaining space\" and actually used\n      space\n\nRichard Weinberger (2):\n      x86,efi: Check max_size only if it is non-zero.\n      x86,efi: Implement efi_no_storage_paranoia parameter\n\nSergey Vlasov (2):\n      x86/Kconfig: Make EFI select UCS2_STRING\n      efi: Export efi_query_variable_store() for efivars.ko\n\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "c729de8fcea37a1c444e81857eace12494c804a9",
      "tree": "9400f7626dcbb7038b524ac2ea73315e6a0b6e55",
      "parents": [
        "41ef2d5678d83af030125550329b6ae8b74618fa"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Apr 15 22:23:45 2013 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Wed Apr 17 12:35:32 2013 -0700"
      },
      "message": "x86, kdump: Set crashkernel_low automatically\n\nChao said that kdump does does work well on his system on 3.8\nwithout extra parameter, even iommu does not work with kdump.\nAnd now have to append crashkernel_low\u003dY in first kernel to make\nkdump work.\n\nWe have now modified crashkernel\u003dX to allocate memory beyong 4G (if\navailable) and do not allocate low range for crashkernel if the user\ndoes not specify that with crashkernel_low\u003dY.  This causes regression\nif iommu is not enabled.  Without iommu, swiotlb needs to be setup in\nfirst 4G and there is no low memory available to second kernel.\n\nSet crashkernel_low automatically if the user does not specify that.\n\nFor system that does support IOMMU with kdump properly, user could\nspecify crashkernel_low\u003d0 to save that 72M low ram.\n\n-v3: add swiotlb_size() according to Konrad.\n-v4: add comments what 8M is for according to hpa.\n     also update more crashkernel_low\u003d in kernel-parameters.txt\n-v5: update changelog according to Vivek.\n-v6: Change description about swiotlb referring according to HATAYAMA.\n\nReported-by: WANG Chao \u003cchaowang@redhat.com\u003e\nTested-by: WANG Chao \u003cchaowang@redhat.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLink: http://lkml.kernel.org/r/1366089828-19692-2-git-send-email-yinghai@kernel.org\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "0635eb8a54cf0fea64b174bb68bc36b9c3d622db",
      "tree": "9430096d286e5da9044ab7e6cb85bdaca07c9717",
      "parents": [
        "7791c8423f1f7f4dad94e753bae67461d5b80be8"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "matthew.garrett@nebula.com",
        "time": "Mon Apr 15 13:09:45 2013 -0700"
      },
      "committer": {
        "name": "Matt Fleming",
        "email": "matt.fleming@intel.com",
        "time": "Mon Apr 15 21:23:03 2013 +0100"
      },
      "message": "Move utf16 functions to kernel core and rename\n\nWe want to be able to use the utf16 functions that are currently present\nin the EFI variables code in platform-specific code as well. Move them to\nthe kernel core, and in the process rename them to accurately describe what\nthey do - they don\u0027t handle UTF16, only UCS2.\n\nSigned-off-by: Matthew Garrett \u003cmatthew.garrett@nebula.com\u003e\nSigned-off-by: Matt Fleming \u003cmatt.fleming@intel.com\u003e\n"
    },
    {
      "commit": "a49b7e82cab0f9b41f483359be83f44fbb6b4979",
      "tree": "dd18125677dd5fbf491029b718610d15d07b4b89",
      "parents": [
        "1de14c3c5cbc9bb17e9dcc648cda51c0c85d54b9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 13 15:15:30 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Apr 13 15:15:30 2013 -0700"
      },
      "message": "kobject: fix kset_find_obj() race with concurrent last kobject_put()\n\nAnatol Pomozov identified a race condition that hits module unloading\nand re-loading.  To quote Anatol:\n\n \"This is a race codition that exists between kset_find_obj() and\n  kobject_put().  kset_find_obj() might return kobject that has refcount\n  equal to 0 if this kobject is freeing by kobject_put() in other\n  thread.\n\n  Here is timeline for the crash in case if kset_find_obj() searches for\n  an object tht nobody holds and other thread is doing kobject_put() on\n  the same kobject:\n\n    THREAD A (calls kset_find_obj())     THREAD B (calls kobject_put())\n    splin_lock()\n                                         atomic_dec_return(kobj-\u003ekref), counter gets zero here\n                                         ... starts kobject cleanup ....\n                                         spin_lock() // WAIT thread A in kobj_kset_leave()\n    iterate over kset-\u003elist\n    atomic_inc(kobj-\u003ekref) (counter becomes 1)\n    spin_unlock()\n                                         spin_lock() // taken\n                                         // it does not know that thread A increased counter so it\n                                         remove obj from list\n                                         spin_unlock()\n                                         vfree(module) // frees module object with containing kobj\n\n    // kobj points to freed memory area!!\n    kobject_put(kobj) // OOPS!!!!\n\n  The race above happens because module.c tries to use kset_find_obj()\n  when somebody unloads module.  The module.c code was introduced in\n  commit 6494a93d55fa\"\n\nAnatol supplied a patch specific for module.c that worked around the\nproblem by simply not using kset_find_obj() at all, but rather than make\na local band-aid, this just fixes kset_find_obj() to be thread-safe\nusing the proper model of refusing the get a new reference if the\nrefcount has already dropped to zero.\n\nSee examples of this proper refcount handling not only in the kref\ndocumentation, but in various other equivalent uses of this pattern by\ngrepping for atomic_inc_not_zero().\n\n[ Side note: the module race does indicate that module loading and\n  unloading is not properly serialized wrt sysfs information using the\n  module mutex.  That may require further thought, but this is the\n  correct fix at the kobject layer regardless. ]\n\nReported-analyzed-and-tested-by: Anatol Pomozov \u003canatol.pomozov@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "96e7d7a1e0fc7780b4c1981c787e42473aa91a95",
      "tree": "dcb32597569f7b45ba48ae28c717f79661c0ff17",
      "parents": [
        "8d640a51ec9e9cdefa680b67ad55f933eefc5923"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Fri Mar 22 15:04:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 22 16:41:20 2013 -0700"
      },
      "message": "dma-debug: update DMA debug API to better handle multiple mappings of a buffer\n\nThere were reports of the igb driver unmapping buffers without calling\ndma_mapping_error.  On closer inspection issues were found in the DMA\ndebug API and how it handled multiple mappings of the same buffer.\n\nThe issue I found is the fact that the debug_dma_mapping_error would\nonly set the map_err_type to MAP_ERR_CHECKED in the case that the was\nonly one match for device and device address.  However in the case of\nnon-IOMMU, multiple addresses existed and as a result it was not setting\nthis field once a second mapping was instantiated.  I have resolved this\nby changing the search so that it instead will now set MAP_ERR_CHECKED\non the first buffer that matches the device and DMA address that is\ncurrently in the state MAP_ERR_NOT_CHECKED.\n\nA secondary side effect of this patch is that in the case of multiple\nbuffers using the same address only the last mapping will have a valid\nmap_err_type.  The previous mappings will all end up with map_err_type\nset to MAP_ERR_CHECKED because of the dma_mapping_error call in\ndebug_dma_map_page.  However this behavior may be preferable as it means\nyou will likely only see one real error per multi-mapped buffer, versus\nthe current behavior of multiple false errors mer multi-mapped buffer.\n\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nReviewed-by: Shuah Khan \u003cshuah.khan@hp.com\u003e\nTested-by: Shuah Khan \u003cshuah.khan@hp.com\u003e\nCc: Jakub Kicinski \u003ckubakici@wp.pl\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@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": "8d640a51ec9e9cdefa680b67ad55f933eefc5923",
      "tree": "c8e8964a54f42a529fceb6ef80590592d13bf68d",
      "parents": [
        "0ef1594c017521ea89278e80fe3f80dafb17abde"
      ],
      "author": {
        "name": "Alexander Duyck",
        "email": "alexander.h.duyck@intel.com",
        "time": "Fri Mar 22 15:04:48 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 22 16:41:20 2013 -0700"
      },
      "message": "dma-debug: fix locking bug in check_unmap()\n\nIn check_unmap() it is possible to get into a dead-locked state if\ndma_mapping_error is called.  The problem is that the bucket is locked in\ncheck_unmap, and locked again by debug_dma_mapping_error which is called\nby dma_mapping_error.  To resolve that we must release the lock on the\nbucket before making the call to dma_mapping_error.\n\n[akpm@linux-foundation.org: restore 80-col trickery to be consistent with the rest of the file]\nSigned-off-by: Alexander Duyck \u003calexander.h.duyck@intel.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nReviewed-by: Shuah Khan \u003cshuah.khan@hp.com\u003e\nTested-by: Shuah Khan \u003cshuah.khan@hp.com\u003e\nCc: Jakub Kicinski \u003ckubakici@wp.pl\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@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": "dc72c32e1fd872a9a4fdfe645283c9dcd68e556d",
      "tree": "66f817ecb840f59173de2a95a9a69fb5c3a75d21",
      "parents": [
        "fe8d52614bd419cedef85ef55850fd090373f481"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 22 15:04:39 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 22 16:41:20 2013 -0700"
      },
      "message": "printk: Provide a wake_up_klogd() off-case\n\nwake_up_klogd() is useless when CONFIG_PRINTK\u003dn because neither printk()\nnor printk_sched() are in use and there are actually no waiter on\nlog_wait waitqueue.  It should be a stub in this case for users like\nbust_spinlocks().\n\nOtherwise this results in this warning when CONFIG_PRINTK\u003dn and\nCONFIG_IRQ_WORK\u003dn:\n\n\tkernel/built-in.o In function `wake_up_klogd\u0027:\n\t(.text.wake_up_klogd+0xb4): undefined reference to `irq_work_queue\u0027\n\nTo fix this, provide an off-case for wake_up_klogd() when\nCONFIG_PRINTK\u003dn.\n\nThere is much more from console_unlock() and other console related code\nin printk.c that should be moved under CONFIG_PRINTK.  But for now,\nfocus on a minimal fix as we passed the merged window already.\n\n[akpm@linux-foundation.org: include printk.h in bust_spinlocks.c]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReported-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@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": "59bfbcf01967d4d3370a2b8294673dd709e732cc",
      "tree": "e868c63aadb6cb943e457ed2e16fcefc151243aa",
      "parents": [
        "415586c9e6d35ca116af714d7d0bea9c9f998ce5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 13 14:59:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 13 15:21:49 2013 -0700"
      },
      "message": "idr: idr_alloc() shouldn\u0027t trigger lowmem warning when preloaded\n\nGFP_NOIO is often used for idr_alloc() inside preloaded section as the\nallocation mask doesn\u0027t really matter.  If the idr tree needs to be\nexpanded, idr_alloc() first tries to allocate using the specified\nallocation mask and if it fails falls back to the preloaded buffer.  This\norder prevent non-preloading idr_alloc() users from taking advantage of\npreloading ones by using preload buffer without filling it shifting the\nburden of allocation to the preload users.\n\nUnfortunately, this allowed/expected-to-fail kmem_cache allocation ends up\ngenerating spurious slab lowmem warning before succeeding the request from\nthe preload buffer.\n\nThis patch makes idr_layer_alloc() add __GFP_NOWARN to the first\nkmem_cache attempt and try kmem_cache again w/o __GFP_NOWARN after\nallocation from preload_buffer fails so that lowmem warning is generated\nif not suppressed by the original @gfp_mask.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: David Teigland \u003cteigland@redhat.com\u003e\nTested-by: David Teigland \u003cteigland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97da55fcec6e3898f50010a6847dfa64f7c085e6",
      "tree": "bcd5b654013262a7c21e35edb1c37fc92f9730f9",
      "parents": [
        "6d7825b10dbeafd60627cd04291fb10ec2b5b973"
      ],
      "author": {
        "name": "Paul Bolle",
        "email": "pebolle@tiscali.nl",
        "time": "Wed Mar 13 14:59:44 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 13 15:21:48 2013 -0700"
      },
      "message": "decompressors: fix typo \"POWERPC\"\n\nCommit 5dc49c75a26b (\"decompressors: make the default XZ_DEC_* config\nmatch the selected architecture\") added\n\n\tdefault y if POWERPC\n\nto lib/xz/Kconfig.  But there is no Kconfig symbol POWERPC.  The most\ngeneral Kconfig symbol for the powerpc architecture is PPC.  So let\u0027s\nuse that.\n\nSigned-off-by: Paul Bolle \u003cpebolle@tiscali.nl\u003e\nCc: Florian Fainelli \u003cflorian@openwrt.org\u003e\nCc: Lasse Collin \u003classe.collin@tukaani.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c8615d3716fe327c2540cf514a34b227dc9b39e8",
      "tree": "2ad264bec1623c7b0cf43998b74654dd627a6e24",
      "parents": [
        "8e467e855ca5ed2921f290655f96ac40d5dc571c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 13 14:59:42 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 13 15:21:47 2013 -0700"
      },
      "message": "idr: deprecate idr_pre_get() and idr_get_new[_above]()\n\nNow that all in-kernel users are converted to ues the new alloc\ninterface, mark the old interface deprecated.  We should be able to\nremove these in a few releases.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f792685006274a850e6cc0ea9ade275ccdfc90bc",
      "tree": "712b47504d4e62906e966abef11c2e051a028889",
      "parents": [
        "660cc00f8c6f7a2e16c25918590b470e86de19ec"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Mar 05 18:05:46 2013 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Mar 13 18:03:27 2013 +0100"
      },
      "message": "math64: New div64_u64_rem helper\n\nProvide an extended version of div64_u64() that\nalso returns the remainder of the division.\n\nWe are going to need this to refine the cputime\nscaling code.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Stanislaw Gruszka \u003csgruszka@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5857f70c8a62377c2304d8ad27e579881728fc5a",
      "tree": "81b82656af2594c4f204f36fa4071dfb2c0dc35c",
      "parents": [
        "a3633f6730239e7d39316aeb119c1bb9e1e83d66"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@infradead.org",
        "time": "Mon Mar 04 14:32:54 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 12 20:42:09 2013 -0700"
      },
      "message": "idr: fix new kernel-doc warnings\n\nFix new kernel-doc warnings in idr:\n\n  Warning(include/linux/idr.h:113): No description found for parameter \u0027idr\u0027\n  Warning(include/linux/idr.h:113): Excess function parameter \u0027idp\u0027 description in \u0027idr_find\u0027\n  Warning(lib/idr.c:232): Excess function parameter \u0027id\u0027 description in \u0027sub_alloc\u0027\n  Warning(lib/idr.c:232): Excess function parameter \u0027id\u0027 description in \u0027sub_alloc\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2e1c9b2867656ff9a469d23e1dfe90cf77ec0c72",
      "tree": "b1f8c8a5fde730b2e3c71239e125e451df039fa5",
      "parents": [
        "7880639c3e4fde5953ff243ee52204ddc5af641b"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Mar 08 12:43:30 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 08 15:05:34 2013 -0800"
      },
      "message": "idr: remove WARN_ON_ONCE() on negative IDs\n\nidr_find(), idr_remove() and idr_replace() used to silently ignore the\nsign bit and perform lookup with the rest of the bits.  The weird behavior\nhas been changed such that negative IDs are treated as invalid.  As the\nbehavior change was subtle, WARN_ON_ONCE() was added in the hope of\ndetermining who\u0027s calling idr functions with negative IDs so that they can\nbe examined for problems.\n\nUp until now, all two reported cases are ID number coming directly from\nuserland and getting fed into idr_find() and the warnings seem to cause\nmore problems than being helpful.  Drop the WARN_ON_ONCE()s.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: \u003cmarkus@trippelsdorf.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8fd5e7a2d9574b3cac1c9264ad1aed3b613ed6fe",
      "tree": "5696f5d31c6c75b71bfc4852fb234b773e266cfe",
      "parents": [
        "529e5fbcd8d3cb48cf824ac8fde91cc80a9e985f",
        "c60ac31542e93499b58dcfc1e3f6550ba5b5728e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 03 12:06:09 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 03 12:06:09 2013 -0800"
      },
      "message": "Merge tag \u0027metag-v3.9-rc1-v4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag\n\nPull new ImgTec Meta architecture from James Hogan:\n \"This adds core architecture support for Imagination\u0027s Meta processor\n  cores, followed by some later miscellaneous arch/metag cleanups and\n  fixes which I kept separate to ease review:\n\n   - Support for basic Meta 1 (ATP) and Meta 2 (HTP) core architecture\n   - A few fixes all over, particularly for symbol prefixes\n   - A few privilege protection fixes\n   - Several cleanups (setup.c includes, split out a lot of\n     metag_ksyms.c)\n   - Fix some missing exports\n   - Convert hugetlb to use vm_unmapped_area()\n   - Copy device tree to non-init memory\n   - Provide dma_get_sgtable()\"\n\n* tag \u0027metag-v3.9-rc1-v4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag: (61 commits)\n  metag: Provide dma_get_sgtable()\n  metag: prom.h: remove declaration of metag_dt_memblock_reserve()\n  metag: copy devicetree to non-init memory\n  metag: cleanup metag_ksyms.c includes\n  metag: move mm/init.c exports out of metag_ksyms.c\n  metag: move usercopy.c exports out of metag_ksyms.c\n  metag: move setup.c exports out of metag_ksyms.c\n  metag: move kick.c exports out of metag_ksyms.c\n  metag: move traps.c exports out of metag_ksyms.c\n  metag: move irq enable out of irqflags.h on SMP\n  genksyms: fix metag symbol prefix on crc symbols\n  metag: hugetlb: convert to vm_unmapped_area()\n  metag: export clear_page and copy_page\n  metag: export metag_code_cache_flush_all\n  metag: protect more non-MMU memory regions\n  metag: make TXPRIVEXT bits explicit\n  metag: kernel/setup.c: sort includes\n  perf: Enable building perf tools for Meta\n  metag: add boot time LNKGET/LNKSET check\n  metag: add __init to metag_cache_probe()\n  ...\n"
    },
    {
      "commit": "79f83c02944ccb3dffbc5852e63e966ea34ed63e",
      "tree": "c23ee5762f2fd7f3d94c7245cf72f8bbb42c5f7e",
      "parents": [
        "9ca52ed979b6b45ae480a5fc56d593efb3bf16e8"
      ],
      "author": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Wed Dec 05 11:34:13 2012 +0000"
      },
      "committer": {
        "name": "James Hogan",
        "email": "james.hogan@imgtec.com",
        "time": "Sat Mar 02 20:09:53 2013 +0000"
      },
      "message": "Kconfig.debug: add METAG to dependency lists\n\nAdd [!]METAG to a couple of Kconfig dependencies in lib/Kconfig.debug.\nDon\u0027t allow stack utilization instrumentation on metag, and allow\nbuilding with frame pointers.\n\nSigned-off-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: \"Paul E. McKenney\" \u003cpaul.mckenney@linaro.org\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "3cfb07743a5bffecba83f0da26444e85c0a9bfbb",
      "tree": "c27f27a8d8f4bad9eed265cf0894d2ce8f058b1d",
      "parents": [
        "e23b62256a361611cbd45cd1456638f1a5106b5c",
        "36dfea42cc35509b481377980338cc3b89d79256"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 08:31:39 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 08:31:39 2013 -0800"
      },
      "message": "Merge tag \u0027for_linux-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb\n\nPull KGDB/KDB fixes and cleanups from Jason Wessel:\n \"For a change we removed more code than we added.  If people aren\u0027t\n  using it we shouldn\u0027t be carrying it.  :-)\n\n  Cleanups:\n   - Remove kdb ssb command - there is no in kernel disassembler to\n     support it\n\n   - Remove kdb ll command - Always caused a kernel oops and there were\n     no bug reports so no one was using this command\n\n   - Use kernel ARRAY_SIZE macro instead of array computations\n\n  Fixes:\n   - Stop oops in kdb if user executes kdb_defcmd with args\n\n   - kdb help command truncated text\n\n   - ppc64 support for kgdbts\n\n   - Add missing kconfig option from original kdb port for dealing with\n     catastrophic kernel crashes such that you can reboot automatically\n     on continue from kdb\"\n\n* tag \u0027for_linux-3.9\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:\n  kdb: Remove unhandled ssb command\n  kdb: Prevent kernel oops with kdb_defcmd\n  kdb: Remove the ll command\n  kdb_main: fix help print\n  kdb: Fix overlap in buffers with strcpy\n  Fixed dead ifdef block by adding missing Kconfig option.\n  kdb: Setup basic kdb state before invoking commands via kgdb\n  kdb: use ARRAY_SIZE where possible\n  kgdb/kgdbts: support ppc64\n  kdb: A fix for kdb command table expansion\n"
    },
    {
      "commit": "e23b62256a361611cbd45cd1456638f1a5106b5c",
      "tree": "472968c961432a1d9d0c3634ca20433f1d9cd29b",
      "parents": [
        "aebb2afd5420c860b7fbc3882a323ef1247fbf16",
        "8ccfe6675fa974bd06d64f74d0fdee6a5267d2aa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 07:58:56 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 02 07:58:56 2013 -0800"
      },
      "message": "Merge tag \u0027arc-v3.9-rc1-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc\n\nPull new ARC architecture from Vineet Gupta:\n \"Initial ARC Linux port with some fixes on top for 3.9-rc1:\n\n  I would like to introduce the Linux port to ARC Processors (from\n  Synopsys) for 3.9-rc1.  The patch-set has been discussed on the public\n  lists since Nov and has received a fair bit of review, specially from\n  Arnd, tglx, Al and other subsystem maintainers for DeviceTree, kgdb...\n\n  The arch bits are in arch/arc, some asm-generic changes (acked by\n  Arnd), a minor change to PARISC (acked by Helge).\n\n  The series is a touch bigger for a new port for 2 main reasons:\n\n   1. It enables a basic kernel in first sub-series and adds\n      ptrace/kgdb/.. later\n\n   2. Some of the fallout of review (DeviceTree support, multi-platform-\n      image support) were added on top of orig series, primarily to\n      record the revision history.\n\n  This updated pull request additionally contains\n\n   - fixes due to our GNU tools catching up with the new syscall/ptrace\n     ABI\n\n   - some (minor) cross-arch Kconfig updates.\"\n\n* tag \u0027arc-v3.9-rc1-late\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (82 commits)\n  ARC: split elf.h into uapi and export it for userspace\n  ARC: Fixup the current ABI version\n  ARC: gdbserver using regset interface possibly broken\n  ARC: Kconfig cleanup tracking cross-arch Kconfig pruning in merge window\n  ARC: make a copy of flat DT\n  ARC: [plat-arcfpga] DT arc-uart bindings change: \"baud\" \u003d\u003e \"current-speed\"\n  ARC: Ensure CONFIG_VIRT_TO_BUS is not enabled\n  ARC: Fix pt_orig_r8 access\n  ARC: [3.9] Fallout of hlist iterator update\n  ARC: 64bit RTSC timestamp hardware issue\n  ARC: Don\u0027t fiddle with non-existent caches\n  ARC: Add self to MAINTAINERS\n  ARC: Provide a default serial.h for uart drivers needing BASE_BAUD\n  ARC: [plat-arcfpga] defconfig for fully loaded ARC Linux\n  ARC: [Review] Multi-platform image #8: platform registers SMP callbacks\n  ARC: [Review] Multi-platform image #7: SMP common code to use callbacks\n  ARC: [Review] Multi-platform image #6: cpu-to-dma-addr optional\n  ARC: [Review] Multi-platform image #5: NR_IRQS defined by ARC core\n  ARC: [Review] Multi-platform image #4: Isolate platform headers\n  ARC: [Review] Multi-platform image #3: switch to board callback\n  ...\n"
    },
    {
      "commit": "3b0eb71ec9e22c6735c84f800d6523c96839efe6",
      "tree": "645a97a4242eab936ba5f7b4d9dccfda9bd6f346",
      "parents": [
        "00370b8f8dd6e3171b8202f9c5187a5f73e99497"
      ],
      "author": {
        "name": "Robert Obermeier",
        "email": "obbi89@gmail.com",
        "time": "Sun Dec 16 05:59:36 2012 +0100"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Sat Mar 02 08:52:18 2013 -0600"
      },
      "message": "Fixed dead ifdef block by adding missing Kconfig option.\n\nAdded missing Kconfig option KDB_CONTINUE_CATASTROPHIC which lead to a dead\nifdef block in kernel/debug/kdb/kdb_main.c:73-75.\n\nThe code using KDB_CONTINUE_CATASTROPHIC was originally introduced in\ncommit \u00275d5314d6795f3c1c0f415348ff8c51f7de042b77\u0027 by Jason Wessel.\nThis patchset (\"kdb: core for kgdb back end (1 of 2)\")\nadded platform independent part of kdb to the linux kernel.\n\nThe Kernel option however, even though it had the same options and\nbehaviour on all supported architectures, was part of the x86 and\nia64 patchset of KDB and therefore not pulled into the mainline kernel tree.\n\nI actually took the originally written Kconfig by\nKeith Owens \u003ckaos@sgi.com\u003e (2003-06-20 according to KDB changelog)\nand changed it to reflect the correct behaviour,\nas the KDUMP patchset is not part of the kernel and the expected\nfunctionality is missing from it.\n\nSigned-off-by: Robert Obermeier \u003cobbi89@googlemail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "b0af9cd9aab60ceb17d3ebabb9fdf4ff0a99cf50",
      "tree": "15c56f48f249c839d4049fdbd71f1bcce14bdd65",
      "parents": [
        "1e5005979e45337dab9e2c2e4a75ebd71168c004",
        "0ec7382036922be063b515b2a3f1d6f7a607392c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 28 20:45:52 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 28 20:45:52 2013 -0800"
      },
      "message": "Merge tag \u0027lzo-update-signature-20130226\u0027 of git://github.com/markus-oberhumer/linux\n\nPull LZO compression update from Markus Oberhumer:\n \"Summary:\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\n  Update the Linux kernel LZO compression and decompression code to the\n  current upstream version which features significant performance\n  improvements on modern machines.\n\n  Some *synthetic* benchmarks:\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\n\n    x86_64 (Sandy Bridge), gcc-4.6 -O3, Silesia test corpus, 256 kB block-size:\n\n                     compression speed   decompression speed\n\n    LZO-2005    :         150 MB/sec          468 MB/sec\n    LZO-2012    :         434 MB/sec         1210 MB/sec\n\n    i386 (Sandy Bridge), gcc-4.6 -O3, Silesia test corpus, 256 kB block-size:\n\n                     compression speed   decompression speed\n\n    LZO-2005    :         143 MB/sec          409 MB/sec\n    LZO-2012    :         372 MB/sec         1121 MB/sec\n\n    armv7 (Cortex-A9), Linaro gcc-4.6 -O3, Silesia test corpus, 256 kB block-size:\n\n                     compression speed   decompression speed\n\n    LZO-2005    :          27 MB/sec           84 MB/sec\n    LZO-2012    :          44 MB/sec          117 MB/sec\n  **LZO-2013-UA :          47 MB/sec          167 MB/sec\n\n  Legend:\n\n    LZO-2005    : LZO version in current 3.8 kernel (which is based on\n                     the LZO 2.02 release from 2005)\n    LZO-2012    : updated LZO version available in linux-next\n  **LZO-2013-UA : updated LZO version available in linux-next plus experimental\n                     ARM Unaligned Access patch. This needs approval\n                     from some ARM maintainer ist NOT YET INCLUDED.\"\n\nAndrew Morton \u003cakpm@linux-foundation.org\u003e acks it and says:\n \"There\u0027s a new LZ4 on the block which is even faster than the sped-up\n  LZO, but various filesystems and things use LZO\"\n\n* tag \u0027lzo-update-signature-20130226\u0027 of git://github.com/markus-oberhumer/linux:\n  crypto: testmgr - update LZO compression test vectors\n  lib/lzo: Update LZO compression to current upstream version\n  lib/lzo: Rename lzo1x_decompress.c to lzo1x_decompress_safe.c\n"
    },
    {
      "commit": "b67bfe0d42cac56c512dd5da4b1b347a23f4b70a",
      "tree": "3d465aea12b97683f26ffa38eba8744469de9997",
      "parents": [
        "1e142b29e210b5dfb2deeb6ce2210b60af16d2a6"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "sasha.levin@oracle.com",
        "time": "Wed Feb 27 17:06:00 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:24 2013 -0800"
      },
      "message": "hlist: drop the node parameter from iterators\n\nI\u0027m not sure why, but the hlist for each entry iterators were conceived\n\n        list_for_each_entry(pos, head, member)\n\nThe hlist ones were greedy and wanted an extra parameter:\n\n        hlist_for_each_entry(tpos, pos, head, member)\n\nWhy did they need an extra pos parameter? I\u0027m not quite sure. Not only\nthey don\u0027t really need it, it also prevents the iterator from looking\nexactly like the list iterator, which is unfortunate.\n\nBesides the semantic patch, there was some manual work required:\n\n - Fix up the actual hlist iterators in linux/list.h\n - Fix up the declaration of other iterators based on the hlist ones.\n - A very small amount of places were using the \u0027node\u0027 parameter, this\n was modified to use \u0027obj-\u003emember\u0027 instead.\n - Coccinelle didn\u0027t handle the hlist_for_each_entry_safe iterator\n properly, so those had to be fixed up manually.\n\nThe semantic patch which is mostly the work of Peter Senna Tschudin is here:\n\n@@\niterator name hlist_for_each_entry, hlist_for_each_entry_continue, hlist_for_each_entry_from, hlist_for_each_entry_rcu, hlist_for_each_entry_rcu_bh, hlist_for_each_entry_continue_rcu_bh, for_each_busy_worker, ax25_uid_for_each, ax25_for_each, inet_bind_bucket_for_each, sctp_for_each_hentry, sk_for_each, sk_for_each_rcu, sk_for_each_from, sk_for_each_safe, sk_for_each_bound, hlist_for_each_entry_safe, hlist_for_each_entry_continue_rcu, nr_neigh_for_each, nr_neigh_for_each_safe, nr_node_for_each, nr_node_for_each_safe, for_each_gfn_indirect_valid_sp, for_each_gfn_sp, for_each_host;\n\ntype T;\nexpression a,c,d,e;\nidentifier b;\nstatement S;\n@@\n\n-T b;\n    \u003c+... when !\u003d b\n(\nhlist_for_each_entry(a,\n- b,\nc, d) S\n|\nhlist_for_each_entry_continue(a,\n- b,\nc) S\n|\nhlist_for_each_entry_from(a,\n- b,\nc) S\n|\nhlist_for_each_entry_rcu(a,\n- b,\nc, d) S\n|\nhlist_for_each_entry_rcu_bh(a,\n- b,\nc, d) S\n|\nhlist_for_each_entry_continue_rcu_bh(a,\n- b,\nc) S\n|\nfor_each_busy_worker(a, c,\n- b,\nd) S\n|\nax25_uid_for_each(a,\n- b,\nc) S\n|\nax25_for_each(a,\n- b,\nc) S\n|\ninet_bind_bucket_for_each(a,\n- b,\nc) S\n|\nsctp_for_each_hentry(a,\n- b,\nc) S\n|\nsk_for_each(a,\n- b,\nc) S\n|\nsk_for_each_rcu(a,\n- b,\nc) S\n|\nsk_for_each_from\n-(a, b)\n+(a)\nS\n+ sk_for_each_from(a) S\n|\nsk_for_each_safe(a,\n- b,\nc, d) S\n|\nsk_for_each_bound(a,\n- b,\nc) S\n|\nhlist_for_each_entry_safe(a,\n- b,\nc, d, e) S\n|\nhlist_for_each_entry_continue_rcu(a,\n- b,\nc) S\n|\nnr_neigh_for_each(a,\n- b,\nc) S\n|\nnr_neigh_for_each_safe(a,\n- b,\nc, d) S\n|\nnr_node_for_each(a,\n- b,\nc) S\n|\nnr_node_for_each_safe(a,\n- b,\nc, d) S\n|\n- for_each_gfn_sp(a, c, d, b) S\n+ for_each_gfn_sp(a, c, d) S\n|\n- for_each_gfn_indirect_valid_sp(a, c, d, b) S\n+ for_each_gfn_indirect_valid_sp(a, c, d) S\n|\nfor_each_host(a,\n- b,\nc) S\n|\nfor_each_host_safe(a,\n- b,\nc, d) S\n|\nfor_each_mesh_entry(a,\n- b,\nc, d) S\n)\n    ...+\u003e\n\n[akpm@linux-foundation.org: drop bogus change from net/ipv4/raw.c]\n[akpm@linux-foundation.org: drop bogus hunk from net/ipv6/raw.c]\n[akpm@linux-foundation.org: checkpatch fixes]\n[akpm@linux-foundation.org: fix warnings]\n[akpm@linux-foudnation.org: redo intrusive kvm changes]\nTested-by: Peter Senna Tschudin \u003cpeter.senna@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Sasha Levin \u003csasha.levin@oracle.com\u003e\nCc: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dfe2a77fd243ac3bf204fd0624e4d0b2134aaa6d",
      "tree": "8ec9dd36b30a4cb53138dec2b07bc4a4c79fa49e",
      "parents": [
        "c759b35e6469fe7519e9fe45d5285d49f12cb657"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Wed Feb 27 17:05:51 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:23 2013 -0800"
      },
      "message": "kfifo: fix kfifo_alloc() and kfifo_init()\n\nFix kfifo_alloc() and kfifo_init() to alloc at least the requested number\nof elements.  Since the kfifo operates on power of 2 the request size will\nbe rounded up to the next power of two.\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": "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": "7175c61cc6b8e701441e79ef048c11ae97293463",
      "tree": "515c24958e871c550b3b7f0c2356b4909ba83d61",
      "parents": [
        "0ffc2a9c8072969253a20821c2c733a2cbb4c7c7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:10 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:21 2013 -0800"
      },
      "message": "idr: explain WARN_ON_ONCE() on negative IDs out-of-range ID\n\nUntil recently, when an negative ID is specified, idr functions used to\nignore the sign bit and proceeded with the operation with the rest of\nbits, which is bizarre and error-prone.  The behavior recently got changed\nso that negative IDs are treated as invalid but we\u0027re triggering\nWARN_ON_ONCE() on negative IDs just in case somebody was depending on the\nsign bit being ignored, so that those can be detected and fixed easily.\n\nWe only need this for a while.  Explain why WARN_ON_ONCE()s are there and\nthat they can be removed later.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ffc2a9c8072969253a20821c2c733a2cbb4c7c7",
      "tree": "ff6a9d270d4f0fa5c770837c6d9e5d5aac2637a7",
      "parents": [
        "54616283c2948812a44240858ced610e7cacbde1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:08 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:21 2013 -0800"
      },
      "message": "idr: implement lookup hint\n\nWhile idr lookup isn\u0027t a particularly heavy operation, it still is too\nsubstantial to use in hot paths without worrying about the performance\nimplications.  With recent changes, each idr_layer covers 256 slots\nwhich should be enough to cover most use cases with single idr_layer\nmaking lookup hint very attractive.\n\nThis patch adds idr-\u003ehint which points to the idr_layer which\nallocated an ID most recently and the fast path lookup becomes\n\n\tif (look up target\u0027s prefix matches that of the hinted layer)\n\t\treturn hint-\u003eary[ID\u0027s offset in the leaf layer];\n\nwhich can be inlined.\n\nidr-\u003ehint is set to the leaf node on idr_fill_slot() and cleared from\nfree_layer().\n\n[andriy.shevchenko@linux.intel.com: always do slow path when hint is uninitialized]\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nCc: Sasha Levin \u003csasha.levin@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": "54616283c2948812a44240858ced610e7cacbde1",
      "tree": "268bbe9049d9370d5b644dfde51fc4a8942bae3b",
      "parents": [
        "050a6b47d98e2bcea909c1129111e721668aaa2c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:07 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:20 2013 -0800"
      },
      "message": "idr: add idr_layer-\u003eprefix\n\nAdd a field which carries the prefix of ID the idr_layer covers.  This\nwill be used to implement lookup hint.\n\nThis patch doesn\u0027t make use of the new field and doesn\u0027t introduce any\nbehavior difference.\n\nSigned-off-by: Tejun Heo \u003ctj@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": "1d9b2e1e663719d406e3a770979a19ba4233bba0",
      "tree": "359bf3e2dce77fda66d42296992e705f0b305ea1",
      "parents": [
        "e8c8d1bc063bc88cfa1356266027b5075d3a82d7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:05 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:20 2013 -0800"
      },
      "message": "idr: remove length restriction from idr_layer-\u003ebitmap\n\nCurrently, idr-\u003ebitmap is declared as an unsigned long which restricts\nthe number of bits an idr_layer can contain.  All bitops can handle\narbitrary positive integer bit number and there\u0027s no reason for this\nrestriction.\n\nDeclare idr_layer-\u003ebitmap using DECLARE_BITMAP() instead of a single\nunsigned long.\n\n* idr_layer-\u003ebitmap is now an array.  \u0027\u0026\u0027 dropped from params to\n  bitops.\n\n* Replaced \"\u003d\u003d IDR_FULL\" tests with bitmap_full() and removed\n  IDR_FULL.\n\n* Replaced find_next_bit() on ~bitmap with find_next_zero_bit().\n\n* Replaced \"bitmap \u003d 0\" with bitmap_clear().\n\nThis patch doesn\u0027t (or at least shouldn\u0027t) introduce any behavior\nchanges.\n\n[akpm@linux-foundation.org: checkpatch fixes]\nSigned-off-by: Tejun Heo \u003ctj@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": "e8c8d1bc063bc88cfa1356266027b5075d3a82d7",
      "tree": "b657e3a3aa9eb8499690bb2fc0cbd908cdd2a334",
      "parents": [
        "326cf0f0f308933c10236280a322031f0097205d"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:04 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:20 2013 -0800"
      },
      "message": "idr: remove MAX_IDR_MASK and move left MAX_IDR_* into idr.c\n\nMAX_IDR_MASK is another weirdness in the idr interface.  As idr covers\nwhole positive integer range, it\u0027s defined as 0x7fffffff or INT_MAX.\n\nIts usage in idr_find(), idr_replace() and idr_remove() is bizarre.\nThey basically mask off the sign bit and operate on the rest, so if\nthe caller, by accident, passes in a negative number, the sign bit\nwill be masked off and the remaining part will be used as if that was\nthe input, which is worse than crashing.\n\nThe constant is visible in idr.h and there are several users in the\nkernel.\n\n* drivers/i2c/i2c-core.c:i2c_add_numbered_adapter()\n\n  Basically used to test if adap-\u003enr is a negative number which isn\u0027t\n  -1 and returns -EINVAL if so.  idr_alloc() already has negative\n  @start checking (w/ WARN_ON_ONCE), so this can go away.\n\n* drivers/infiniband/core/cm.c:cm_alloc_id()\n  drivers/infiniband/hw/mlx4/cm.c:id_map_alloc()\n\n  Used to wrap cyclic @start.  Can be replaced with max(next, 0).\n  Note that this type of cyclic allocation using idr is buggy.  These\n  are prone to spurious -ENOSPC failure after the first wraparound.\n\n* fs/super.c:get_anon_bdev()\n\n  The ID allocated from ida is masked off before being tested whether\n  it\u0027s inside valid range.  ida allocated ID can never be a negative\n  number and the masking is unnecessary.\n\nUpdate idr_*() functions to fail with -EINVAL when negative @id is\nspecified and update other MAX_IDR_MASK users as described above.\n\nThis leaves MAX_IDR_MASK without any user, remove it and relocate\nother MAX_IDR_* constants to lib/idr.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Roland Dreier \u003croland@kernel.org\u003e\nCc: Sean Hefty \u003csean.hefty@intel.com\u003e\nCc: Hal Rosenstock \u003chal.rosenstock@gmail.com\u003e\nCc: \"Marciniszyn, Mike\" \u003cmike.marciniszyn@intel.com\u003e\nCc: Jack Morgenstein \u003cjackm@dev.mellanox.co.il\u003e\nCc: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Wolfram Sang \u003cwolfram@the-dreams.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "326cf0f0f308933c10236280a322031f0097205d",
      "tree": "825944061a5ae023809fe9a8bb0f35d0a06ef579",
      "parents": [
        "d6870312659d8c6e80419ddb09d366bdd0f17ab6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:05:02 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:20 2013 -0800"
      },
      "message": "idr: fix top layer handling\n\nMost functions in idr fail to deal with the high bits when the idr\ntree grows to the maximum height.\n\n* idr_get_empty_slot() stops growing idr tree once the depth reaches\n  MAX_IDR_LEVEL - 1, which is one depth shallower than necessary to\n  cover the whole range.  The function doesn\u0027t even notice that it\n  didn\u0027t grow the tree enough and ends up allocating the wrong ID\n  given sufficiently high @starting_id.\n\n  For example, on 64 bit, if the starting id is 0x7fffff01,\n  idr_get_empty_slot() will grow the tree 5 layer deep, which only\n  covers the 30 bits and then proceed to allocate as if the bit 30\n  wasn\u0027t specified.  It ends up allocating 0x3fffff01 without the bit\n  30 but still returns 0x7fffff01.\n\n* __idr_remove_all() will not remove anything if the tree is fully\n  grown.\n\n* idr_find() can\u0027t find anything if the tree is fully grown.\n\n* idr_for_each() and idr_get_next() can\u0027t iterate anything if the tree\n  is fully grown.\n\nFix it by introducing idr_max() which returns the maximum possible ID\ngiven the depth of tree and replacing the id limit checks in all\naffected places.\n\nAs the idr_layer pointer array pa[] needs to be 1 larger than the\nmaximum depth, enlarge pa[] arrays by one.\n\nWhile this plugs the discovered issues, the whole code base is\nhorrible and in desparate need of rewrite.  It\u0027s fragile like hell,\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \u003cstable@vger.kernel.org\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5c7409f79e14db49d00785692334657592c07ff",
      "tree": "9646f4a2934cf4d221f173c17defa22b90585e28",
      "parents": [
        "3594eb2894f571c9b9a497159b1e4d84fdac5688"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:55 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:14 2013 -0800"
      },
      "message": "idr: implement idr_preload[_end]() and idr_alloc()\n\nThe current idr interface is very cumbersome.\n\n* For all allocations, two function calls - idr_pre_get() and\n  idr_get_new*() - should be made.\n\n* idr_pre_get() doesn\u0027t guarantee that the following idr_get_new*()\n  will not fail from memory shortage.  If idr_get_new*() returns\n  -EAGAIN, the caller is expected to retry pre_get and allocation.\n\n* idr_get_new*() can\u0027t enforce upper limit.  Upper limit can only be\n  enforced by allocating and then freeing if above limit.\n\n* idr_layer buffer is unnecessarily per-idr.  Each idr ends up keeping\n  around MAX_IDR_FREE idr_layers.  The memory consumed per idr is\n  under two pages but it makes it difficult to make idr_layer larger.\n\nThis patch implements the following new set of allocation functions.\n\n* idr_preload[_end]() - Similar to radix preload but doesn\u0027t fail.\n  The first idr_alloc() inside preload section can be treated as if it\n  were called with @gfp_mask used for idr_preload().\n\n* idr_alloc() - Allocate an ID w/ lower and upper limits.  Takes\n  @gfp_flags and can be used w/o preloading.  When used inside\n  preloaded section, the allocation mask of preloading can be assumed.\n\nIf idr_alloc() can be called from a context which allows sufficiently\nrelaxed @gfp_mask, it can be used by itself.  If, for example,\nidr_alloc() is called inside spinlock protected region, preloading can\nbe used like the following.\n\n\tidr_preload(GFP_KERNEL);\n\tspin_lock(lock);\n\n\tid \u003d idr_alloc(idr, ptr, start, end, GFP_NOWAIT);\n\n\tspin_unlock(lock);\n\tidr_preload_end();\n\tif (id \u003c 0)\n\t\terror;\n\nwhich is much simpler and less error-prone than idr_pre_get and\nidr_get_new*() loop.\n\nThe new interface uses per-pcu idr_layer buffer and thus the number of\nidr\u0027s in the system doesn\u0027t affect the amount of memory used for\npreloading.\n\nidr_layer_alloc() is introduced to handle idr_layer allocations for\nboth old and new ID allocation paths.  This is a bit hairy now but the\nnew interface is expected to replace the old and the internal\nimplementation eventually will become simpler.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3594eb2894f571c9b9a497159b1e4d84fdac5688",
      "tree": "471f3da090b7b297b3c35e7901c91c3f5042ef52",
      "parents": [
        "12d1b4393e0d8df36b2646a5e512f0513fb532d2"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:54 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:14 2013 -0800"
      },
      "message": "idr: refactor idr_get_new_above()\n\nMove slot filling to idr_fill_slot() from idr_get_new_above_int() and\nmake idr_get_new_above() directly call it.  idr_get_new_above_int() is\nno longer needed and removed.\n\nThis will be used to implement a new ID allocation interface.\n\nSigned-off-by: Tejun Heo \u003ctj@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": "12d1b4393e0d8df36b2646a5e512f0513fb532d2",
      "tree": "a705b06b3d0ece29b0f34fedba87d18543ac1b80",
      "parents": [
        "49038ef4fbe2842bd4d8338f89ec5c9ba71b0ae1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:53 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:14 2013 -0800"
      },
      "message": "idr: remove _idr_rc_to_errno() hack\n\nidr uses -1, IDR_NEED_TO_GROW and IDR_NOMORE_SPACE to communicate\nexception conditions internally.  The return value is later translated\nto errno values using _idr_rc_to_errno().\n\nThis is confusing.  Drop the custom ones and consistently use -EAGAIN\nfor \"tree needs to grow\", -ENOMEM for \"need more memory\" and -ENOSPC for\n\"ran out of ID space\".\n\nDue to the weird memory preloading mechanism, [ra]_get_new*() return\n-EAGAIN on memory shortage, so we need to substitute -ENOMEM w/\n-EAGAIN on those interface functions.  They\u0027ll eventually be cleaned\nup and the translations will go away.\n\nThis patch doesn\u0027t introduce any functional changes.\n\nSigned-off-by: Tejun Heo \u003ctj@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": "49038ef4fbe2842bd4d8338f89ec5c9ba71b0ae1",
      "tree": "efe83b3396bd93c1154edf1375a899811d62dde3",
      "parents": [
        "4106ecaf59b79efff3f9b466baf9e8c67e19ac5a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:52 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:14 2013 -0800"
      },
      "message": "idr: relocate idr_for_each_entry() and reorganize id[r|a]_get_new()\n\n* Move idr_for_each_entry() definition next to other idr related\n  definitions.\n\n* Make id[r|a]_get_new() inline wrappers of id[r|a]_get_new_above().\n\nThis changes the implementation of idr_get_new() but the new\nimplementation is trivial.  This patch doesn\u0027t introduce any\nfunctional change.\n\nSigned-off-by: Tejun Heo \u003ctj@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": "fe6e24ec90b753392c3f9ec1fbca196c4e88e511",
      "tree": "6eb4f3e981bfa583e30bf7898342d88031130ffe",
      "parents": [
        "c897ff68beec97768c31f9de97de93f77ff2d87e"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:50 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:14 2013 -0800"
      },
      "message": "idr: deprecate idr_remove_all()\n\nThere was only one legitimate use of idr_remove_all() and a lot more of\nincorrect uses (or lack of it).  Now that idr_destroy() implies\nidr_remove_all() and all the in-kernel users updated not to use it,\nthere\u0027s no reason to keep it around.  Mark it deprecated so that we can\nlater unexport it.\n\nidr_remove_all() is made an inline function calling __idr_remove_all()\nto avoid triggering deprecated warning on EXPORT_SYMBOL().\n\nSigned-off-by: Tejun Heo \u003ctj@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": "9bb26bc1ffa32ec983860a5a66b6f291a875e39d",
      "tree": "e821dc2bc21d6a61ae086d4eb45890f9c9c37920",
      "parents": [
        "6cdae7416a1c45c2ce105a78187d9b7e8feb9e24"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:35 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:13 2013 -0800"
      },
      "message": "idr: make idr_destroy() imply idr_remove_all()\n\nidr is silly in quite a few ways, one of which is how it\u0027s supposed to\nbe destroyed - idr_destroy() doesn\u0027t release IDs and doesn\u0027t even whine\nif the idr isn\u0027t empty.  If the caller forgets idr_remove_all(), it\nsimply leaks memory.\n\nEven ida gets this wrong and leaks memory on destruction.  There is\nabsoltely no reason not to call idr_remove_all() from idr_destroy().\nNobody is abusing idr_destroy() for shrinking free layer buffer and\ncontinues to use idr after idr_destroy(), so it\u0027s safe to do remove_all\nfrom destroy.\n\nIn the whole kernel, there is only one place where idr_remove_all() is\nlegitimiately used without following idr_destroy() while there are quite\na few places where the caller forgets either idr_remove_all() or\nidr_destroy() leaking memory.\n\nThis patch makes idr_destroy() call idr_destroy_all() and updates the\nfunction description accordingly.\n\nSigned-off-by: Tejun Heo \u003ctj@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": "6cdae7416a1c45c2ce105a78187d9b7e8feb9e24",
      "tree": "b2862caeb4fcf8b6dc07d445bb69c0266939d1d4",
      "parents": [
        "7b74e912785a11572da43292786ed07ada7e3e0c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Feb 27 17:03:34 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:12 2013 -0800"
      },
      "message": "idr: fix a subtle bug in idr_get_next()\n\nThe iteration logic of idr_get_next() is borrowed mostly verbatim from\nidr_for_each().  It walks down the tree looking for the slot matching\nthe current ID.  If the matching slot is not found, the ID is\nincremented by the distance of single slot at the given level and\nrepeats.\n\nThe implementation assumes that during the whole iteration id is aligned\nto the layer boundaries of the level closest to the leaf, which is true\nfor all iterations starting from zero or an existing element and thus is\nfine for idr_for_each().\n\nHowever, idr_get_next() may be given any point and if the starting id\nhits in the middle of a non-existent layer, increment to the next layer\nwill end up skipping the same offset into it.  For example, an IDR with\nIDs filled between [64, 127] would look like the following.\n\n          [  0  64 ... ]\n       /----/   |\n       |        |\n      NULL    [ 64 ... 127 ]\n\nIf idr_get_next() is called with 63 as the starting point, it will try\nto follow down the pointer from 0.  As it is NULL, it will then try to\nproceed to the next slot in the same level by adding the slot distance\nat that level which is 64 - making the next try 127.  It goes around the\nloop and finds and returns 127 skipping [64, 126].\n\nNote that this bug also triggers in idr_for_each_entry() loop which\ndeletes during iteration as deletions can make layers go away leaving\nthe iteration with unaligned ID into missing layers.\n\nFix it by ensuring proceeding to the next slot doesn\u0027t carry over the\nunaligned offset - ie.  use round_up(id + 1, slot_distance) instead of\nid +\u003d slot_distance.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: David Teigland \u003cteigland@redhat.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \u003cstable@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": "4225fc8555a992c7f91d174ef424384d6781e144",
      "tree": "46f73428afef93acc729fd36842e463b503bab58",
      "parents": [
        "a321e91b6d73ed011ffceed384c40d2785cf723b"
      ],
      "author": {
        "name": "Imre Deak",
        "email": "imre.deak@intel.com",
        "time": "Wed Feb 27 17:02:57 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:10 2013 -0800"
      },
      "message": "lib/scatterlist: use page iterator in the mapping iterator\n\nFor better code reuse use the newly added page iterator to iterate\nthrough the pages.  The offset, length within the page is still\ncalculated by the mapping iterator as well as the actual mapping.  Idea\nfrom Tejun Heo.\n\nSigned-off-by: Imre Deak \u003cimre.deak@intel.com\u003e\nCc: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nCc: James Hogan \u003cjames.hogan@imgtec.com\u003e\nCc: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a321e91b6d73ed011ffceed384c40d2785cf723b",
      "tree": "525598b796028211e615676f5e3182c630f992f1",
      "parents": [
        "5d96bf4d928c883635774d0aba1773f275de055c"
      ],
      "author": {
        "name": "Imre Deak",
        "email": "imre.deak@intel.com",
        "time": "Wed Feb 27 17:02:56 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:10 2013 -0800"
      },
      "message": "lib/scatterlist: add simple page iterator\n\nAdd an iterator to walk through a scatter list a page at a time starting\nat a specific page offset.  As opposed to the mapping iterator this is\nmeant to be small, performing well even in simple loops like collecting\nall pages on the scatterlist into an array or setting up an iommu table\nbased on the pages\u0027 DMA address.\n\nSigned-off-by: Imre Deak \u003cimre.deak@intel.com\u003e\nCc: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nTested-by: Stephen Warren \u003cswarren@wwwdotorg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ed8a30f3471347c1b763bd062fa78ae80f18eae",
      "tree": "8fd99b7a24d1fb60f840320d3f7745be2f32fdba",
      "parents": [
        "a003119771f337abeb4a5d7564ac2d22c193fb8b"
      ],
      "author": {
        "name": "Jingoo Han",
        "email": "jg1.han@samsung.com",
        "time": "Wed Feb 27 17:02:42 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 27 19:10:09 2013 -0800"
      },
      "message": "lib/devres.c: fix misplaced #endif\n\nA misplaced #endif causes link errors related to pcim_*() functions.\n\nThis is because pcim_*() functions are related to CONFIG_PCI option,\nhowever these are not related to CONFIG_HAS_IOPORT option.  Therefore,\nwhen CONFIG_PCI is enabled and CONFIG_HAS_IOPORT is not enabled, it makes\nlink errors related to pcim_*() functions as below:\n\ndrivers/ata/libata-sff.c:3233: undefined reference to `pcim_iomap_regions\u0027\ndrivers/ata/libata-sff.c:3238: undefined reference to `pcim_iomap_table\u0027\ndrivers/built-in.o: In function `ata_pci_sff_init_host\u0027:\ndrivers/ata/libata-sff.c:2318: undefined reference to `pcim_iomap_regions\u0027\ndrivers/ata/libata-sff.c:2329: undefined reference to `pcim_iomap_table\n\nSigned-off-by: Jingoo Han \u003cjg1.han@samsung.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Tejun Heo \u003ctj@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": "9043a2650cd21f96f831a97f516c2c302e21fb70",
      "tree": "926720afb0acc7bad8cfcae537dc58de552f9249",
      "parents": [
        "ab7826595e9ec51a51f622c5fc91e2f59440481a",
        "d9d8d7ed498ec65bea72dd24be7b9cd35af0c200"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:41:43 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 25 15:41:43 2013 -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 \"The sweeping change is to make add_taint() explicitly indicate whether\n  to disable lockdep, but it\u0027s a mechanical change.\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  MODSIGN: Add option to not sign modules during modules_install\n  MODSIGN: Add -s \u003csignature\u003e option to sign-file\n  MODSIGN: Specify the hash algorithm on sign-file command line\n  MODSIGN: Simplify Makefile with a Kconfig helper\n  module: clean up load_module a little more.\n  modpost: Ignore ARC specific non-alloc sections\n  module: constify within_module_*\n  taint: add explicit flag to show whether lock dep is still OK.\n  module: printk message when module signature fail taints kernel.\n"
    },
    {
      "commit": "3b5d8510b94a95e493e8c4951ffc3d1cf6a6792d",
      "tree": "4493367715c7a15e9057e6c72fa3c3edfd0605ad",
      "parents": [
        "c47f39e3b75e1138823984ad5079547c7a41b726",
        "41ef8f826692c8f65882bec0a8211bd4d1d2d19a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 22 19:25:09 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 22 19:25:09 2013 -0800"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull core locking changes from Ingo Molnar:\n \"The biggest change is the rwsem lock-steal improvements, both to the\n  assembly optimized and the spinlock based variants.\n\n  The other notable change is the clean up of the seqlock implementation\n  to be based on the seqcount infrastructure.\n\n  The rest is assorted smaller debuggability, cleanup and continued -rt\n  locking changes.\"\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  rwsem-spinlock: Implement writer lock-stealing for better scalability\n  futex: Revert \"futex: Mark get_robust_list as deprecated\"\n  generic: Use raw local irq variant for generic cmpxchg\n  lockdep: Selftest: convert spinlock to raw spinlock\n  seqlock: Use seqcount infrastructure\n  seqlock: Remove unused functions\n  ntp: Make ntp_lock raw\n  intel_idle: Convert i7300_idle_lock to raw_spinlock\n  locking: Various static lock initializer fixes\n  lockdep: Print more info when MAX_LOCK_DEPTH is exceeded\n  rwsem: Implement writer lock-stealing for better scalability\n  lockdep: Silence warning if CONFIG_LOCKDEP isn\u0027t set\n  watchdog: Use local_clock for get_timestamp()\n  lockdep: Rename print_unlock_inbalance_bug() to print_unlock_imbalance_bug()\n  locking/stat: Fix a typo\n"
    },
    {
      "commit": "2ef14f465b9e096531343f5b734cffc5f759f4a6",
      "tree": "07b504d7105842a4b1a74cf1e153023a02fb9c1e",
      "parents": [
        "cb715a836642e0ec69350670d1c2f800f3e2d2e4",
        "0da3e7f526fde7a6522a3038b7ce609fc50f6707"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 18:06:55 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 18:06:55 2013 -0800"
      },
      "message": "Merge branch \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 mm changes from Peter Anvin:\n \"This is a huge set of several partly interrelated (and concurrently\n  developed) changes, which is why the branch history is messier than\n  one would like.\n\n  The *really* big items are two humonguous patchsets mostly developed\n  by Yinghai Lu at my request, which completely revamps the way we\n  create initial page tables.  In particular, rather than estimating how\n  much memory we will need for page tables and then build them into that\n  memory -- a calculation that has shown to be incredibly fragile -- we\n  now build them (on 64 bits) with the aid of a \"pseudo-linear mode\" --\n  a #PF handler which creates temporary page tables on demand.\n\n  This has several advantages:\n\n  1. It makes it much easier to support things that need access to data\n     very early (a followon patchset uses this to load microcode way\n     early in the kernel startup).\n\n  2. It allows the kernel and all the kernel data objects to be invoked\n     from above the 4 GB limit.  This allows kdump to work on very large\n     systems.\n\n  3. It greatly reduces the difference between Xen and native (Xen\u0027s\n     equivalent of the #PF handler are the temporary page tables created\n     by the domain builder), eliminating a bunch of fragile hooks.\n\n  The patch series also gets us a bit closer to W^X.\n\n  Additional work in this pull is the 64-bit get_user() work which you\n  were also involved with, and a bunch of cleanups/speedups to\n  __phys_addr()/__pa().\"\n\n* \u0027x86-mm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (105 commits)\n  x86, mm: Move reserving low memory later in initialization\n  x86, doc: Clarify the use of asm(\"%edx\") in uaccess.h\n  x86, mm: Redesign get_user with a __builtin_choose_expr hack\n  x86: Be consistent with data size in getuser.S\n  x86, mm: Use a bitfield to mask nuisance get_user() warnings\n  x86/kvm: Fix compile warning in kvm_register_steal_time()\n  x86-32: Add support for 64bit get_user()\n  x86-32, mm: Remove reference to alloc_remap()\n  x86-32, mm: Remove reference to resume_map_numa_kva()\n  x86-32, mm: Rip out x86_32 NUMA remapping code\n  x86/numa: Use __pa_nodebug() instead\n  x86: Don\u0027t panic if can not alloc buffer for swiotlb\n  mm: Add alloc_bootmem_low_pages_nopanic()\n  x86, 64bit, mm: hibernate use generic mapping_init\n  x86, 64bit, mm: Mark data/bss/brk to nx\n  x86: Merge early kernel reserve for 32bit and 64bit\n  x86: Add Crash kernel low reservation\n  x86, kdump: Remove crashkernel range find limit for 64bit\n  memblock: Add memblock_mem_size()\n  x86, boot: Not need to check setup_header version for setup_data\n  ...\n"
    },
    {
      "commit": "7c2db36e730ee4facd341679ecb21ee73ba92831",
      "tree": "75016fba72aaf0581b9263f7fa4c565e6e634f3c",
      "parents": [
        "8b5628ab83b671f96ac9f174c1bd51c92589fc82",
        "a47a376f1c025e23e836c0376813c0424de665c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:38:49 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:38:49 2013 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (incoming from Andrew)\n\nMerge misc patches from Andrew Morton:\n\n - Florian has vanished so I appear to have become fbdev maintainer\n   again :(\n\n - Joel and Mark are distracted to welcome to the new OCFS2 maintainer\n\n - The backlight queue\n\n - Small core kernel changes\n\n - lib/ updates\n\n - The rtc queue\n\n - Various random bits\n\n* akpm: (164 commits)\n  rtc: rtc-davinci: use devm_*() functions\n  rtc: rtc-max8997: use devm_request_threaded_irq()\n  rtc: rtc-max8907: use devm_request_threaded_irq()\n  rtc: rtc-da9052: use devm_request_threaded_irq()\n  rtc: rtc-wm831x: use devm_request_threaded_irq()\n  rtc: rtc-tps80031: use devm_request_threaded_irq()\n  rtc: rtc-lp8788: use devm_request_threaded_irq()\n  rtc: rtc-coh901331: use devm_clk_get()\n  rtc: rtc-vt8500: use devm_*() functions\n  rtc: rtc-tps6586x: use devm_request_threaded_irq()\n  rtc: rtc-imxdi: use devm_clk_get()\n  rtc: rtc-cmos: use dev_warn()/dev_dbg() instead of printk()/pr_debug()\n  rtc: rtc-pcf8583: use dev_warn() instead of printk()\n  rtc: rtc-sun4v: use pr_warn() instead of printk()\n  rtc: rtc-vr41xx: use dev_info() instead of printk()\n  rtc: rtc-rs5c313: use pr_err() instead of printk()\n  rtc: rtc-at91rm9200: use dev_dbg()/dev_err() instead of printk()/pr_debug()\n  rtc: rtc-rs5c372: use dev_dbg()/dev_warn() instead of printk()/pr_debug()\n  rtc: rtc-ds2404: use dev_err() instead of printk()\n  rtc: rtc-efi: use dev_err()/dev_warn()/pr_err() instead of printk()\n  ...\n"
    },
    {
      "commit": "5dc49c75a26b99e86a18441e0b64c1f7c7c6a500",
      "tree": "c3c142d3c43785a753ab987a92961fa0fbf7e188",
      "parents": [
        "64dbfb444c150f5b64979323a197dedc2ec3e02c"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian@openwrt.org",
        "time": "Thu Feb 21 16:44:12 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:26 2013 -0800"
      },
      "message": "decompressors: make the default XZ_DEC_* config match the selected architecture\n\nChange the defautl XZ_DEC_* config symbol to match the configured\narchitecture.  It is perfectly legitimate to support multiple XZ BCJ\nfilters for different architectures (e.g.: to mount foreign squashfs/xz\ncompressed filesystems), it is however more natural not to select them all\nby default, but only the one matching the configured architecture.\n\nSigned-off-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nAcked-by: Lasse Collin \u003classe.collin@tukaani.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64dbfb444c150f5b64979323a197dedc2ec3e02c",
      "tree": "91b036e41f62f7c00e107481de9da07e3b562476",
      "parents": [
        "9d7496296590d57e0745286711aa31ed1b828917"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian@openwrt.org",
        "time": "Thu Feb 21 16:44:11 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:26 2013 -0800"
      },
      "message": "decompressors: drop dependency on CONFIG_EXPERT\n\nRemove the XZ_DEC_* depedencey on CONFIG_EXPERT as recommended by Lasse\nColin.\n\nSigned-off-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nAcked-by: Lasse Collin \u003classe.collin@tukaani.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d7496296590d57e0745286711aa31ed1b828917",
      "tree": "05b99d46dacc76bf3728e20420ce092f8298c04d",
      "parents": [
        "53769627b93d5b1d04178fd1fb2558d933ee9e81"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "florian@openwrt.org",
        "time": "Thu Feb 21 16:44:10 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:26 2013 -0800"
      },
      "message": "decompressors: group XZ_DEC_* symbols under an if XZ_BCJ / endif\n\nGroup all architecture-specific BCJ filter configuration symbols under an\nif XZ_BCJ / endif statement.\n\nSigned-off-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nAcked-by: Lasse Collin \u003classe.collin@tukaani.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53769627b93d5b1d04178fd1fb2558d933ee9e81",
      "tree": "493b4f17a4b47b355ca037f63a15e89d5f2175a9",
      "parents": [
        "9e9cdc89695d04359e2d67521199156549c12eb4"
      ],
      "author": {
        "name": "Namjae Jeon",
        "email": "namjae.jeon@samsung.com",
        "time": "Thu Feb 21 16:44:08 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:25 2013 -0800"
      },
      "message": "lib/parser.c: fix up comments for valid return values from match_number\n\nmatch_number() has return values of -ENOMEM, -EINVAL and -ERANGE.  So, for\nall the functions calling match_number, the return value should include\nthese values.  Fix up the comments to reflect the correct values.\n\nSigned-off-by: Namjae Jeon \u003cnamjae.jeon@samsung.com\u003e\nSigned-off-by: Amit Sahrawat \u003ca.sahrawat@samsung.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d7992108d02aa92ad4c77e5d9ce14088c942e75",
      "tree": "efa7e3cbbac8f7fde794f0062d98420b551697c6",
      "parents": [
        "f3cbd435b02fb45efc2c8a39c2ea19816669c412"
      ],
      "author": {
        "name": "Stepan Moskovchenko",
        "email": "stepanm@codeaurora.org",
        "time": "Thu Feb 21 16:43:09 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:20 2013 -0800"
      },
      "message": "lib/vsprintf.c: add %pa format specifier for phys_addr_t types\n\nAdd the %pa format specifier for printing a phys_addr_t type and its\nderivative types (such as resource_size_t), since the physical address\nsize on some platforms can vary based on build options, regardless of\nthe native integer type.\n\nSigned-off-by: Stepan Moskovchenko \u003cstepanm@codeaurora.org\u003e\nCc: Rob Landley \u003crob@landley.net\u003e\nCc: George Spelvin \u003clinux@horizon.com\u003e\nCc: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Andrei Emeltchenko \u003candrei.emeltchenko@intel.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": "76e8402619cf777a3adae9cd70e56a848a9bf952",
      "tree": "27aa5717d8ca6860a2144321f8353eef0f719aa9",
      "parents": [
        "9a46ad6d6df3b547d057c39db13f69d7170a99e9"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@redhat.com",
        "time": "Thu Feb 21 16:43:04 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 17:22:20 2013 -0800"
      },
      "message": "lib/Kconfig.debug: unhide CONFIG_PANIC_ON_OOPS\n\nCONFIG_EXPERT doesn\u0027t really make sense, and hides it unintentionally.\nRemove superfluous \"default n\" pointed out by Ingo as well.\n\nSigned-off-by: Kyle McMartin \u003ckyle@redhat.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@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": "21eaab6d19ed43e82ed39c8deb7f192134fb4a0e",
      "tree": "d995205afdcb7f47462bcd28067dc0c4ab0b7b02",
      "parents": [
        "74e1a2a39355b2d3ae8c60c78d8add162c6d7183",
        "9e17df37d710f8998e9cb10a548304fe33d4a5c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 13:41:04 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 13:41:04 2013 -0800"
      },
      "message": "Merge tag \u0027tty-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty\n\nPull tty/serial patches from Greg Kroah-Hartman:\n \"Here\u0027s the big tty/serial driver patches for 3.9-rc1.\n\n  More tty port rework and fixes from Jiri here, as well as lots of\n  individual serial driver updates and fixes.\n\n  All of these have been in the linux-next tree for a while.\"\n\n* tag \u0027tty-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (140 commits)\n  tty: mxser: improve error handling in mxser_probe() and mxser_module_init()\n  serial: imx: fix uninitialized variable warning\n  serial: tegra: assume CONFIG_OF\n  TTY: do not update atime/mtime on read/write\n  lguest: select CONFIG_TTY to build properly.\n  ARM defconfigs: add missing inclusions of linux/platform_device.h\n  fb/exynos: include platform_device.h\n  ARM: sa1100/assabet: include platform_device.h directly\n  serial: imx: Fix recursive locking bug\n  pps: Fix build breakage from decoupling pps from tty\n  tty: Remove ancient hardpps()\n  pps: Additional cleanups in uart_handle_dcd_change\n  pps: Move timestamp read into PPS code proper\n  pps: Don\u0027t crash the machine when exiting will do\n  pps: Fix a use-after free bug when unregistering a source.\n  pps: Use pps_lookup_dev to reduce ldisc coupling\n  pps: Add pps_lookup_dev() function\n  tty: serial: uartlite: Support uartlite on big and little endian systems\n  tty: serial: uartlite: Fix sparse and checkpatch warnings\n  serial/arc-uart: Miscll DT related updates (Grant\u0027s review comments)\n  ...\n\nFix up trivial conflicts, mostly just due to the TTY config option\nclashing with the EXPERIMENTAL removal.\n"
    },
    {
      "commit": "06991c28f37ad68e5c03777f5c3b679b56e3dac1",
      "tree": "4be75788e21c3c644fe6d39abf47693a171cf4f8",
      "parents": [
        "460dc1eecf37263c8e3b17685ef236f0d236facb",
        "74fef7a8fd1d2bd94f925d6638bb4c3049e7c381"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 12:05:51 2013 -0800"
      },
      "message": "Merge tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core patches from Greg Kroah-Hartman:\n \"Here is the big driver core merge for 3.9-rc1\n\n  There are two major series here, both of which touch lots of drivers\n  all over the kernel, and will cause you some merge conflicts:\n\n   - add a new function called devm_ioremap_resource() to properly be\n     able to check return values.\n\n   - remove CONFIG_EXPERIMENTAL\n\n  Other than those patches, there\u0027s not much here, some minor fixes and\n  updates\"\n\nFix up trivial conflicts\n\n* tag \u0027driver-core-3.9-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits)\n  base: memory: fix soft/hard_offline_page permissions\n  drivercore: Fix ordering between deferred_probe and exiting initcalls\n  backlight: fix class_find_device() arguments\n  TTY: mark tty_get_device call with the proper const values\n  driver-core: constify data for class_find_device()\n  firmware: Ignore abort check when no user-helper is used\n  firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER\n  firmware: Make user-mode helper optional\n  firmware: Refactoring for splitting user-mode helper code\n  Driver core: treat unregistered bus_types as having no devices\n  watchdog: Convert to devm_ioremap_resource()\n  thermal: Convert to devm_ioremap_resource()\n  spi: Convert to devm_ioremap_resource()\n  power: Convert to devm_ioremap_resource()\n  mtd: Convert to devm_ioremap_resource()\n  mmc: Convert to devm_ioremap_resource()\n  mfd: Convert to devm_ioremap_resource()\n  media: Convert to devm_ioremap_resource()\n  iommu: Convert to devm_ioremap_resource()\n  drm: Convert to devm_ioremap_resource()\n  ...\n"
    },
    {
      "commit": "33673dcb372b5d8179c22127ca71deb5f3dc7016",
      "tree": "d182e9dc6aa127375a92b5eb619d6cd2ddc23ce7",
      "parents": [
        "fe9453a1dcb5fb146f9653267e78f4a558066f6f",
        "5b2660326039a32b28766cb4c1a8b1bdcfadc375"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 08:18:12 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 21 08:18:12 2013 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"This is basically a maintenance update for the TPM driver and EVM/IMA\"\n\nFix up conflicts in lib/digsig.c and security/integrity/ima/ima_main.c\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (45 commits)\n  tpm/ibmvtpm: build only when IBM pseries is configured\n  ima: digital signature verification using asymmetric keys\n  ima: rename hash calculation functions\n  ima: use new crypto_shash API instead of old crypto_hash\n  ima: add policy support for file system uuid\n  evm: add file system uuid to EVM hmac\n  tpm_tis: check pnp_acpi_device return code\n  char/tpm/tpm_i2c_stm_st33: drop temporary variable for return value\n  char/tpm/tpm_i2c_stm_st33: remove dead assignment in tpm_st33_i2c_probe\n  char/tpm/tpm_i2c_stm_st33: Remove __devexit attribute\n  char/tpm/tpm_i2c_stm_st33: Don\u0027t use memcpy for one byte assignment\n  tpm_i2c_stm_st33: removed unused variables/code\n  TPM: Wait for TPM_ACCESS tpmRegValidSts to go high at startup\n  tpm: Fix cancellation of TPM commands (interrupt mode)\n  tpm: Fix cancellation of TPM commands (polling mode)\n  tpm: Store TPM vendor ID\n  TPM: Work around buggy TPMs that block during continue self test\n  tpm_i2c_stm_st33: fix oops when i2c client is unavailable\n  char/tpm: Use struct dev_pm_ops for power management\n  TPM: STMicroelectronics ST33 I2C BUILD STUFF\n  ...\n"
    },
    {
      "commit": "8b975bd3f9089f8ee5d7bbfd798537b992bbc7e7",
      "tree": "09078bdf5e805a5f921d8b7b592262ef3e877937",
      "parents": [
        "b6bec26cea948148a9420e7a0ac337f925de49e7"
      ],
      "author": {
        "name": "Markus F.X.J. Oberhumer",
        "email": "markus@oberhumer.com",
        "time": "Mon Aug 13 17:25:44 2012 +0200"
      },
      "committer": {
        "name": "Markus F.X.J. Oberhumer",
        "email": "markus@oberhumer.com",
        "time": "Wed Feb 20 19:36:01 2013 +0100"
      },
      "message": "lib/lzo: Update LZO compression to current upstream version\n\nThis commit updates the kernel LZO code to the current upsteam version\nwhich features a significant speed improvement - benchmarking the Calgary\nand Silesia test corpora typically shows a doubled performance in\nboth compression and decompression on modern i386/x86_64/powerpc machines.\n\nSigned-off-by: Markus F.X.J. Oberhumer \u003cmarkus@oberhumer.com\u003e\n"
    },
    {
      "commit": "b6bec26cea948148a9420e7a0ac337f925de49e7",
      "tree": "79d76d19696b717e9cf032fee48dbc9fc13e066e",
      "parents": [
        "19f949f52599ba7c3f67a5897ac6be14bfcb1200"
      ],
      "author": {
        "name": "Markus F.X.J. Oberhumer",
        "email": "markus@oberhumer.com",
        "time": "Mon Aug 13 17:24:24 2012 +0200"
      },
      "committer": {
        "name": "Markus F.X.J. Oberhumer",
        "email": "markus@oberhumer.com",
        "time": "Wed Feb 20 19:36:00 2013 +0100"
      },
      "message": "lib/lzo: Rename lzo1x_decompress.c to lzo1x_decompress_safe.c\n\nRename the source file to match the function name and thereby\nalso make room for a possible future even slightly faster\n\"non-safe\" decompressor version.\n\nSigned-off-by: Markus F.X.J. Oberhumer \u003cmarkus@oberhumer.com\u003e\n"
    },
    {
      "commit": "e84cf5d0fd53badf3a93c790e280cc92a69ed999",
      "tree": "abc4d04bc31e5682794d1ea90c38cfeb4d5c9b97",
      "parents": [
        "19f949f52599ba7c3f67a5897ac6be14bfcb1200",
        "ac0e32024b8f40987b3db7d2defdc6b5153ba354"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 19 17:45:20 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 19 17:45:20 2013 -0800"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull RCU changes from Ingo Molnar:\n \"SRCU changes:\n\n   - These include debugging aids, updates that move towards the goal of\n     permitting srcu_read_lock() and srcu_read_unlock() to be used from\n     idle and offline CPUs, and a few small fixes.\n\n  Changes to rcutorture and to RCU documentation:\n\n   - Posted to LKML at https://lkml.org/lkml/2013/1/26/188\n\n  Enhancements to uniprocessor handling in tiny RCU:\n\n   - Posted to LKML at https://lkml.org/lkml/2013/1/27/2\n\n  Tag RCU callbacks with grace-period number to simplify callback\n  advancement:\n\n   - Posted to LKML at https://lkml.org/lkml/2013/1/26/203\n\n  Miscellaneous fixes:\n\n   - Posted to LKML at https://lkml.org/lkml/2013/1/26/204\"\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)\n  srcu: use ACCESS_ONCE() to access sp-\u003ecompleted in srcu_read_lock()\n  srcu: Update synchronize_srcu_expedited()\u0027s comments\n  srcu: Update synchronize_srcu()\u0027s comments\n  srcu: Remove checks preventing idle CPUs from calling srcu_read_lock()\n  srcu: Remove checks preventing offline CPUs from calling srcu_read_lock()\n  srcu: Simple cleanup for cleanup_srcu_struct()\n  srcu: Add might_sleep() annotation to synchronize_srcu()\n  srcu: Simplify __srcu_read_unlock() via this_cpu_dec()\n  rcu: Allow rcutorture to be built at low optimization levels\n  rcu: Make rcutorture\u0027s shuffler task shuffle recently added tasks\n  rcu: Allow TREE_PREEMPT_RCU on UP systems\n  rcu: Provide RCU CPU stall warnings for tiny RCU\n  context_tracking: Add comments on interface and internals\n  rcu: Remove obsolete Kconfig option from comment\n  rcu: Remove unused code originally used for context tracking\n  rcu: Consolidate debugging Kconfig options\n  rcu: Correct \u0027optimized\u0027 to \u0027optimize\u0027 in header comment\n  rcu: Trace callback acceleration\n  rcu: Tag callback lists with corresponding grace-period number\n  rcutorture: Don\u0027t compare ptr with 0\n  ...\n"
    },
    {
      "commit": "41ef8f826692c8f65882bec0a8211bd4d1d2d19a",
      "tree": "a59199669e2ffb6f1fffaaee9a98b50fd82d1d96",
      "parents": [
        "fe2b05f7ca9f906be61dced5489f63b8b4d7c770"
      ],
      "author": {
        "name": "Yuanhan Liu",
        "email": "yuanhan.liu@linux.intel.com",
        "time": "Fri Feb 01 18:59:16 2013 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Feb 19 08:43:39 2013 +0100"
      },
      "message": "rwsem-spinlock: Implement writer lock-stealing for better scalability\n\nWe (Linux Kernel Performance project) found a regression\nintroduced by commit:\n\n  5a505085f043 mm/rmap: Convert the struct anon_vma::mutex to an rwsem\n\nwhich converted all anon_vma::mutex locks rwsem write locks.\n\nThe semantics are the same, but the behavioral difference is\nquite huge in some cases. After investigating it we found the\nroot cause: mutexes support lock stealing while rwsems don\u0027t.\n\nHere is the link for the detailed regression report:\n\n  https://lkml.org/lkml/2013/1/29/84\n\nIngo suggested adding write lock stealing to rwsems:\n\n    \"I think we should allow lock-steal between rwsem writers - that\n     will not hurt fairness as most rwsem fairness concerns relate to\n     reader vs. writer fairness\"\n\nAnd here is the rwsem-spinlock version.\n\nWith this patch, we got a double performance increase in one\ntest box with following aim7 workfile:\n\n    FILESIZE: 1M\n    POOLSIZE: 10M\n    10 fork_test\n\n /usr/bin/time output w/o patch                       /usr/bin/time_output with patch\n -- Percent of CPU this job got: 369%                 Percent of CPU this job got: 537%\n Voluntary context switches: 640595016                Voluntary context switches: 157915561\n\nWe got a 45% increase in CPU usage and saved about 3/4 voluntary context switches.\n\nReported-by: LKP project \u003clkp@linux.intel.com\u003e\nSuggested-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Yuanhan Liu \u003cyuanhan.liu@linux.intel.com\u003e\nCc: Alex Shi \u003calex.shi@intel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: paul.gortmaker@windriver.com\nLink: http://lkml.kernel.org/r/1359716356-23865-1-git-send-email-yuanhan.liu@linux.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "9fb1b90ce0a847a8cc9492a6c1f347b5be1f33ff",
      "tree": "eb877b655afd1cf303677edadb41086c798030fd",
      "parents": [
        "6617feca15c68aad12f4a1edd8d8e2ef8d5b4ae5"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Mon Apr 16 15:01:55 2012 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Feb 19 08:43:35 2013 +0100"
      },
      "message": "lockdep: Selftest: convert spinlock to raw spinlock\n\nTo make the lockdep selftest working on RT we need to convert the\nspinlock tests to a raw spinlock. Otherwise we cannot run the irq\ncontext checks. For mainline this is just annotational as spinlocks\nare mapped to raw_spinlocks anyway.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1334559716-18447-2-git-send-email-yong.zhang0@gmail.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ce6711f3d196f09ca0ed29a24dfad42d83912b20",
      "tree": "6d948f9036bdee10baaa825d86ad4a444d9b22bb",
      "parents": [
        "5cd3f5affad2109fd1458aab3f6216f2181e26ea"
      ],
      "author": {
        "name": "Alex Shi",
        "email": "alex.shi@intel.com",
        "time": "Tue Feb 05 21:11:55 2013 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Tue Feb 19 08:42:43 2013 +0100"
      },
      "message": "rwsem: Implement writer lock-stealing for better scalability\n\nCommit 5a505085f043 (\"mm/rmap: Convert the struct anon_vma::mutex\nto an rwsem\") changed struct anon_vma::mutex to an rwsem, which\ncaused aim7 fork_test performance to drop by 50%.\n\nYuanhan Liu did the following excellent analysis:\n\n    https://lkml.org/lkml/2013/1/29/84\n\nand found that the regression is caused by strict, serialized,\nFIFO sequential write-ownership of rwsems. Ingo suggested\nimplementing opportunistic lock-stealing for the front writer\ntask in the waitqueue.\n\nYuanhan Liu implemented lock-stealing for spinlock-rwsems,\nwhich indeed recovered much of the regression - confirming\nthe analysis that the main factor in the regression was the\nFIFO writer-fairness of rwsems.\n\nIn this patch we allow lock-stealing to happen when the first\nwaiter is also writer. With that change in place the\naim7 fork_test performance is fully recovered on my\nIntel NHM EP, NHM EX, SNB EP 2S and 4S test-machines.\n\nReported-by: lkp@linux.intel.com\nReported-by: Yuanhan Liu \u003cyuanhan.liu@linux.intel.com\u003e\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: paul.gortmaker@windriver.com\nLink: https://lkml.org/lkml/2013/1/29/84\nLink: http://lkml.kernel.org/r/1360069915-31619-1-git-send-email-alex.shi@intel.com\n[ Small stylistic fixes, updated changelog. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "64e69073c35439fa19c2ad2a4a18834e0314f071",
      "tree": "121d6e719dcf81090ad26778c5d7c89cd43e33e9",
      "parents": [
        "0a5eae458e923af9968679fd75fd1f7670200bc3"
      ],
      "author": {
        "name": "Vineet Gupta",
        "email": "vgupta@synopsys.com",
        "time": "Fri Jan 18 15:12:16 2013 +0530"
      },
      "committer": {
        "name": "Vineet Gupta",
        "email": "vgupta@synopsys.com",
        "time": "Mon Feb 11 20:00:33 2013 +0530"
      },
      "message": "asm-generic headers: Allow yet more arch overrides in checksum.h\n\narches can have more efficient implementation of these routines\n\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Vineet Gupta \u003cvgupta@synopsys.com\u003e\n"
    },
    {
      "commit": "9228b5f24325a3863a4819300b471278ff14b48f",
      "tree": "7108d5a0e1d0a717d80a7f77e45d29255321b2e6",
      "parents": [
        "88b62b915b0b7e25870eb0604ed9a92ba4bfc9f7",
        "40393f525fe698e2b639cf1851ef0a40e7e158a8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Feb 04 19:06:34 2013 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Mon Feb 04 19:06:34 2013 +0100"
      },
      "message": "Merge branch \u0027rcu/next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu\n\nPull RCU updates from Paul E. McKenney:\n\n1.\tChanges to rcutorture and to RCU documentation. Posted to LKML at\n        https://lkml.org/lkml/2013/1/26/188.\n\n2.\tEnhancements to uniprocessor handling in tiny RCU. Posted to LKML\n        at https://lkml.org/lkml/2013/1/27/2.\n\n3.\tTag RCU callbacks with grace-period number to simplify callback\n        advancement. Posted to LKML at https://lkml.org/lkml/2013/1/26/203.\n\n4.\tMiscellaneous fixes. Posted to LKML at https://lkml.org/lkml/2013/1/26/204.\n\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "0d2a1b2d03dfd5ee79e7ebc59635690c8f08810f",
      "tree": "743a2995f53cef27082a1e3fbe99726322d48e1d",
      "parents": [
        "26d438457ed1b99b6cb26d8f694e8d3de336f9d8"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Wed Jan 30 11:30:06 2013 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Fri Feb 01 16:28:32 2013 +1100"
      },
      "message": "mpilib: use DIV_ROUND_UP and remove unused macros\n\nRemove MIN, MAX and ABS macros that are duplicates kernel\u0027s native\nimplementation.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "26d438457ed1b99b6cb26d8f694e8d3de336f9d8",
      "tree": "9a6f3cd4f009fc0bff888e52a2c00af757b50e58",
      "parents": [
        "5a73fcfa8875a94c2956e7ff8fba54d31a3e2854"
      ],
      "author": {
        "name": "Dmitry Kasatkin",
        "email": "dmitry.kasatkin@intel.com",
        "time": "Wed Jan 30 11:30:05 2013 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Fri Feb 01 16:28:24 2013 +1100"
      },
      "message": "digsig: remove unnecessary memory allocation and copying\n\nIn existing use case, copying of the decoded data is unnecessary in\npkcs_1_v1_5_decode_emsa. It is just enough to get pointer to the message.\nRemoving copying and extra buffer allocation.\n\nSigned-off-by: Dmitry Kasatkin \u003cdmitry.kasatkin@intel.com\u003e\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "7810cc1e7721220f1ed2a23ca95113d6434f6dcd",
      "tree": "4642aac5aae21cc87917875b150ef516cc666868",
      "parents": [
        "88b62b915b0b7e25870eb0604ed9a92ba4bfc9f7"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Jan 25 16:54:20 2013 +0200"
      },
      "committer": {
        "name": "James Morris",
        "email": "james.l.morris@oracle.com",
        "time": "Fri Feb 01 15:59:33 2013 +1100"
      },
      "message": "digsig: Fix memory leakage in digsig_verify_rsa()\n\ndigsig_verify_rsa() does not free kmalloc\u0027ed buffer returned by\nmpi_get_buffer().\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Dmitry Kasatkin \u003cdmitry.kasatkin@intel.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: James Morris \u003cjames.l.morris@oracle.com\u003e\n"
    },
    {
      "commit": "ac2cbab21f318e19bc176a7f38a120cec835220f",
      "tree": "1348f7e5a7e50b85bf56a9e1155bed70be13cd51",
      "parents": [
        "38fa4175e60d98fb1c9815fb14f8057576dade73"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Jan 24 12:20:16 2013 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Jan 29 19:36:53 2013 -0800"
      },
      "message": "x86: Don\u0027t panic if can not alloc buffer for swiotlb\n\nNormal boot path on system with iommu support:\nswiotlb buffer will be allocated early at first and then try to initialize\niommu, if iommu for intel or AMD could setup properly, swiotlb buffer\nwill be freed.\n\nThe early allocating is with bootmem, and could panic when we try to use\nkdump with buffer above 4G only, or with memmap to limit mem under 4G.\nfor example: memmap\u003d4095M$1M to remove memory under 4G.\n\nAccording to Eric, add _nopanic version and no_iotlb_memory to fail\nmap single later if swiotlb is still needed.\n\n-v2: don\u0027t pass nopanic, and use -ENOMEM return value according to Eric.\n     panic early instead of using swiotlb_full to panic...according to Eric/Konrad.\n-v3: make swiotlb_init to be notpanic, but will affect:\n     arm64, ia64, powerpc, tile, unicore32, x86.\n-v4: cleanup swiotlb_init by removing swiotlb_init_with_default_size.\n\nSuggested-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLink: http://lkml.kernel.org/r/1359058816-7615-36-git-send-email-yinghai@kernel.org\nReviewed-and-tested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Kyungmin Park \u003ckyungmin.park@samsung.com\u003e\nCc: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Andrzej Pietrasiewicz \u003candrzej.p@samsung.com\u003e\nCc: linux-mips@linux-mips.org\nCc: xen-devel@lists.xensource.com\nCc: virtualization@lists.linux-foundation.org\nCc: Shuah Khan \u003cshuahkhan@gmail.com\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\n"
    },
    {
      "commit": "40393f525fe698e2b639cf1851ef0a40e7e158a8",
      "tree": "4067b416468413225a8ac8c75c43859fe3b03bb5",
      "parents": [
        "0e11c8e8a60f8591556d142c2e1e53eaf86ab528",
        "4eacdf18374e5d7d21a728b46dfec269ac8ef55c",
        "6d4b418c75a74eea1dd3701e106a9da8c335c451",
        "9fc52d832b5e7f6e175f3b20ae94504b780b9fd3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 28 22:25:02 2013 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 28 22:25:21 2013 -0800"
      },
      "message": "Merge branches \u0027doctorture.2013.01.29a\u0027, \u0027fixes.2013.01.26a\u0027, \u0027tagcb.2013.01.24a\u0027 and \u0027tiny.2013.01.29b\u0027 into HEAD\n\ndoctorture.2013.01.11a: Changes to rcutorture and to RCU documentation.\n\nfixes.2013.01.26a: Miscellaneous fixes.\n\ntagcb.2013.01.24a: Tag RCU callbacks with grace-period number to\n\tsimplify callback advancement.\n\ntiny.2013.01.29b: Enhancements to uniprocessor handling in tiny RCU.\n"
    },
    {
      "commit": "6bfc09e2327dfbffc312004c16188dbf8dfb0297",
      "tree": "f36ac34ec671ea5eaa926ebabba8486bbda9c175",
      "parents": [
        "1b0048a44c502c5ab850203e6e0a6498d7d8676d"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Fri Oct 19 12:49:17 2012 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 28 22:06:21 2013 -0800"
      },
      "message": "rcu: Provide RCU CPU stall warnings for tiny RCU\n\nTiny RCU has historically omitted RCU CPU stall warnings in order to\nreduce memory requirements, however, lack of these warnings caused\nThomas Gleixner some debugging pain recently.  Therefore, this commit\nadds RCU CPU stall warnings to tiny RCU if RCU_TRACE\u003dy.  This keeps\nthe memory footprint small, while still enabling CPU stall warnings\nin kernels built to enable them.\n\nUpdated to include Josh Triplett\u0027s suggested use of RCU_STALL_COMMON\nconfig variable to simplify #if expressions.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "2f03e3ca74a7f8b17ce626d337d321163dce2dad",
      "tree": "fd0f962c74e840b9492bd4631da06583d00da95f",
      "parents": [
        "b44f665623d15ff391c7e9fe7600c5e7bc2fc9c2"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jan 07 08:19:23 2013 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat Jan 26 16:34:48 2013 -0800"
      },
      "message": "rcu: Consolidate debugging Kconfig options\n\nThe RCU-related debugging Kconfig options are in two different places,\nand consume too much screen real estate.  This commit therefore\nconsolidates them into their own menu.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "422d26b6ecd77af8c77f2a40580679459825170f",
      "tree": "632e690e458fb7b27db200cd6fcd5429e143e419",
      "parents": [
        "4c271bb67c04253c1e99006eb48fb773a8fe8c0f",
        "949db153b6466c6f7cad5a427ecea94985927311"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 25 21:06:30 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 25 21:06:30 2013 -0800"
      },
      "message": "Merge 3.8-rc5 into driver-core-next\n\nThis resolves a gpio driver merge issue pointed out in linux-next.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "9f9cba810f36d16f4e64477e879a69f6c47b389d",
      "tree": "d787abcbead1439d3f82f0719efe520fd9689f79",
      "parents": [
        "dbf5bef8da169b38db804996a661f8d634df8295",
        "949db153b6466c6f7cad5a427ecea94985927311"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 25 13:27:36 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 25 13:27:36 2013 -0800"
      },
      "message": "Merge 3.8-rc5 into tty-next\n\nThis resolves a number of tty driver merge issues found in linux-next\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "f4a18312f46a6c6e0ba7b81776b01fc36edea9fc",
      "tree": "ff322b85a44eafdb2b72e525b8d1391f47e31b6b",
      "parents": [
        "846a798174d3376542a394a3c5227ef149445e83"
      ],
      "author": {
        "name": "Thierry Reding",
        "email": "thierry.reding@avionic-design.de",
        "time": "Tue Jan 22 22:24:46 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Jan 22 13:31:18 2013 -0800"
      },
      "message": "lib: devres: Fix build breakage\n\nThe ERR_PTR() and IS_ERR() macros used by the devm_ioremap_resource()\nfunction are defined in the linux/err.h header. On ARM this seems to be\npulled in by one of the other headers but the build fails at least on\nOpenRISC.\n\nSigned-off-by: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nReported-by: kbuild test robot \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "75096579c3ac39ddc2f8b0d9a8924eba31f4d920",
      "tree": "15d50607ffc22358fdbf98ed61e0962c589779a9",
      "parents": [
        "771d394fbd3af266c01813b40a82cec6c80af98d"
      ],
      "author": {
        "name": "Thierry Reding",
        "email": "thierry.reding@avionic-design.de",
        "time": "Mon Jan 21 11:08:54 2013 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Jan 22 09:41:43 2013 -0800"
      },
      "message": "lib: devres: Introduce devm_ioremap_resource()\n\nThe devm_request_and_ioremap() function is very useful and helps avoid a\nwhole lot of boilerplate. However, one issue that keeps popping up is\nits lack of a specific error code to determine which of the steps that\nit performs failed. Furthermore, while the function gives an example and\nsuggests what error code to return on failure, a wide variety of error\ncodes are used throughout the tree.\n\nIn an attempt to fix these problems, this patch adds a new function that\ndrivers can transition to. The devm_ioremap_resource() returns a pointer\nto the remapped I/O memory on success or an ERR_PTR() encoded error code\non failure. Callers can check for failure using IS_ERR() and determine\nits cause by extracting the error code using PTR_ERR().\n\ndevm_request_and_ioremap() is implemented as a wrapper around the new\nAPI and return NULL on failure as before. This ensures that backwards\ncompatibility is maintained until all users have been converted to the\nnew API, at which point the old devm_request_and_ioremap() function\nshould be removed.\n\nA semantic patch is included which can be used to convert from the old\ndevm_request_and_ioremap() API to the new devm_ioremap_resource() API.\nSome non-trivial cases may require manual intervention, though.\n\nSigned-off-by: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "373d4d099761cb1f637bed488ab3871945882273",
      "tree": "954bef7bc724aee105dd246d5f2b1ea04ed38b20",
      "parents": [
        "64748a2c9062da0c32b59c1b368a86fc4613b1e1"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 21 17:17:39 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Jan 21 17:17:57 2013 +1030"
      },
      "message": "taint: add explicit flag to show whether lock dep is still OK.\n\nFix up all callers as they were before, with make one change: an\nunsigned module taints the kernel, but doesn\u0027t turn off lockdep.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "226364766f936d249e408de03821468c1bf11dda",
      "tree": "3b4feabb40a87f311ae92bb973c18293d05597e8",
      "parents": [
        "3a142ed962958d3063f648738a3384ab90017100",
        "1fb9341ac34825aa40354e74d9a2c69df7d2c304"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 16:44:28 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 20 16:44:28 2013 -0800"
      },
      "message": "Merge tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module fixes and a virtio block fix from Rusty Russell:\n \"Various minor fixes, but a slightly more complex one to fix the\n  per-cpu overload problem introduced recently by kvm id changes.\"\n\n* tag \u0027fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  module: put modules in list much earlier.\n  module: add new state MODULE_STATE_UNFORMED.\n  module: prevent warning when finit_module a 0 sized file\n  virtio-blk: Don\u0027t free ida when disk is in use\n"
    },
    {
      "commit": "4f73bc4dd3e8563ef4109f293a092820dff66d92",
      "tree": "8ebd5d01abaceb70da1932db1a5e7219630b0fd3",
      "parents": [
        "a1bf9584429d61b7096f93ae09325e1ba538e9e8"
      ],
      "author": {
        "name": "Joe Millenbach",
        "email": "jmillenbach@gmail.com",
        "time": "Thu Jan 17 22:44:22 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jan 18 16:15:27 2013 -0800"
      },
      "message": "tty: Added a CONFIG_TTY option to allow removal of TTY\n\nThe option allows you to remove TTY and compile without errors. This\nsaves space on systems that won\u0027t support TTY interfaces anyway.\nbloat-o-meter output is below.\n\nThe bulk of this patch consists of Kconfig changes adding \"depends on\nTTY\" to various serial devices and similar drivers that require the TTY\nlayer.  Ideally, these dependencies would occur on a common intermediate\nsymbol such as SERIO, but most drivers \"select SERIO\" rather than\n\"depends on SERIO\", and \"select\" does not respect dependencies.\n\nbloat-o-meter output comparing our previous minimal to new minimal by\nremoving TTY.  The list is filtered to not show removed entries with awk\n\u0027$3 !\u003d \"-\"\u0027 as the list was very long.\n\nadd/remove: 0/226 grow/shrink: 2/14 up/down: 6/-35356 (-35350)\nfunction                                     old     new   delta\nchr_dev_init                                 166     170      +4\nallow_signal                                  80      82      +2\nstatic.__warned                              143     142      -1\ndisallow_signal                               63      62      -1\n__set_special_pids                            95      94      -1\nunregister_console                           126     121      -5\nstart_kernel                                 546     541      -5\nregister_console                             593     588      -5\ncopy_from_user                                45      40      -5\nsys_setsid                                   128     120      -8\nsys_vhangup                                   32      19     -13\ndo_exit                                     1543    1526     -17\nbitmap_zero                                   60      40     -20\narch_local_irq_save                          137     117     -20\nrelease_task                                 674     652     -22\nstatic.spin_unlock_irqrestore                308     260     -48\n\nSigned-off-by: Joe Millenbach \u003cjmillenbach@gmail.com\u003e\nReviewed-by: Jamey Sharp \u003cjamey@minilop.net\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "ed408f7c0fab7ecc72f94f204f0d2607b2749f69",
      "tree": "8c85eb47814fff6c9ea0aa6177e47555c0f9c5b1",
      "parents": [
        "52f7a82b59ff385da86a3ed17c8d9f6a83531004",
        "7d1f9aeff1ee4a20b1aeb377dd0f579fe9647619"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 19:48:18 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 19:48:18 2013 -0800"
      },
      "message": "Merge 3.9-rc4 into driver-core-next\n\nThis is to fix up a build problem with a wireless driver due to the\ndynamic-debug patches in this branch.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "18c216c53b29f15b17c4c05a46395fc90ebb6f0c",
      "tree": "0f01e8fd2346ec6c82eaace95e6831440bc39a03",
      "parents": [
        "7a555613eb77c69eb6e48b61bc5f72dd42fa1780"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Dec 05 16:48:27 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 12:19:09 2013 -0800"
      },
      "message": "dynamic_debug: add pr_errs before -EINVALs\n\nMa noted that dynamic-debug is silent about many query errors, so add\npr_err()s to explain those errors, and tweak a few others.  Also parse\nflags 1st, so that match-spec errs are slightly clearer.\n\nCC: Jianpeng Ma \u003cmajianpeng@gmail.com\u003e\nCC: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "7a555613eb77c69eb6e48b61bc5f72dd42fa1780",
      "tree": "fd2c5ef59a77ba532a5957923f9919fa170027f9",
      "parents": [
        "f657fd21e16e3ab7432c03008e19069c2ef8e150"
      ],
      "author": {
        "name": "Vladimir Kondratiev",
        "email": "qca_vkondrat@qca.qualcomm.com",
        "time": "Wed Dec 05 16:48:27 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 12:19:09 2013 -0800"
      },
      "message": "dynamic_debug: dynamic hex dump\n\nIntroduce print_hex_dump_debug() that can be dynamically controlled, similar to\npr_debug.\n\nAlso, make print_hex_dump_bytes() dynamically controlled\n\nImplement only \u0027p\u0027 flag (_DPRINTK_FLAGS_PRINT) to keep it simple since hex dump prints\nmultiple lines and long prefix would impact readability.\nTo provide line/file etc. information, use pr_debug or similar\nbefore/after print_hex_dump_debug()\n\nSigned-off-by: Vladimir Kondratiev \u003cqca_vkondrat@qca.qualcomm.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "f657fd21e16e3ab7432c03008e19069c2ef8e150",
      "tree": "5b7ff5789f497491c29acfc896622cff0527ab4a",
      "parents": [
        "a8826eeb71bd0f540e0df799c98da4ab7f4cb03a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Dec 05 16:48:26 2012 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 12:18:07 2013 -0800"
      },
      "message": "dynamic_debug: Fix vpr_\u003cfoo\u003e logging styles\n\nvpr_info_dq should be a function and vpr_info should have\na do {} while (0)\n\nAdd missing newlines to pr_\u003clevel\u003es.\n\nMiscellaneous neatening too.\nbraces, coalescing formats, alignments, etc...\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "525c1f9204928649eca475e61bfb21e0b6416dbf",
      "tree": "6ffb09e9cfcad7cd2549f6507750757c8cc94d91",
      "parents": [
        "ebe88fdc2574661d8acc869ec6d0f288033b52b5"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Wed Jan 16 18:54:16 2013 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 17 12:11:27 2013 -0800"
      },
      "message": "lib: remove depends on CONFIG_EXPERIMENTAL\n\nThe CONFIG_EXPERIMENTAL config item has not carried much meaning for a\nwhile now and is almost always enabled by default. As agreed during the\nLinux kernel summit, remove it from any \"depends on\" lines in Kconfigs.\n\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCC: Dmitry Kasatkin \u003cdmitry.kasatkin@intel.com\u003e\nCC: James Morris \u003cjames.l.morris@oracle.com\u003e\nCC: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nCC: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCC: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nAcked-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "1fb9341ac34825aa40354e74d9a2c69df7d2c304",
      "tree": "ebb2b836673d722845cd0a17c836799d800ae810",
      "parents": [
        "0d21b0e3477395e7ff2acc269f15df6e6a8d356d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 13:27:34 2013 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Jan 12 13:27:46 2013 +1030"
      },
      "message": "module: put modules in list much earlier.\n\nPrarit\u0027s excellent bug report:\n\u003e In recent Fedora releases (F17 \u0026 F18) some users have reported seeing\n\u003e messages similar to\n\u003e\n\u003e [   15.478160] kvm: Could not allocate 304 bytes percpu data\n\u003e [   15.478174] PERCPU: allocation failed, size\u003d304 align\u003d32, alloc from\n\u003e reserved chunk failed\n\u003e\n\u003e during system boot.  In some cases, users have also reported seeing this\n\u003e message along with a failed load of other modules.\n\u003e\n\u003e What is happening is systemd is loading an instance of the kvm module for\n\u003e each cpu found (see commit e9bda3b).  When the module load occurs the kernel\n\u003e currently allocates the modules percpu data area prior to checking to see\n\u003e if the module is already loaded or is in the process of being loaded.  If\n\u003e the module is already loaded, or finishes load, the module loading code\n\u003e releases the current instance\u0027s module\u0027s percpu data.\n\nNow we have a new state MODULE_STATE_UNFORMED, we can insert the\nmodule into the list (and thus guarantee its uniqueness) before we\nallocate the per-cpu region.\n\nReported-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\n"
    },
    {
      "commit": "3cb7a56344ca45ee56d71c5f8fe9f922306bff1f",
      "tree": "da6fd5aa462e9e7c117063740c15fd95241c72d3",
      "parents": [
        "a8906b0b673a8a64ae1446a7847def62388f6e46"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Fri Jan 11 14:32:20 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:56 2013 -0800"
      },
      "message": "lib/rbtree.c: avoid the use of non-static __always_inline\n\nlib/rbtree.c declared __rb_erase_color() as __always_inline void, and\nthen exported it with EXPORT_SYMBOL.\n\nThis was because __rb_erase_color() must be exported for augmented\nrbtree users, but it must also be inlined into rb_erase() so that the\ndummy callback can get optimized out of that call site.\n\n(Actually with a modern compiler, none of the dummy callback functions\nshould even be generated as separate text functions).\n\nThe above usage is legal C, but it was unusual enough for some compilers\nto warn about it.  This change makes things more explicit, with a static\n__always_inline ____rb_erase_color function for use in rb_erase(), and a\nseparate non-inline __rb_erase_color function for use in\nrb_erase_augmented call sites.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReported-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "896f97ea95c1d29c0520ee0766b66b7f64cb967c",
      "tree": "9898ba669c2348294452fcfd5b7b81fe04cb072f",
      "parents": [
        "254adaa465c40151df11fc1f88f93e6e86eb61d4"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@googlers.com",
        "time": "Fri Jan 11 14:31:36 2013 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 11 14:54:54 2013 -0800"
      },
      "message": "lib: cpu_rmap: avoid flushing all workqueues\n\nIn some cases, free_irq_cpu_rmap() is called while holding a lock (eg\nrtnl).  This can lead to deadlocks, because it invokes\nflush_scheduled_work() which ends up waiting for whole system workqueue\nto flush, but some pending works might try to acquire the lock we are\nalready holding.\n\nThis commit uses reference-counting to replace\nirq_run_affinity_notifiers().  It also removes\nirq_run_affinity_notifiers() altogether.\n\n[akpm@linux-foundation.org: eliminate free_cpu_rmap, rename cpu_rmap_reclaim() to cpu_rmap_release(), propagate kref_put() retval from cpu_rmap_put()]\nSigned-off-by: David Decotigny \u003cdecot@googlers.com\u003e\nReviewed-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nAcked-by: Eric Dumazet \u003cedumazet@google.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nAcked-by: Amir Vadai \u003camirv@mellanox.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52494535103986dbbf689b44d8c2c7efe2132b16",
      "tree": "88dd5a9d064608e9711c36f05b3b4aab8e255a4f",
      "parents": [
        "dc975e94f322e60fa8fcc44dec1820fde4de174c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Wed Nov 14 16:26:40 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jan 08 14:14:55 2013 -0800"
      },
      "message": "rcu: Reduce rcutorture tracing\n\nCurrently, rcutorture traces every read-side access.  This can be\nproblematic because even a two-minute rcutorture run on a two-CPU system\ncan generate 28,853,363 reads.  Normally, only a failing read is of\ninterest, so this commit traces adjusts rcutorture\u0027s tracing to only\ntrace failing reads.  The resulting event tracing records the time\nand the -\u003ecompleted value captured at the beginning of the RCU read-side\ncritical section, allowing correlation with other event-tracing messages.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n[ paulmck: Add fix to build problem located by Randy Dunlap based on\n  diagnosis by Steven Rostedt. ]\n"
    },
    {
      "commit": "6ae141718e3f9c7e2c620e999c86612a7f415bb1",
      "tree": "808737193b879da8b287f54647c4782fb450299d",
      "parents": [
        "e389623a68622e3c9be440ab522fac1aa1ca3454"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Dec 21 15:16:45 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Thu Jan 03 15:57:16 2013 -0800"
      },
      "message": "misc: remove __dev* attributes.\n\nCONFIG_HOTPLUG is going away as an option.  As a result, the __dev*\nmarkings need to be removed.\n\nThis change removes the last of the __dev* markings from the kernel from\na variety of different, tiny, places.\n\nBased on patches originally written by Bill Pemberton, but redone by me\nin order to handle some of the coding style issues better, by hand.\n\nCc: Bill Pemberton \u003cwfp5p@virginia.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    }
  ],
  "next": "fcc16882ac4532aaa644bff444f0c5d6228ba71e"
}
