)]}'
{
  "log": [
    {
      "commit": "7acd72eb85f1c7a15e8b5eb554994949241737f1",
      "tree": "76712bb9f38690d8cf9c2f91bef811e4413d1aa3",
      "parents": [
        "e64c026dd09b73faf20707711402fc5ed55a8e70"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: rename kfifo_put... into kfifo_in... and kfifo_get... into kfifo_out...\n\nrename kfifo_put...  into kfifo_in...  to prevent miss use of old non in\nkernel-tree drivers\n\nditto for kfifo_get...  -\u003e kfifo_out...\n\nImprove the prototypes of kfifo_in and kfifo_out to make the kerneldoc\nannotations more readable.\n\nAdd mini \"howto porting to the new API\" in kfifo.h\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e64c026dd09b73faf20707711402fc5ed55a8e70",
      "tree": "4780736e021824f15329a0826eff3cc27d3f9646",
      "parents": [
        "c1e13f25674ed564948ecb7dfe5f83e578892896"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: cleanup namespace\n\nchange name of __kfifo_* functions to kfifo_*, because the prefix __kfifo\nshould be reserved for internal functions only.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1e13f25674ed564948ecb7dfe5f83e578892896",
      "tree": "24fac07b3e2b66dff01c3127b34077de1de4c101",
      "parents": [
        "45465487897a1c6d508b14b904dc5777f7ec7e04"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: move out spinlock\n\nMove the pointer to the spinlock out of struct kfifo.  Most users in\ntree do not actually use a spinlock, so the few exceptions now have to\ncall kfifo_{get,put}_locked, which takes an extra argument to a\nspinlock.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45465487897a1c6d508b14b904dc5777f7ec7e04",
      "tree": "935c8dae68dc793ff2f795d57cf027531475cd53",
      "parents": [
        "2ec91eec47f713e3d158ba5b28a24a85a2cf3650"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:55 2009 -0800"
      },
      "message": "kfifo: move struct kfifo in place\n\nThis is a new generic kernel FIFO implementation.\n\nThe current kernel fifo API is not very widely used, because it has to\nmany constrains.  Only 17 files in the current 2.6.31-rc5 used it.\nFIFO\u0027s are like list\u0027s a very basic thing and a kfifo API which handles\nthe most use case would save a lot of development time and memory\nresources.\n\nI think this are the reasons why kfifo is not in use:\n\n - The API is to simple, important functions are missing\n - A fifo can be only allocated dynamically\n - There is a requirement of a spinlock whether you need it or not\n - There is no support for data records inside a fifo\n\nSo I decided to extend the kfifo in a more generic way without blowing up\nthe API to much.  The new API has the following benefits:\n\n - Generic usage: For kernel internal use and/or device driver.\n - Provide an API for the most use case.\n - Slim API: The whole API provides 25 functions.\n - Linux style habit.\n - DECLARE_KFIFO, DEFINE_KFIFO and INIT_KFIFO Macros\n - Direct copy_to_user from the fifo and copy_from_user into the fifo.\n - The kfifo itself is an in place member of the using data structure, this save an\n   indirection access and does not waste the kernel allocator.\n - Lockless access: if only one reader and one writer is active on the fifo,\n   which is the common use case, no additional locking is necessary.\n - Remove spinlock - give the user the freedom of choice what kind of locking to use if\n   one is required.\n - Ability to handle records. Three type of records are supported:\n   - Variable length records between 0-255 bytes, with a record size\n     field of 1 bytes.\n   - Variable length records between 0-65535 bytes, with a record size\n     field of 2 bytes.\n   - Fixed size records, which no record size field.\n - Preserve memory resource.\n - Performance!\n - Easy to use!\n\nThis patch:\n\nSince most users want to have the kfifo as part of another object,\nreorganize the code to allow including struct kfifo in another data\nstructure.  This requires changing the kfifo_alloc and kfifo_init\nprototypes so that we pass an existing kfifo pointer into them.  This\npatch changes the implementation and all existing users.\n\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83f57a11d84460dfe2afdb5a8bc759953428e38b",
      "tree": "b8506a6b61eb23e3d203fb248776c7eab9270c2d",
      "parents": [
        "0e2c8b8f55072a98b99e7bdad55c912084d6a526"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "message": "Revert \"time: Remove xtime_cache\"\n\nThis reverts commit 7bc7d637452383d56ba4368d4336b0dde1bb476d, as\nrequested by John Stultz. Quoting John:\n\n \"Petr Titěra reported an issue where he saw odd atime regressions with\n  2.6.33 where there were a full second worth of nanoseconds in the\n  nanoseconds field.\n\n  He also reviewed the time code and narrowed down the problem: unhandled\n  overflow of the nanosecond field caused by rounding up the\n  sub-nanosecond accumulated time.\n\n  Details:\n\n   * At the end of update_wall_time(), we currently round up the\n  sub-nanosecond portion of accumulated time when storing it into xtime.\n  This was added to avoid time inconsistencies caused when the\n  sub-nanosecond portion was truncated when storing into xtime.\n  Unfortunately we don\u0027t handle the possible second overflow caused by\n  that rounding.\n\n   * Previously the xtime_cache code hid this overflow by normalizing the\n  xtime value when storing into the xtime_cache.\n\n   * We could try to handle the second overflow after the rounding up, but\n  since this affects the timekeeping\u0027s internal state, this would further\n  complicate the next accumulation cycle, causing small errors in ntp\n  steering. As much as I\u0027d like to get rid of it, the xtime_cache code is\n  known to work.\n\n   * The correct fix is really to include the sub-nanosecond portion in the\n  timekeeping accessor function, so we don\u0027t need to round up at during\n  accumulation. This would greatly simplify the accumulation code.\n  Unfortunately, we can\u0027t do this safely until the last three\n  non-GENERIC_TIME arches (sparc32, arm, cris) are converted  (those\n  patches are in -mm) and we kill off the spots where arches set xtime\n  directly. This is all 2.6.34 material, so I think reverting the\n  xtime_cache change is the best approach for now.\n\n  Many thanks to Petr for both reporting and finding the issue!\"\n\nReported-by: Petr Titěra \u003cP.Titera@century.cz\u003e\nRequested-by: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e2c8b8f55072a98b99e7bdad55c912084d6a526",
      "tree": "80c1ab46950ba15ed04ff6f8a6b8a032d6fbeafa",
      "parents": [
        "f7b84a6ba7eaeba4e1df8feddca1473a7db369a5"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Dec 20 10:50:02 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 21 10:42:29 2009 -0800"
      },
      "message": "resources: fix call to alignf() in allocate_resource()\n\nThe second parameter to alignf() in allocate_resource() must\nreflect what new resource is attempted to be allocated, else\nfunctions like pcibios_align_resource() (at least on x86) or\npcmcia_align() can\u0027t work correctly.\n\nCommit 1e5ad9679016275d422e36b12a98b0927d76f556 broke this by\nsetting the \"new\" resource until we\u0027re about to return success.\nTo keep the resource untouched when allocate_resource() fails,\na \"tmp\" resource is introduced.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70f1120527797adb31c68bdc6f1b45e182c342c7",
      "tree": "d2b5f85f3c0f7c9a162828362d3e5f587df56e20",
      "parents": [
        "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 17:36:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 23:31:23 2009 +0100"
      },
      "message": "sched: Fix hotplug hang\n\nThe hot-unplug kstopmachine usage does a wakeup after\ndeactivating the cpu, hence we cannot use cpu_active()\nhere but must rely on the good olde online.\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nReported-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nLKML-Reference: \u003c1261326987.4314.24.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66",
      "tree": "078c78047dd9eca67174955a1d1b622da3fe8da8",
      "parents": [
        "dd59f6c76b265ed2ff18b497d6105a9511b1feb1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 14:23:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 19:05:02 2009 +0100"
      },
      "message": "sched: Restore printk sanity\n\nRevert the braindead pr_* crap. (Commit 663997d \"sched: Use\npr_fmt() and pr_\u003clevel\u003e()\")\n\nIt\u0027s dumb and causes stupid \"sched: \" strings all over the place.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c1261315437.4314.6.camel@laptop\u003e\n[ i dont mind the pr_*() patterns that much - but Peter dislikes them with a vengence. ]\n[ - v2: remove spurious diffstat from changelog :-/ ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eca9dfcd0029c8a84b1094bb84a2fb53e4addf6c",
      "tree": "2e5982fef1e737ce5f8936981c7dc7fb50fc655c",
      "parents": [
        "3981e152864fcc1dbbb564e1f4c0ae11a09639d2",
        "b5b60fda1e462a849bc37dfbace2888191be82cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf session: Make events_stats u64 to avoid overflow on 32-bit arches\n  hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n  perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n  perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker\n  perf events, x86/stacktrace: Make stack walking optional\n  perf events: Remove unused perf_counter.h header file\n  perf probe: Check new event name\n  kprobe-tracer: Check new event/group name\n  perf probe: Check whether debugfs path is correct\n  perf probe: Fix libdwarf include path for Debian\n"
    },
    {
      "commit": "aac3d39693529ca538e37ebdb6ed5d6432a697c7",
      "tree": "bb1b0c9fe0538008aa2c97c6f5d9dfc2a4c34190",
      "parents": [
        "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
        "077614ee1e93245a3b9a4e1213659405dbeb0ba6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  sched: Fix broken assertion\n  sched: Assert task state bits at build time\n  sched: Update task_state_arraypwith new states\n  sched: Add missing state chars to TASK_STATE_TO_CHAR_STR\n  sched: Move TASK_STATE_TO_CHAR_STR near the TASK_state bits\n  sched: Teach might_sleep() about preemptible RCU\n  sched: Make warning less noisy\n  sched: Simplify set_task_cpu()\n  sched: Remove the cfs_rq dependency from set_task_cpu()\n  sched: Add pre and post wakeup hooks\n  sched: Move kthread_bind() back to kthread.c\n  sched: Fix select_task_rq() vs hotplug issues\n  sched: Fix sched_exec() balancing\n  sched: Ensure set_task_cpu() is never called on blocked tasks\n  sched: Use TASK_WAKING for fork wakups\n  sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE\n  sched: Fix task_hot() test order\n  sched: Fix set_cpu_active() in cpu_down()\n  sched: Mark boot-cpu active before smp_init()\n  sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n  ...\n"
    },
    {
      "commit": "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
      "tree": "def247dc399549bc1359fe9d1faa49c621f8890d",
      "parents": [
        "3cd312c3e887b4bee2d94668a481b3d19c07732c",
        "d4581a239a40319205762b76c01eb6363f277efa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sys: Fix missing rcu protection for __task_cred() access\n  signals: Fix more rcu assumptions\n  signal: Fix racy access to __task_cred in kill_pid_info_as_uid()\n"
    },
    {
      "commit": "3cd312c3e887b4bee2d94668a481b3d19c07732c",
      "tree": "c8978186da2155f7752de79a2cd5b59e3e298ce8",
      "parents": [
        "ecd5907a200b18aeddac68b8c734b8ad4c931205",
        "cf1e367ee84e02ac349ad0858eb65e8a6a511c8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:18 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timers: Remove duplicate setting of new_base in __mod_timer()\n  clockevents: Prevent clockevent_devices list corruption on cpu hotplug\n"
    },
    {
      "commit": "b4c30aad39805902cf5b855aa8a8b22d728ad057",
      "tree": "77aade9b02f1c7b0d2e92cdee9ce2403121f4a23",
      "parents": [
        "6f5d51148921c242680a7a1d9913384a30ab3cbe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sat Dec 19 16:03:30 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:27:43 2009 -0800"
      },
      "message": "fix more leaks in audit_tree.c tag_chunk()\n\nSeveral leaks in audit_tree didn\u0027t get caught by commit\n318b6d3d7ddbcad3d6867e630711b8a705d873d7, including the leak on normal\nexit in case of multiple rules refering to the same chunk.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f5d51148921c242680a7a1d9913384a30ab3cbe",
      "tree": "fdd33c4390dbd93ca8a77f6427b244937b9cddba",
      "parents": [
        "9b0fd1149747b117e7c3e9917fdea03b774ae3d0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sat Dec 19 15:59:45 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:27:43 2009 -0800"
      },
      "message": "fix braindamage in audit_tree.c untag_chunk()\n\n... aka \"Al had badly fscked up when writing that thing and nobody\nnoticed until Eric had fixed leaks that used to mask the breakage\".\n\nThe function essentially creates a copy of old array sans one element\nand replaces the references to elements of original (they are on cyclic\nlists) with those to corresponding elements of new one.  After that the\nold one is fair game for freeing.\n\nFirst of all, there\u0027s a dumb braino: when we get to list_replace_init we\nuse indices for wrong arrays - position in new one with the old array\nand vice versa.\n\nAnother bug is more subtle - termination condition is wrong if the\nelement to be excluded happens to be the last one.  We shouldn\u0027t go\nuntil we fill the new array, we should go until we\u0027d finished the old\none.  Otherwise the element we are trying to kill will remain on the\ncyclic lists...\n\nThat crap used to be masked by several leaks, so it was not quite\ntrivial to hit.  Eric had fixed some of those leaks a while ago and the\nshit had hit the fan...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55db493b65c7b6bb5d7bd3dd3c8a2fe13f5dc09c",
      "tree": "7f9203f43e7c81687c9aaa0213266bc7b2e89e35",
      "parents": [
        "efc8e7f4c83dc85acbf5f54a8b1b24ae75b20aaa",
        "a4636818f8e0991f32d9528f39cf4f3d6a7d30a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "message": "Merge branch \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  cpumask: rename tsk_cpumask to tsk_cpus_allowed\n  cpumask: don\u0027t recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt\n  cpumask: avoid dereferencing struct cpumask\n  cpumask: convert drivers/idle/i7300_idle.c to cpumask_var_t\n  cpumask: use modern cpumask style in drivers/scsi/fcoe/fcoe.c\n  cpumask: avoid deprecated function in mm/slab.c\n  cpumask: use cpu_online in kernel/perf_event.c\n"
    },
    {
      "commit": "efc8e7f4c83dc85acbf5f54a8b1b24ae75b20aaa",
      "tree": "cf7df8a837b719623e13b3ab19e8cfce1e270883",
      "parents": [
        "b5c96f89177b460ef89ecd777d5f2fefd4534d3f",
        "a00ae4d21b2fa9379914f270ffffd8d3bec55430"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:58:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:58:26 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture support\n  NOMMU: Optimise away the {dac_,}mmap_min_addr tests\n  security/min_addr.c: make init_mmap_min_addr() static\n  keys: PTR_ERR return of wrong pointer in keyctl_get_security()\n"
    },
    {
      "commit": "dcc7cd011220d7425a265c9bbf04c5731dacec1b",
      "tree": "4c2244f6e6ce94e2698572e9d2df3baea8449c2a",
      "parents": [
        "bf931a01a2c024a54204b4b02276af6e8d99a2c0",
        "b60e26a2f03d963f8c79ad7920d64abc4d38ecbc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:00:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:00:19 2009 -0800"
      },
      "message": "Merge branch \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6\n\n* \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6:\n  kmemleak: fix kconfig for crc32 build error\n  kmemleak: Reduce the false positives by checking for modified objects\n  kmemleak: Show the age of an unreferenced object\n  kmemleak: Release the object lock before calling put_object()\n  kmemleak: Scan the _ftrace_events section in modules\n  kmemleak: Simplify the kmemleak_scan_area() function prototype\n  kmemleak: Do not use off-slab management with SLAB_NOLEAKTRACE\n"
    },
    {
      "commit": "6485536bcf499839a54dcda8a8d47ea0bd29b375",
      "tree": "86c94469801a264a964399ebbd4c57877eb18ff3",
      "parents": [
        "65a80b4c61f5b5f6eb0f5669c8fb120893bfb388"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Dec 17 15:27:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:32 2009 -0800"
      },
      "message": "printk: fix new kernel-doc warnings\n\nFix kernel-doc warnings in printk.c:\n\nWarning(kernel/printk.c:1422): No description found for parameter \u0027dumper\u0027\nWarning(kernel/printk.c:1422): Excess function parameter \u0027dump\u0027 description in \u0027kmsg_dump_register\u0027\nWarning(kernel/printk.c:1451): No description found for parameter \u0027dumper\u0027\nWarning(kernel/printk.c:1451): Excess function parameter \u0027dump\u0027 description in \u0027kmsg_dump_unregister\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cd80bbb07fcd6d4d037fad4297496d3b132ac6b",
      "tree": "322216d34b6d5ba2366f53ba0d677950c4cde766",
      "parents": [
        "0f67b0b0392ccca98459bf40b36c0037793b5f71"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Thu Dec 17 15:27:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:31 2009 -0800"
      },
      "message": "do_wait() optimization: do not place sub-threads on task_struct-\u003echildren list\n\nThanks to Roland who pointed out de_thread() issues.\n\nCurrently we add sub-threads to -\u003ereal_parent-\u003echildren list.  This buys\nnothing but slows down do_wait().\n\nWith this patch -\u003echildren contains only main threads (group leaders).\nThe only complication is that forget_original_parent() should iterate over\nsub-threads by hand, and de_thread() needs another list_replace() when it\nchanges -\u003egroup_leader.\n\nHenceforth do_wait_thread() can never see task_detached() \u0026\u0026 !EXIT_DEAD\ntasks, we can remove this check (and we can unify do_wait_thread() and\nptrace_do_wait()).\n\nThis change can confuse the optimistic search in mm_update_next_owner(),\nbut this is fixable and minor.\n\nPerhaps badness() and oom_kill_process() should be updated, but they\nshould be fixed in any case.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ratan Nalumasu \u003crnalumasu@gmail.com\u003e\nCc: Vitaly Mayatskikh \u003cvmayatsk@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e26120cc7c819c97bc07281ca1fb9017cfe9a39",
      "tree": "e8aa119051496d8c4385aae4abd9e069e12e3be2",
      "parents": [
        "b6e3224fb20954f155e41ec5709b2ab70b50ae2d"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "amwang@redhat.com",
        "time": "Thu Dec 17 15:27:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:30 2009 -0800"
      },
      "message": "kernel/sysctl.c: fix the incomplete part of sysctl_max_map_count-should-be-non-negative.patch\n\nIt is a mistake that we used \u0027proc_dointvec\u0027, it should be\n\u0027proc_dointvec_minmax\u0027, as in the original patch.\n\nSigned-off-by: WANG Cong \u003camwang@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": "5a865c0606eb44d5d12cabb429751c83712183de",
      "tree": "726d6eaf3b20f30900304bd0cbb6339b423a071f",
      "parents": [
        "331d9d5958277de27e6ce42247e1cbec54fd1c7e",
        "46e75f66677f5094bb51e91f9473128c4e907c7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild: (29 commits)\n  net: fix for utsrelease.h moving to generated\n  gen_init_cpio: fixed fwrite warning\n  kbuild: fix make clean after mismerge\n  kbuild: generate modules.builtin\n  genksyms: properly consider  EXPORT_UNUSED_SYMBOL{,_GPL}()\n  score: add asm/asm-offsets.h wrapper\n  unifdef: update to upstream revision 1.190\n  kbuild: specify absolute paths for cscope\n  kbuild: create include/generated in silentoldconfig\n  scripts/package: deb-pkg: use fakeroot if available\n  scripts/package: add KBUILD_PKG_ROOTCMD variable\n  scripts/package: tar-pkg: use tar --owner\u003droot\n  Kbuild: clean up marker\n  net: add net_tstamp.h to headers_install\n  kbuild: move utsrelease.h to include/generated\n  kbuild: move autoconf.h to include/generated\n  drop explicit include of autoconf.h\n  kbuild: move compile.h to include/generated\n  kbuild: drop include/asm\n  kbuild: do not check for include/asm-$ARCH\n  ...\n\nFixed non-conflicting clean merge of modpost.c as per comments from\nStephen Rothwell (modpost.c had grown an include of linux/autoconf.h\nthat needed to be changed to generated/autoconf.h)\n"
    },
    {
      "commit": "077614ee1e93245a3b9a4e1213659405dbeb0ba6",
      "tree": "246e441967d7973d9e3addc6bade207db86d2575",
      "parents": [
        "e1781538cf5c870ab696e9b8f0a5c498d3900f2f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 17 13:16:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 13:22:46 2009 +0100"
      },
      "message": "sched: Fix broken assertion\n\nThere\u0027s a preemption race in the set_task_cpu() debug check in\nthat when we get preempted after setting task-\u003estate we\u0027d still\nbe on the rq proper, but fail the test.\n\nCheck for preempted tasks, since those are always on the RQ.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20091217121830.137155561@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d27c23df09b702868d9a3bff86ec6abd22963ac",
      "tree": "ce29a1253087067b3a0e4239d0936eede870ab0b",
      "parents": [
        "06d65bda75341485d32f33da474b0664819ad497"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 17 13:16:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 13:21:36 2009 +0100"
      },
      "message": "perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n\nAcme noticed that his FORK/MMAP numbers were inflated by about\nthe same factor as his cpu-count.\n\nThis led to the discovery of a few more sites that need to\nrespect the event-\u003ecpu filter.\n\nReported-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091217121830.215333434@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61c1917f47f73c968e92d04d15370b1dc3ec4592",
      "tree": "a20445bcaf484d270bd6cb8de5969702110af687",
      "parents": [
        "5b74ed4729ad2b2017453add68104a83206caefb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 17 05:40:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:56:19 2009 +0100"
      },
      "message": "perf events, x86/stacktrace: Make stack walking optional\n\nThe current print_context_stack helper that does the stack\nwalking job is good for usual stacktraces as it walks through\nall the stack and reports even addresses that look unreliable,\nwhich is nice when we don\u0027t have frame pointers for example.\n\nBut we have users like perf that only require reliable\nstacktraces, and those may want a more adapted stack walker, so\nlets make this function a callback in stacktrace_ops that users\ncan tune for their needs.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1261024834-5336-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "234da7bcdc7aaa935846534c3b726dbc79a9cdd5",
      "tree": "a391afd465d6493a9f1bb274c225bab4d303aad0",
      "parents": [
        "416eb39556a03d1c7e52b0791e9052ccd71db241"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Dec 16 20:21:05 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:46:44 2009 +0100"
      },
      "message": "sched: Teach might_sleep() about preemptible RCU\n\nIn practice, it is harmless to voluntarily sleep in a\nrcu_read_lock() section if we are running under preempt rcu, but\nit is illegal if we build a kernel running non-preemptable rcu.\n\nCurrently, might_sleep() doesn\u0027t notice sleepable operations\nunder rcu_read_lock() sections if we are running under\npreemptable rcu because preempt_count() is left untouched after\nrcu_read_lock() in this case. But we want developers who test\ntheir changes under such config to notice the \"sleeping while\natomic\" issues.\n\nSo we add rcu_read_lock_nesting to prempt_count() in\nmight_sleep() checks.\n\n[ v2: Handle rcu-tiny ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1260991265-8451-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f3cf440470650b3841d325acacd0c5ea9504c68",
      "tree": "a00395723fb479fc6485d1b6b36b97808d0159e6",
      "parents": [
        "96c96612e952f63cc0055db9df7d8b5b1ada02be"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Wed Dec 16 17:24:08 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:42:44 2009 +0100"
      },
      "message": "kprobe-tracer: Check new event/group name\n\nCheck new event/group name is same syntax as a C symbol. In other\nwords, checking the name is as like as other tracepoint events.\n\nThis can prevent user to create an event with useless name (e.g.\nfoo|bar, foo*bar).\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091216222408.14459.68790.stgit@dhcp-100-2-132.bos.redhat.com\u003e\n[ v2: minor cleanups ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "416eb39556a03d1c7e52b0791e9052ccd71db241",
      "tree": "66390e3d4f53721bc643d24d96d5da339f4c34f8",
      "parents": [
        "738d2be4301007f054541c5c4bf7fb6a361c9b3a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 06:05:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 06:05:49 2009 +0100"
      },
      "message": "sched: Make warning less noisy\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.807938893@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62ac12795095dc959649c66ace78708e7ac52477",
      "tree": "8ee766dda801b8990e41b4332697bbe365032626",
      "parents": [
        "cc216b86e51e9ab22265ea9591769c9ee235e1e4"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:26 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:29 2009 +1030"
      },
      "message": "cpumask: avoid dereferencing struct cpumask\n\nstruct cpumask will be undefined soon with CONFIG_CPUMASK_OFFSTACK\u003dy,\nto avoid them being declared on the stack.\n\ncpumask_bits() does what we want here (of course, this code is crap).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTo: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f6325e30ebd6fc870315b017a5d4a6ab15bf790b",
      "tree": "fd5961e95c8aeef5b4f4517c81bedbf4a774cece",
      "parents": [
        "bea4c899f2b5fad80099aea979780ef19f9b1987"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:08 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:11 2009 +1030"
      },
      "message": "cpumask: use cpu_online in kernel/perf_event.c\n\nAlso, we want to check against nr_cpu_ids, not num_possible_cpus().\nThe latter works, but the correct bounds check is \u003c nr_cpu_ids.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTo: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "cf1e367ee84e02ac349ad0858eb65e8a6a511c8b",
      "tree": "a20273becfcf64a0230135c89d509466e2230aed",
      "parents": [
        "bb6eddf7676e1c1f3e637aa93c5224488d99036f"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Thu Dec 17 11:15:42 2009 +1100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 17 01:30:49 2009 +0100"
      },
      "message": "timers: Remove duplicate setting of new_base in __mod_timer()\n\nnew_base is set using per_cpu(tvec_bases, cpu) after selecting the\ndesired value of cpu immediately below so this line is a unnecessary.\n\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nLKML-Reference: \u003c20091217001542.GD25317@verge.net.au\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "6e1415467614e854fee660ff6648bd10fa976e95",
      "tree": "2ae2e2f51eff0629bc0e26a97eac85483a7ba56f",
      "parents": [
        "dd880fbe8e4792d1185a5101dc751f49eab0a509"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 15 19:27:45 2009 +0000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 17 09:25:19 2009 +1100"
      },
      "message": "NOMMU: Optimise away the {dac_,}mmap_min_addr tests\n\nIn NOMMU mode clamp dac_mmap_min_addr to zero to cause the tests on it to be\nskipped by the compiler.  We do this as the minimum mmap address doesn\u0027t make\nany sense in NOMMU mode.\n\nmmap_min_addr and round_hint_to_min() can be discarded entirely in NOMMU mode.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "61cf693159d6a968a7014e24905143f71ed8ddcf",
      "tree": "595a4bddf8b005f7345cc123b19f4da1f5d07aa7",
      "parents": [
        "288f02bbb6e9609cbaf1eb7a9cb97ae45ce090b2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Dec 16 12:28:44 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:18 2009 -0800"
      },
      "message": "[sysctl] Fix breakage on systems with older glibc\n\nAs predicted during code review, the sysctl(2) changes made systems with\nold glibc nearly unusable.  About every command gives a:\n\n  warning: process `ls\u0027 used the deprecated sysctl system call with 1.4\n\nwarning in the log.\n\nI see this on a SUSE 10.0 system with glibc 2.3.5.\n\nDon\u0027t warn for this common case.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8aedf8a6ae98d5d4df3254b6afb7e4432d9d8600",
      "tree": "444d19b9172009e81a0ba9e7e5be3e0910bdd978",
      "parents": [
        "bac5e54c29f352d962a2447d22735316b347b9f1",
        "60ab271617cec607380099f3ed8e84916e48323b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (52 commits)\n  perf record: Use per-task-per-cpu events for inherited events\n  perf record: Properly synchronize child creation\n  perf events: Allow per-task-per-cpu counters\n  perf diff: Percent calcs should use double values\n  perf diff: Change the default sort order to \"dso,symbol\"\n  perf diff: Use perf_session__fprintf_hists just like \u0027perf record\u0027\n  perf report: Fix cut\u0027n\u0027paste error recently introduced\n  perf session: Move perf report specific hits out of perf_session__fprintf_hists\n  perf tools: Move hist entries printing routines from perf report\n  perf report: Generalize perf_session__fprintf_hists()\n  perf symbols: Move symbol filtering to event__preprocess_sample()\n  perf symbols: Adopt the strlists for dso, comm\n  perf symbols: Make symbol_conf global\n  perf probe: Fix to show which probe point is not found\n  perf probe: Check symbols in symtab/kallsyms\n  perf probe: Check build-id of vmlinux\n  perf probe: Reject second attempt of adding same-name event\n  perf probe: Support event name for --add option\n  perf probe: Add glob matching support on --del\n  perf probe: Use strlist__for_each macros in probe-event.c\n  ...\n"
    },
    {
      "commit": "da184a8064efe2a78d8542877970f7c6bb62775a",
      "tree": "d10193bb583f60333e243fe46386cab31f591e0c",
      "parents": [
        "525995d77ca08dfc2ba6f8e606f93694271dbd66",
        "e36c54582c6f14adc9e10473e2aec2cc4f0acc03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix return of trace_dump_stack()\n  ksym_tracer: Fix bad cast\n  tracing/power: Remove two exports\n  tracing: Change event-\u003eprofile_count to be int type\n  tracing: Simplify trace_option_write()\n  tracing: Remove useless trace option\n  tracing: Use seq file for trace_clock\n  tracing: Use seq file for trace_options\n  function-graph: Allow writing the same val to set_graph_function\n  ftrace: Call trace_parser_clear() properly\n  ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n  tracing: Move a printk out of ftrace_raw_reg_event_foo()\n  tracing: Pull up calls to trace_define_common_fields()\n  tracing: Extract duplicate ftrace_raw_init_event_foo()\n  ftrace.h: Use common pr_info fmt string\n  tracing: Add stack trace to irqsoff tracer\n  tracing: Add trace_dump_stack()\n  ring-buffer: Move resize integrity check under reader lock\n  ring-buffer: Use sync sched protection on ring buffer resizing\n  tracing: Fix wrong usage of strstrip in trace_ksyms\n"
    },
    {
      "commit": "74f3ae743427b87e43b5cb9f4257021ae8ad4267",
      "tree": "378975998960af61558304c97999f3bf62c8ba12",
      "parents": [
        "d8bef0bb219154e655fa139e28400d6ae9aa3727",
        "8d99513c1b76cfd0b2dcf061c5136cb1061e6b37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "message": "Merge branch \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  modpost: fix segfault with short symbol names\n  module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE\u003dy\n  Kbuild: clear marker out of modpost\n  module: make MODULE_SYMBOL_PREFIX into a CONFIG option\n  ARM: unexport symbols used to implement floating point emulation\n  ARM: use unified discard definition in linker script\n  x86: don\u0027t export inline function\n  sparc64: don\u0027t export static inline pci_ functions\n"
    },
    {
      "commit": "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
      "tree": "e3bdfa4ec0d3f9a29a822810b8b9188c7d613cbd",
      "parents": [
        "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
        "2e16cfca6e17ae37ae21feca080a6f2eca9087dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (90 commits)\n  jffs2: Fix long-standing bug with symlink garbage collection.\n  mtd: OneNAND: Fix test of unsigned in onenand_otp_walk()\n  mtd: cfi_cmdset_0002, fix lock imbalance\n  Revert \"mtd: move mxcnd_remove to .exit.text\"\n  mtd: m25p80: add support for Macronix MX25L4005A\n  kmsg_dump: fix build for CONFIG_PRINTK\u003dn\n  mtd: nandsim: add support for 4KiB pages\n  mtd: mtdoops: refactor as a kmsg_dumper\n  mtd: mtdoops: make record size configurable\n  mtd: mtdoops: limit the maximum mtd partition size\n  mtd: mtdoops: keep track of used/unused pages in an array\n  mtd: mtdoops: several minor cleanups\n  core: Add kernel message dumper to call on oopses and panics\n  mtd: add ARM pismo support\n  mtd: pxa3xx_nand: Fix PIO data transfer\n  mtd: nand: fix multi-chip suspend problem\n  mtd: add support for switching old SST chips into QRY mode\n  mtd: fix M29W800D dev_id and uaddr\n  mtd: don\u0027t use PF_MEMALLOC\n  mtd: Add bad block table overrides to Davinci NAND driver\n  ...\n\nFixed up conflicts (mostly trivial) in\n\tdrivers/mtd/devices/m25p80.c\n\tdrivers/mtd/maps/pcmciamtd.c\n\tdrivers/mtd/nand/pxa3xx_nand.c\n\tkernel/printk.c\n"
    },
    {
      "commit": "738d2be4301007f054541c5c4bf7fb6a361c9b3a",
      "tree": "6d37c04fa3b35d5fe820ab2df1088ba596fefe38",
      "parents": [
        "88ec22d3edb72b261f8628226cd543589a6d5e1b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:42 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:59 2009 +0100"
      },
      "message": "sched: Simplify set_task_cpu()\n\nRearrange code a bit now that its a simpler function.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.269101883@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88ec22d3edb72b261f8628226cd543589a6d5e1b",
      "tree": "ca547c82ab6adce0b9e29afb6ceddf50cd417d44",
      "parents": [
        "efbbd05a595343a413964ad85a2ad359b7b7efbd"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:58 2009 +0100"
      },
      "message": "sched: Remove the cfs_rq dependency from set_task_cpu()\n\nIn order to remove the cfs_rq dependency from set_task_cpu() we\nneed to ensure the task is cfs_rq invariant for all callsites.\n\nThe simple approach is to substract cfs_rq-\u003emin_vruntime from\nse-\u003evruntime on dequeue, and add cfs_rq-\u003emin_vruntime on\nenqueue.\n\nHowever, this has the downside of breaking FAIR_SLEEPERS since\nwe loose the old vruntime as we only maintain the relative\nposition.\n\nTo solve this, we observe that we only migrate runnable tasks,\nwe do this using deactivate_task(.sleep\u003d0) and\nactivate_task(.wakeup\u003d0), therefore we can restrain the\nmin_vruntime invariance to that state.\n\nThe only other case is wakeup balancing, since we want to\nmaintain the old vruntime we cannot make it relative on dequeue,\nbut since we don\u0027t migrate inactive tasks, we can do so right\nbefore we activate it again.\n\nThis is where we need the new pre-wakeup hook, we need to call\nthis while still holding the old rq-\u003elock. We could fold it into\n-\u003eselect_task_rq(), but since that has multiple callsites and\nwould obfuscate the locking requirements, that seems like a\nfudge.\n\nThis leaves the fork() case, simply make sure that -\u003etask_fork()\nleaves the -\u003evruntime in a relative state.\n\nThis covers all cases where set_task_cpu() gets called, and\nensures it sees a relative vruntime.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.191697025@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "efbbd05a595343a413964ad85a2ad359b7b7efbd",
      "tree": "c1bf0d86134187e127a00067b50b0684c2988860",
      "parents": [
        "881232b70b195768a71cd74ff4b4e8ab9502997b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:58 2009 +0100"
      },
      "message": "sched: Add pre and post wakeup hooks\n\nAs will be apparent in the next patch, we need a pre wakeup hook\nfor sched_fair task migration, hence rename the post wakeup hook\nand one pre wakeup.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.114746117@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "881232b70b195768a71cd74ff4b4e8ab9502997b",
      "tree": "aeafe0a28a7163af445e4f603ab1075c3608c375",
      "parents": [
        "5da9a0fb673a0ea0a093862f95f6b89b3390c31e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:57 2009 +0100"
      },
      "message": "sched: Move kthread_bind() back to kthread.c\n\nSince kthread_bind() lost its dependencies on sched.c, move it\nback where it came from.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.039524041@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5da9a0fb673a0ea0a093862f95f6b89b3390c31e",
      "tree": "fa4465d5ce050cdc42e63a2518ce2e1b58fa9c30",
      "parents": [
        "3802290628348674985d14914f9bfee7b9084548"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:57 2009 +0100"
      },
      "message": "sched: Fix select_task_rq() vs hotplug issues\n\nSince select_task_rq() is now responsible for guaranteeing\n-\u003ecpus_allowed and cpu_active_mask, we need to verify this.\n\nselect_task_rq_rt() can blindly return\nsmp_processor_id()/task_cpu() without checking the valid masks,\nselect_task_rq_fair() can do the same in the rare case that all\nSD_flags are disabled.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.961475466@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3802290628348674985d14914f9bfee7b9084548",
      "tree": "b6b513fa5651f570013f3eff86e843a9d52d1dcb",
      "parents": [
        "e2912009fb7b715728311b0d8fe327a1432b3f79"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:56 2009 +0100"
      },
      "message": "sched: Fix sched_exec() balancing\n\nSince we access -\u003ecpus_allowed without holding rq-\u003elock we need\na retry loop to validate the result, this comes for near free\nwhen we merge sched_migrate_task() into sched_exec() since that\nalready does the needed check.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.884743662@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e2912009fb7b715728311b0d8fe327a1432b3f79",
      "tree": "9918e2f9690d85b7d7f5550d09f0ae6cc3fa4e0f",
      "parents": [
        "06b83b5fbea273672822b6ee93e16781046553ec"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:56 2009 +0100"
      },
      "message": "sched: Ensure set_task_cpu() is never called on blocked tasks\n\nIn order to clean up the set_task_cpu() rq dependencies we need\nto ensure it is never called on blocked tasks because such usage\ndoes not pair with consistent rq-\u003elock usage.\n\nThis puts the migration burden on ttwu().\n\nFurthermore we need to close a race against changing\n-\u003ecpus_allowed, since select_task_rq() runs with only preemption\ndisabled.\n\nFor sched_fork() this is safe because the child isn\u0027t in the\ntasklist yet, for wakeup we fix this by synchronizing\nset_cpus_allowed_ptr() against TASK_WAKING, which leaves\nsched_exec to be a problem\n\nThis also closes a hole in (6ad4c1888 sched: Fix balance vs\nhotplug race) where -\u003eselect_task_rq() doesn\u0027t validate the\nresult against the sched_domain/root_domain.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.807938893@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "06b83b5fbea273672822b6ee93e16781046553ec",
      "tree": "cd287173f5aacdf69289fe62f397a957c9f678fe",
      "parents": [
        "e4f4288842ee12747e10c354d72be7d424c0b627"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:55 2009 +0100"
      },
      "message": "sched: Use TASK_WAKING for fork wakups\n\nFor later convenience use TASK_WAKING for fresh tasks.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.732561278@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4f4288842ee12747e10c354d72be7d424c0b627",
      "tree": "e9b066cc886e4b28db60b2626b682986f34a3bda",
      "parents": [
        "e6c8fba7771563b2f3dfb96a78f36ec17e15bdf0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:55 2009 +0100"
      },
      "message": "sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE\n\nWe should skip !SD_LOAD_BALANCE domains.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.653578430@chello.nl\u003e\nCC: stable@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6c8fba7771563b2f3dfb96a78f36ec17e15bdf0",
      "tree": "232d6ea7b028d3a98ea5eaa9ceffb21aff19db35",
      "parents": [
        "9ee349ad6d326df3633d43f54202427295999c47"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:54 2009 +0100"
      },
      "message": "sched: Fix task_hot() test order\n\nMake sure not to access sched_fair fields before verifying it is\nindeed a sched_fair task.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCC: stable@kernel.org\nLKML-Reference: \u003c20091216170517.577998058@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ee349ad6d326df3633d43f54202427295999c47",
      "tree": "06f4795cb1b3f493b2421b65af0fd870875c8168",
      "parents": [
        "933b0618d8b2a59c7a0742e43836544e02f1e9bd"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Wed Dec 16 18:04:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:53 2009 +0100"
      },
      "message": "sched: Fix set_cpu_active() in cpu_down()\n\nSachin found cpu hotplug test failures on powerpc, which made\nthe kernel hang on his POWER box.\n\nThe problem is that we fail to re-activate a cpu when a\nhot-unplug fails. Fix this by moving the de-activation into\n_cpu_down after doing the initial checks.\n\nRemove the synchronize_sched() calls and rely on those implied\nby rebuilding the sched domains using the new mask.\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.500272612@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee1156c11a1121e118b0a7f2dec240f0d421b1fd",
      "tree": "b8771cc5a9758af9d7410fc519227c036c222130",
      "parents": [
        "b9f8fcd55bbdb037e5332dbdb7b494f0b70861ac",
        "8bea8672edfca7ec5f661cafb218f1205863b343"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:33:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:33:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/urgent\n\nConflicts:\n\tkernel/sched_idletask.c\n\nMerge reason: resolve the conflicts, pick up latest changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4c4176f21533e22bcc292030da72bcfa105f5b8",
      "tree": "9e4376f5ff4dc3fb0f333faca94f219570df9af8",
      "parents": [
        "9b33827de63539c7c3314ddf890fb216e4acf3d8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 17:55:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:30:11 2009 +0100"
      },
      "message": "perf events: Allow per-task-per-cpu counters\n\nIn order to allow for per-task-per-cpu counters, useful for\nscalability when profiling task hierarchies, we allow installing\nevents with event-\u003ecpu !\u003d -1 in task contexts.\n\n__perf_event_sched_in() already skips events where -\u003ecpu\nmis-matches the current cpu, fix up __perf_install_in_context()\nand __perf_event_enable() to also respect this filter.\n\nThis does lead to vary hard to interpret enabled/running times\nfor such counters, but I don\u0027t see a simple solution for that.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091216165904.831451147@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "06a7f711246b081afc21fff859f1003f1f2a0fbc",
      "tree": "aece49693ad751923ce71387201d3c3e6214e335",
      "parents": [
        "1f2c19f8c959c1d0ccd3e33b1f480593b66d95dd"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "kexec: premit reduction of the reserved memory size\n\nImplement shrinking the reserved memory for crash kernel, if it is more\nthan enough.\n\nFor example, if you have already reserved 128M, now you just want 100M,\nyou can do:\n\n# echo $((100*1024*1024)) \u003e /sys/kernel/kexec_crash_size\n\nNote, you can only do this before loading the crash kernel.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "417e315247ebc199d357855bb08d2a5264400565",
      "tree": "84383762d1abaebaa00928bbfc23851742d9cf9b",
      "parents": [
        "7be6d991bca63bbcdc5bc3b09789f367a3486537"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: reduce code size by using a pointer to iterate over array\n\nIt decreases code size by 16 bytes on my gcc 4.4.1 on Core 2:\n  text    data     bss     dec     hex filename\n  4314    2216       8    6538    198a kernel/pid.o-BEFORE\n  4298    2216       8    6522    197a kernel/pid.o-AFTER\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@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": "7be6d991bca63bbcdc5bc3b09789f367a3486537",
      "tree": "79168c345c424ce7b80bfba382c9dc469bdcc70a",
      "parents": [
        "698ba7b5a3a7be772922340fade365c675b8243f"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: tighten pidmap spinlock critical section by removing kfree()\n\nAvoid calling kfree() under pidmap spinlock, calling it afterwards.\n\nNormally kfree() is fast, but sometimes it can be slow, so avoid\ncalling it under the spinlock if we can do it.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@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": "1be53963b0519bd3681749a9bed8b83aeb005cca",
      "tree": "0bc6497a8039021f781f1c902f59e6f71f772793",
      "parents": [
        "ad09750b51150ca87531b8790a379214a974c167"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: check -\u003egroup_stop_count after tracehook_get_signal()\n\nMove the call to do_signal_stop() down, after tracehook call.  This makes\n-\u003egroup_stop_count condition visible to tracers before do_signal_stop()\nwill participate in this group-stop.\n\nCurrently the patch has no effect, tracehook_get_signal() always returns 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@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": "ad09750b51150ca87531b8790a379214a974c167",
      "tree": "785520da252e18a058642c7bc95dda35100e4565",
      "parents": [
        "7486e5d9fc773cb67c29381567bed5236fc9573c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: kill force_sig_specific()\n\nKill force_sig_specific(), this trivial wrapper has no callers.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7486e5d9fc773cb67c29381567bed5236fc9573c",
      "tree": "848f10295391c27ca16c8c58812f5e7a81856280",
      "parents": [
        "dd34200adc01c5217ef09b55905b5c2312d65535"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: cosmetic, collect_signal: use SI_USER\n\nTrivial, s/0/SI_USER/ in collect_signal() for grep.\n\nThis is a bit confusing, we don\u0027t know the source of this signal.\nBut we don\u0027t care, and \"info-\u003esi_code \u003d 0\" is imho worse.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dd34200adc01c5217ef09b55905b5c2312d65535",
      "tree": "7173ed6b5531086923a9221ef502f1dd2793c8a4",
      "parents": [
        "614c517d7c00af1b26ded20646b329397d6f51a1"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: send_signal: use si_fromuser() to detect from_ancestor_ns\n\nChange send_signal() to use si_fromuser().  From now SEND_SIG_NOINFO\ntriggers the \"from_ancestor_ns\" check.\n\nThis fixes reparent_thread()-\u003egroup_send_sig_info(pdeath_signal)\nbehaviour, before this patch send_signal() does not detect the\ncross-namespace case when the child of the dying parent belongs to the\nsub-namespace.\n\nThis patch can affect the behaviour of send_sig(), kill_pgrp() and\nkill_pid() when the caller sends the signal to the sub-namespace with\n\"priv \u003d\u003d 0\" but surprisingly all callers seem to use them correctly,\nincluding disassociate_ctty(on_exit).\n\nExcept: drivers/staging/comedi/drivers/addi-data/*.c incorrectly use\nsend_sig(priv \u003d\u003e 0).  But his is minor and should be fixed anyway.\n\nReported-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "614c517d7c00af1b26ded20646b329397d6f51a1",
      "tree": "ddd7a82b3479c9fabe141b4c82a1794650a82b4f",
      "parents": [
        "d51965037325e51f6cd68583413243c3573e47b0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "signals: SEND_SIG_NOINFO should be considered as SI_FROMUSER()\n\nNo changes in compiled code. The patch adds the new helper, si_fromuser()\nand changes check_kill_permission() to use this helper.\n\nThe real effect of this patch is that from now we \"officially\" consider\nSEND_SIG_NOINFO signal as \"from user-space\" signals. This is already true\nif we look at the code which uses SEND_SIG_NOINFO, except __send_signal()\nhas another opinion - see the next patch.\n\nThe naming of these special SEND_SIG_XXX siginfo\u0027s is really bad\nimho.  From __send_signal()\u0027s pov they mean\n\n\tSEND_SIG_NOINFO\t\tfrom user\n\tSEND_SIG_PRIV\t\tfrom kernel\n\tSEND_SIG_FORCED\t\tno info\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6580807da14c423f0d0a708108e6df6ebc8bc83d",
      "tree": "553e2de8f2174f9bbb6ab9a2454b1306bb5eb4fa",
      "parents": [
        "c6a47cc2ccf9649ee09eeddd70a6d061bde69568"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: copy_process() should disable stepping\n\nIf the tracee calls fork() after PTRACE_SINGLESTEP, the forked child\nstarts with TIF_SINGLESTEP/X86_EFLAGS_TF bits copied from ptraced parent.\nThis is not right, especially when the new child is not auto-attaced: in\nthis case it is killed by SIGTRAP.\n\nChange copy_process() to call user_disable_single_step(). Tested on x86.\n\nTest-case:\n\n\t#include \u003cstdio.h\u003e\n\t#include \u003cunistd.h\u003e\n\t#include \u003csignal.h\u003e\n\t#include \u003csys/ptrace.h\u003e\n\t#include \u003csys/wait.h\u003e\n\t#include \u003cassert.h\u003e\n\n\tint main(void)\n\t{\n\t\tint pid, status;\n\n\t\tif (!(pid \u003d fork())) {\n\t\t\tassert(ptrace(PTRACE_TRACEME) \u003d\u003d 0);\n\t\t\tkill(getpid(), SIGSTOP);\n\n\t\t\tif (!fork()) {\n\t\t\t\t/* kernel bug: this child will be killed by SIGTRAP */\n\t\t\t\tprintf(\"Hello world\\n\");\n\t\t\t\treturn 43;\n\t\t\t}\n\n\t\t\twait(\u0026status);\n\t\t\treturn WEXITSTATUS(status);\n\t\t}\n\n\t\tfor (;;) {\n\t\t\tassert(pid \u003d\u003d wait(\u0026status));\n\t\t\tif (WIFEXITED(status))\n\t\t\t\tbreak;\n\t\t\tassert(ptrace(PTRACE_SINGLESTEP, pid, 0,0) \u003d\u003d 0);\n\t\t}\n\n\t\tassert(WEXITSTATUS(status) \u003d\u003d 43);\n\t\treturn 0;\n\t}\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@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": "569b846df54ffb2827b83ce3244c5f032394cba4",
      "tree": "77c5d373a5edf97710fab8777912971b99e84828",
      "parents": [
        "cd9b45b78a61e8df250e69385c74e729e5b66abf"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Dec 15 16:47:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:07 2009 -0800"
      },
      "message": "memcg: coalesce uncharge during unmap/truncate\n\nIn massive parallel enviroment, res_counter can be a performance\nbottleneck.  One strong techinque to reduce lock contention is reducing\ncalls by coalescing some amount of calls into one.\n\nConsidering charge/uncharge chatacteristic,\n\t- charge is done one by one via demand-paging.\n\t- uncharge is done by\n\t\t- in chunk at munmap, truncate, exit, execve...\n\t\t- one by one via vmscan/paging.\n\nIt seems we have a chance to coalesce uncharges for improving scalability\nat unmap/truncation.\n\nThis patch is a for coalescing uncharge.  For avoiding scattering memcg\u0027s\nstructure to functions under /mm, this patch adds memcg batch uncharge\ninformation to the task.  A reason for per-task batching is for making use\nof caller\u0027s context information.  We do batched uncharge (deleyed\nuncharge) when truncation/unmap occurs but do direct uncharge when\nuncharge is called by memory reclaim (vmscan.c).\n\nThe degree of coalescing depends on callers\n  - at invalidate/trucate... pagevec size\n  - at unmap ....ZAP_BLOCK_SIZE\n(memory itself will be freed in this degree.)\nThen, we\u0027ll not coalescing too much.\n\nOn x86-64 8cpu server, I tested overheads of memcg at page fault by\nrunning a program which does map/fault/unmap in a loop. Running\na task per a cpu by taskset and see sum of the number of page faults\nin 60secs.\n\n[without memcg config]\n  40156968  page-faults              #      0.085 M/sec   ( +-   0.046% )\n  27.67 cache-miss/faults\n[root cgroup]\n  36659599  page-faults              #      0.077 M/sec   ( +-   0.247% )\n  31.58 miss/faults\n[in a child cgroup]\n  18444157  page-faults              #      0.039 M/sec   ( +-   0.133% )\n  69.96 miss/faults\n[child with this patch]\n  27133719  page-faults              #      0.057 M/sec   ( +-   0.155% )\n  47.16 miss/faults\n\nWe can see some amounts of improvement.\n(root cgroup doesn\u0027t affected by this patch)\nAnother patch for \"charge\" will follow this and above will be improved more.\n\nChangelog(since 2009/10/02):\n - renamed filed of memcg_batch (as pages to bytes, memsw to memsw_bytes)\n - some clean up and commentary/description updates.\n - added initialize code to copy_process(). (possible bug fix)\n\nChangelog(old):\n - fixed !CONFIG_MEM_CGROUP case.\n - rebased onto the latest mmotm + softlimit fix patches.\n - unified patch for callers\n - added commetns.\n - make -\u003edo_batch as bool.\n - removed css_get() at el. We don\u0027t need it.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28dfef8febe48f59cf1e7596e1992a6a1893ca24",
      "tree": "eb2df6dd75e72db066062950f91c9ab2e8215280",
      "parents": [
        "5116fa2b3a0a3ec625a10445ae45667f094c125b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Dec 15 16:46:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:05 2009 -0800"
      },
      "message": "const: constify remaining pipe_buf_operations\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "f065f41f48569122b5bcddbd1ba2354f7cc29fdc",
      "tree": "68606305bfb3aba16437017e0596ccae11e6f6db",
      "parents": [
        "4365a5676fa3aa1d5ae6c90c22a0044f09ba584e"
      ],
      "author": {
        "name": "Barry Song",
        "email": "21cnbao@gmail.com",
        "time": "Tue Dec 15 16:45:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:19:57 2009 -0800"
      },
      "message": "timecompare: fix half-Y2K38 problem in timecompare_update while calculating offset\n\nktime will overflow from 03:14:07 UTC on Tuesday, 19 January 2038,\nktime_add() in timecompare_update() will overflow a half earlier.  As a\nresult, wrong offset will be gotten, then cause some strange problems.\n\nSigned-off-by: Barry Song \u003c21cnbao@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Patrick Ohly \u003cpatrick.ohly@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f13c12c634e124d5d31f912b969d542a016d6105",
      "tree": "bbb5796189ba8c2755cc14880c2216862c2fc540",
      "parents": [
        "cdccc69003388665e1463003f0488cf8ce9cf9e8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Dec 15 19:43:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 20:12:20 2009 +0100"
      },
      "message": "perf_events: Fix perf_event_attr layout\n\nThe miss-alignment of bp_addr created a 32bit hole, causing\ndifferent structure packings on 32 and 64 bit machines.\n\nFix that by moving __reserve_2 into that hole.\n\nFurther, remove the useless struct and redundant __bp_reserve\nmuck.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c1260902591.8023.781.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8f0ddf91f2aeb09602373e400cf8b403e9017210",
      "tree": "b907c35c79caadafff6ad46a91614e30afd2f967",
      "parents": [
        "050cbb09dac0402672edeaeac06094ef8ff1749a",
        "b5f91da0a6973bb6f9ff3b91b0e92c0773a458f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 09:02:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 09:02:01 2009 -0800"
      },
      "message": "Merge branch \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (26 commits)\n  clockevents: Convert to raw_spinlock\n  clockevents: Make tick_device_lock static\n  debugobjects: Convert to raw_spinlocks\n  perf_event: Convert to raw_spinlock\n  hrtimers: Convert to raw_spinlocks\n  genirq: Convert irq_desc.lock to raw_spinlock\n  smp: Convert smplocks to raw_spinlocks\n  rtmutes: Convert rtmutex.lock to raw_spinlock\n  sched: Convert pi_lock to raw_spinlock\n  sched: Convert cpupri lock to raw_spinlock\n  sched: Convert rt_runtime_lock to raw_spinlock\n  sched: Convert rq-\u003elock to raw_spinlock\n  plist: Make plist debugging raw_spinlock aware\n  bkl: Fixup core_lock fallout\n  locking: Cleanup the name space completely\n  locking: Further name space cleanups\n  alpha: Fix fallout from locking changes\n  locking: Implement new raw_spinlock\n  locking: Convert raw_rwlock functions to arch_rwlock\n  locking: Convert raw_rwlock to arch_rwlock\n  ...\n"
    },
    {
      "commit": "e7d2860b690d4f3bed6824757c540579638e3d1e",
      "tree": "84268ee28893256fd6a6a7e1d4474f61dbee74e7",
      "parents": [
        "84c95c9acf088c99d8793d78036b67faa5d0b851"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Mon Dec 14 18:01:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:32 2009 -0800"
      },
      "message": "tree-wide: convert open calls to remove spaces to skip_spaces() lib function\n\nMakes use of skip_spaces() defined in lib/string.c for removing leading\nspaces from strings all over the tree.\n\nIt decreases lib.a code size by 47 bytes and reuses the function tree-wide:\n   text    data     bss     dec     hex filename\n  64688     584     592   65864   10148 (TOTALS-BEFORE)\n  64641     584     592   65817   10119 (TOTALS-AFTER)\n\nAlso, while at it, if we see (*str \u0026\u0026 isspace(*str)), we can be sure to\nremove the first condition (*str) as the second one (isspace(*str)) also\nevaluates to 0 whenever *str \u003d\u003d 0, making it redundant. In other words,\n\"a char equals zero is never a space\".\n\nJulia Lawall tried the semantic patch (http://coccinelle.lip6.fr) below,\nand found occurrences of this pattern on 3 more files:\n    drivers/leds/led-class.c\n    drivers/leds/ledtrig-timer.c\n    drivers/video/output.c\n\n@@\nexpression str;\n@@\n\n( // ignore skip_spaces cases\nwhile (*str \u0026\u0026  isspace(*str)) { \\(str++;\\|++str;\\) }\n|\n- *str \u0026\u0026\nisspace(*str)\n)\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Samuel Ortiz \u003csamuel@sortiz.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ada918b82399eef3afd6a71e3637697d6bd719f",
      "tree": "9bff5251d9d21960726078c2117a0ab19ca25956",
      "parents": [
        "c95d1e53ed89b75a4d7b68d1cbae4607b1479243"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bernhard@bwalle.de",
        "time": "Mon Dec 14 18:00:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:28 2009 -0800"
      },
      "message": "vt: introduce and use vt_kmsg_redirect() function\n\nThe kernel offers with TIOCL_GETKMSGREDIRECT ioctl() the possibility to\nredirect the kernel messages to a specific console.\n\nHowever, since it\u0027s not possible to switch to the kernel message console\nafter a panic(), it would be nice if the kernel would print the panic\nmessage on the current console.\n\nThis patch series adds a new interface to access the global kmsg_redirect\nvariable by a function to be able to use it in code where\nCONFIG_VT_CONSOLE is not set (kernel/panic.c).\n\nThis patch:\n\nInstead of using and exporting a global value kmsg_redirect, introduce a\nfunction vt_kmsg_redirect() that both can set and return the console where\nmessages are printed.\n\nChange all users of kmsg_redirect (the VT code itself and kernel/power.c)\nto the new interface.\n\nThe main advantage is that vt_kmsg_redirect() can also be used when\nCONFIG_VT_CONSOLE is not set.\n\nSigned-off-by: Bernhard Walle \u003cbernhard@bwalle.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\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": "dfc6a736d452a8c308190b618b065c2257d370ff",
      "tree": "129800fa31f88a5f6d520a2c0d0a64273488a3fa",
      "parents": [
        "948c1e2521979c332b21b623414cf258150f214e"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Mon Dec 14 18:00:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:26 2009 -0800"
      },
      "message": "kernel/sys.c: fix \"warning: do-while statement is not a compound statement\" noise\n\ndo_each_thread/while_each_thread wrap a block of code that is in this format:\n\n\tfor (...)\n\t\tdo\n\t\t\t...\n\t\twhile\n\nIf curly braces do not surround the inner loop the following warning is\ngenerated by sparse:\n\n\twarning: do-while statement is not a compound statement\n\nFix the warning by adding the braces.\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0f68c2fab4898bcc4671a8fb941f428856b4ad5",
      "tree": "87cc5addf461b699b3b9c9d1931f77acf947051d",
      "parents": [
        "4eb174bee6f8623fed1af0072f1bebfc3b513a52"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Dec 14 18:00:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:25 2009 -0800"
      },
      "message": "generic-ipi: cleanup for generic_smp_call_function_interrupt()\n\nUse smp_processor_id() instead of get_cpu() and put_cpu() in\ngeneric_smp_call_function_interrupt(), It\u0027s no need to disable preempt,\nbecause we must call generic_smp_call_function_interrupt() with interrupts\ndisabled.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.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": "70da2340fbc68e91e701762f785479ab495a0869",
      "tree": "f55055a8fa8cb8e00b72ae8f3629dc884515f5e9",
      "parents": [
        "f096e59e844ba3c5d5a7b54b3deafd2aeeebf921"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Dec 14 17:59:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:23 2009 -0800"
      },
      "message": "\u0027sysctl_max_map_count\u0027 should be non-negative\n\nJan Engelhardt reported we have this problem:\n\nsetting max_map_count to a value large enough results in programs dying at\nfirst try.  This is on 2.6.31.6:\n\n15:59 borg:/proc/sys/vm # echo $[1\u003c\u003c31-1] \u003emax_map_count\n15:59 borg:/proc/sys/vm # cat max_map_count\n1073741824\n15:59 borg:/proc/sys/vm # echo $[1\u003c\u003c31] \u003emax_map_count\n15:59 borg:/proc/sys/vm # cat max_map_count\nKilled\n\nThis is because we have a chance to make \u0027max_map_count\u0027 negative.  but\nit\u0027s meaningless.  Make it only accept non-negative values.\n\nReported-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@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": "06808b0827e1cd14eedc96bac2655d5b37ac246c",
      "tree": "8f7b52a4af1532ed414631f68b99a059e299d83f",
      "parents": [
        "c1e6c8d074ea3621106548654cc244d2edc12ead"
      ],
      "author": {
        "name": "Lee Schermerhorn",
        "email": "lee.schermerhorn@hp.com",
        "time": "Mon Dec 14 17:58:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:12 2009 -0800"
      },
      "message": "hugetlb: derive huge pages nodes allowed from task mempolicy\n\nThis patch derives a \"nodes_allowed\" node mask from the numa mempolicy of\nthe task modifying the number of persistent huge pages to control the\nallocation, freeing and adjusting of surplus huge pages when the pool page\ncount is modified via the new sysctl or sysfs attribute\n\"nr_hugepages_mempolicy\".  The nodes_allowed mask is derived as follows:\n\n* For \"default\" [NULL] task mempolicy, a NULL nodemask_t pointer\n  is produced.  This will cause the hugetlb subsystem to use\n  node_online_map as the \"nodes_allowed\".  This preserves the\n  behavior before this patch.\n* For \"preferred\" mempolicy, including explicit local allocation,\n  a nodemask with the single preferred node will be produced.\n  \"local\" policy will NOT track any internode migrations of the\n  task adjusting nr_hugepages.\n* For \"bind\" and \"interleave\" policy, the mempolicy\u0027s nodemask\n  will be used.\n* Other than to inform the construction of the nodes_allowed node\n  mask, the actual mempolicy mode is ignored.  That is, all modes\n  behave like interleave over the resulting nodes_allowed mask\n  with no \"fallback\".\n\nSee the updated documentation [next patch] for more information\nabout the implications of this patch.\n\nExamples:\n\nStarting with:\n\n\tNode 0 HugePages_Total:     0\n\tNode 1 HugePages_Total:     0\n\tNode 2 HugePages_Total:     0\n\tNode 3 HugePages_Total:     0\n\nDefault behavior [with or without this patch] balances persistent\nhugepage allocation across nodes [with sufficient contiguous memory]:\n\n\tsysctl vm.nr_hugepages[_mempolicy]\u003d32\n\nyields:\n\n\tNode 0 HugePages_Total:     8\n\tNode 1 HugePages_Total:     8\n\tNode 2 HugePages_Total:     8\n\tNode 3 HugePages_Total:     8\n\nOf course, we only have nr_hugepages_mempolicy with the patch,\nbut with default mempolicy, nr_hugepages_mempolicy behaves the\nsame as nr_hugepages.\n\nApplying mempolicy--e.g., with numactl [using \u0027-m\u0027 a.k.a.\n\u0027--membind\u0027 because it allows multiple nodes to be specified\nand it\u0027s easy to type]--we can allocate huge pages on\nindividual nodes or sets of nodes.  So, starting from the\ncondition above, with 8 huge pages per node, add 8 more to\nnode 2 using:\n\n\tnumactl -m 2 sysctl vm.nr_hugepages_mempolicy\u003d40\n\nThis yields:\n\n\tNode 0 HugePages_Total:     8\n\tNode 1 HugePages_Total:     8\n\tNode 2 HugePages_Total:    16\n\tNode 3 HugePages_Total:     8\n\nThe incremental 8 huge pages were restricted to node 2 by the\nspecified mempolicy.\n\nSimilarly, we can use mempolicy to free persistent huge pages\nfrom specified nodes:\n\n\tnumactl -m 0,1 sysctl vm.nr_hugepages_mempolicy\u003d32\n\nyields:\n\n\tNode 0 HugePages_Total:     4\n\tNode 1 HugePages_Total:     4\n\tNode 2 HugePages_Total:    16\n\tNode 3 HugePages_Total:     8\n\nThe 8 huge pages freed were balanced over nodes 0 and 1.\n\n[rientjes@google.com: accomodate reworked NODEMASK_ALLOC]\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Eric Whitney \u003ceric.whitney@hp.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b731d50ff3df6b9141a6c12b088e8eb0109e83c",
      "tree": "4c0c5c744383a4f426be6b9a8fb73528379eabdd",
      "parents": [
        "5443040754207f9777f71c892c66e45ba56b0fc1"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Dec 14 17:57:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:10 2009 -0800"
      },
      "message": "bsdacct: fix uid/gid misreporting\n\ncommit d8e180dcd5bbbab9cd3ff2e779efcf70692ef541 \"bsdacct: switch\ncredentials for writing to the accounting file\" introduced credential\nswitching during final acct data collecting.  However, uid/gid pair\ncontinued to be collected from current which became credentials of who\ncreated acct file, not who exits.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d14676\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nReported-by: Juho K. Juopperi \u003cjkj@kapsi.fi\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nReviewed-by: Michal Schmidt \u003cmschmidt@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: \u003cstable@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": "0f624e7e5625f4c30c836b7a5decfe2553582391",
      "tree": "6de6f9fbb15db70007238c923efb48dcde194c20",
      "parents": [
        "a6005123ce22770dbd91bc3cb637ce0807ab959b"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Dec 15 19:40:32 2009 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 13:09:55 2009 +0100"
      },
      "message": "perf_event: Fix incorrect range check on cpu number\n\nIt is quite legitimate for CPUs to be numbered sparsely, meaning\nthat it possible for an online CPU to have a number which is\ngreater than the total count of possible CPUs.\n\nCurrently find_get_context() has a sanity check on the cpu\nnumber where it checks it against num_possible_cpus().  This\ntest can fail for a legitimate cpu number if the\ncpu_possible_mask is sparsely populated.\n\nThis fixes the problem by checking the CPU number against\nnr_cpumask_bits instead, since that is the appropriate check to\nensure that the cpu number is same to pass to cpu_isset()\nsubsequently.\n\nReported-by: Michael Neuling \u003cmikey@neuling.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nTested-by: Michael Neuling \u003cmikey@neuling.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c20091215084032.GA18661@brick.ozlabs.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b9f8fcd55bbdb037e5332dbdb7b494f0b70861ac",
      "tree": "71b2f8a175269e03e39a5976dc9d24f82b52ec91",
      "parents": [
        "1a551ae715825bb2a2107a2dd68de024a1fa4e32"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 13 18:25:02 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 09:04:36 2009 +0100"
      },
      "message": "sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nRelax stable-sched-clock architectures to not save/disable/restore\nhardirqs in cpu_clock().\n\nThe background is that I was trying to resolve a sparc64 perf\nissue when I discovered this problem.\n\nOn sparc64 I implement pseudo NMIs by simply running the kernel\nat IRQ level 14 when local_irq_disable() is called, this allows\nperformance counter events to still come in at IRQ level 15.\n\nThis doesn\u0027t work if any code in an NMI handler does\nlocal_irq_save() or local_irq_disable() since the \"disable\" will\nkick us back to cpu IRQ level 14 thus letting NMIs back in and\nwe recurse.\n\nThe only path which that does that in the perf event IRQ\nhandling path is the code supporting frequency based events.  It\nuses cpu_clock().\n\ncpu_clock() simply invokes sched_clock() with IRQs disabled.\n\nAnd that\u0027s a fundamental bug all on it\u0027s own, particularly for\nthe HAVE_UNSTABLE_SCHED_CLOCK case.  NMIs can thus get into the\nsched_clock() code interrupting the local IRQ disable code\nsections of it.\n\nFurthermore, for the not-HAVE_UNSTABLE_SCHED_CLOCK case, the IRQ\ndisabling done by cpu_clock() is just pure overhead and\ncompletely unnecessary.\n\nSo the core problem is that sched_clock() is not NMI safe, but\nwe are invoking it from NMI contexts in the perf events code\n(via cpu_clock()).\n\nA less important issue is the overhead of IRQ disabling when it\nisn\u0027t necessary in cpu_clock().\n\nCONFIG_HAVE_UNSTABLE_SCHED_CLOCK architectures are not\naffected by this patch.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091213.182502.215092085.davem@davemloft.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e36c54582c6f14adc9e10473e2aec2cc4f0acc03",
      "tree": "057c54ccfd431152486fd781070713ad0e34bb01",
      "parents": [
        "0087aabd6a3744c28114240776918f5d15e46b98"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 14 15:58:33 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 08:36:11 2009 +0100"
      },
      "message": "tracing: Fix return of trace_dump_stack()\n\nThe trace_dump_stack() returned a value for a void function.\n\nAlso, added the missing stub for trace_dump_stack() when tracing is\nnot configured.\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c20091214162713.GA31060@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d4703aefdbc8f9f347f6dcefcddd791294314eb7",
      "tree": "198936f4f91d6e571548f5b9aba9ee62e93134a6",
      "parents": [
        "a8773769d1a1e08d0ca15f890515401ab3860637"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 15 16:28:32 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 15 16:28:34 2009 +1030"
      },
      "message": "module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE\u003dy\n\npowerpc applies relocations to the kcrctab.  They\u0027re absolute symbols,\nbut it\u0027s not completely unreasonable: other archs may too, but the\nrelocation is often 0.\n\nhttp://lists.ozlabs.org/pipermail/linuxppc-dev/2009-November/077972.html\n\nInspired-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTested-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "b5f91da0a6973bb6f9ff3b91b0e92c0773a458f3",
      "tree": "911ad0eeb484ce9309504fcf5a031403ad47ce84",
      "parents": [
        "d192c47f25daa98996c7eae543d8a27e41247ec2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 12:40:31 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "clockevents: Convert to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d192c47f25daa98996c7eae543d8a27e41247ec2",
      "tree": "7ad7970ffbf0fa25bab4fc9eb20f6a6fdbb30bb1",
      "parents": [
        "aef9cb05247df3d7615773737beb4f83d78577bb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 08 12:49:26 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "clockevents: Make tick_device_lock static\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e625cce1b73fb38b74e5387226534f7bcbfc36fe",
      "tree": "cfdecc4326845d0601d1447aad334e78d92d3316",
      "parents": [
        "ecb49d1a639acbacfc3771cae5ec07bed5df3847"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 18:02:06 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "perf_event: Convert to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ecb49d1a639acbacfc3771cae5ec07bed5df3847",
      "tree": "19c8fa91d1f9b1c965cd60653e16d1eb60cd9d3a",
      "parents": [
        "239007b8440abff689632f50cdf0f2b9e895b534"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 16:36:54 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:34 2009 +0100"
      },
      "message": "hrtimers: Convert to raw_spinlocks\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "239007b8440abff689632f50cdf0f2b9e895b534",
      "tree": "569cab843af4a999d6d868ec9a824530d2bfa733",
      "parents": [
        "9f5a5621e78cf48d86682a71ceb3fcdbde38b222"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 16:46:45 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "genirq: Convert irq_desc.lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9f5a5621e78cf48d86682a71ceb3fcdbde38b222",
      "tree": "615076c3d592ebd293dcd4c8babfa91ce88d049b",
      "parents": [
        "d209d74d52ab39dc071656533cac095294f70de7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 15:40:01 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "smp: Convert smplocks to raw_spinlocks\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d209d74d52ab39dc071656533cac095294f70de7",
      "tree": "f48ae39908db89df7d93df79ac713318e026f0f7",
      "parents": [
        "1d615482547584b9a8bb6316a58fed6ce90dd9ff"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 18:22:11 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "rtmutes: Convert rtmutex.lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1d615482547584b9a8bb6316a58fed6ce90dd9ff",
      "tree": "21dae4b70acb3ce0bdaeeaee1dbd970be41d26e2",
      "parents": [
        "fe841226bd954fba4fd79f037a876053fe9c3217"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:54:03 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert pi_lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe841226bd954fba4fd79f037a876053fe9c3217",
      "tree": "0819ff8a78b9eeed61a1dc26b5aa900f48d0c2e3",
      "parents": [
        "0986b11b12ad2baed338385f79fd0dec58a23fc6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 17:59:15 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert cpupri lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0986b11b12ad2baed338385f79fd0dec58a23fc6",
      "tree": "36bdf3985704f87f0c278a35e53470f6248419e2",
      "parents": [
        "05fa785cf80c9b7c0254c3056037147aed3ea16b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 15:32:06 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert rt_runtime_lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "05fa785cf80c9b7c0254c3056037147aed3ea16b",
      "tree": "3d5c69d449b9240dc6d1005dddf344e467de4f34",
      "parents": [
        "a26724591edba5acc528d41f3906a972590e8f54"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:28:38 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "sched: Convert rq-\u003elock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "a26724591edba5acc528d41f3906a972590e8f54",
      "tree": "4e7a1c7c7e4b19b428222da9232aa7322439e243",
      "parents": [
        "fa4062e7eae8f484c90b9cdd850b5df39ab0e5a0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 14:46:14 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "plist: Make plist debugging raw_spinlock aware\n\nplists are used with spinlocks and raw_spinlocks. Change the plist\ndebugging to handle both types.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9c1721aa4994f6625decbd915241f3a94ee2fe67",
      "tree": "bc1c2d623ac5d0db82df18163f6ab029e057c558",
      "parents": [
        "9828ea9d75c38fe3dce05d00566eed61c85732e6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 21:52:18 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "locking: Cleanup the name space completely\n\nMake the name space hierarchy of locking functions consistent:\n     raw_spin* -\u003e _raw_spin* -\u003e __raw_spin*\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "9828ea9d75c38fe3dce05d00566eed61c85732e6",
      "tree": "6cee5c8ffb07cdf45cc12d58f74a3053ffefcb5f",
      "parents": [
        "5f6384c5fb6bfc9aac506e058974d3ba293951b3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 20:55:53 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "locking: Further name space cleanups\n\nThe name space hierarchy for the internal lock functions is now a bit\nbackwards. raw_spin* functions map to _spin* which use __spin*, while\nwe would like to have _raw_spin* and __raw_spin*.\n\n_raw_spin* is already used by lock debugging, so rename those funtions\nto do_raw_spin* to free up the _raw_spin* name space.\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2f21ce2e31286a0a32f8da0a7856e9ca1122ef3",
      "tree": "6cc8d1fd37ffa6d02481353857b92734241f4dd0",
      "parents": [
        "e5931943d02bf751b1ec849c0d2ade23d76a8d41"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:02:59 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Implement new raw_spinlock\n\nNow that the raw_spin name space is freed up, we can implement\nraw_spinlock and the related functions which are used to annotate the\nlocks which are not converted to sleeping spinlocks in preempt-rt.\n\nA side effect is that only such locks can be used with the low level\nlock fsunctions which circumvent lockdep.\n\nFor !rt spin_* functions are mapped to the raw_spin* implementations.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "0199c4e68d1f02894bdefe4b5d9e9ee4aedd8d62",
      "tree": "e371d17bd73d64332349debbf45962ec67e7269d",
      "parents": [
        "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 20:01:25 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert __raw_spin* functions to arch_spin*\n\nName space cleanup. No functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "edc35bd72e2079b25f99c5da7d7a65dbbffc4a26",
      "tree": "a4fac9d24d243d3296fc36a2371db2a56d363e1a",
      "parents": [
        "445c89514be242b1b0080056d50bdc1b72adeb5c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 03 12:38:57 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Rename __RAW_SPIN_LOCK_UNLOCKED to __ARCH_SPIN_LOCK_UNLOCKED\n\nFurther name space cleanup. No functional change\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n"
    },
    {
      "commit": "445c89514be242b1b0080056d50bdc1b72adeb5c",
      "tree": "96ed062794ad0fb6a649713c83f009eea382e8b2",
      "parents": [
        "6b6b4792f89346e47437682c7ba3438e6681c0f9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 02 19:49:50 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Convert raw_spinlock to arch_spinlock\n\nThe raw_spin* namespace was taken by lockdep for the architecture\nspecific implementations. raw_spin_* would be the ideal name space for\nthe spinlocks which are not converted to sleeping locks in preempt-rt.\n\nLinus suggested to convert the raw_ to arch_ locks and cleanup the\nname space instead of using an artifical name like core_spin,\natomic_spin or whatever\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: linux-arch@vger.kernel.org\n\n"
    },
    {
      "commit": "b7b40ade58e621851896aa261452df99d4e9d99b",
      "tree": "6ff6d2adea28376b86875cd070fbea6d4473d029",
      "parents": [
        "3ea6b3d0e6d0ffd91c0f8cadeb69b7133c038b32"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Nov 09 21:01:59 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:32 2009 +0100"
      },
      "message": "locking: Reorder functions in spinlock.c\n\nSeparate spin_lock and rw_lock functions. Preempt-RT needs to exclude\nthe rw_lock functions from being compiled. The reordering allows to do\nthat with a single #ifdef.\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d0316554d3586cbea60592a41391b5def2553d6f",
      "tree": "5e7418f0bacbc68cec5dfd1541e03eb56870aa02",
      "parents": [
        "fb0bbb92d42d5bd0ab224605444efdfed06d6934",
        "51e99be00ce2713cbb841cedc997cafa6e26c7f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 14 09:58:24 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)\n  m68k: rename global variable vmalloc_end to m68k_vmalloc_end\n  percpu: add missing per_cpu_ptr_to_phys() definition for UP\n  percpu: Fix kdump failure if booted with percpu_alloc\u003dpage\n  percpu: make misc percpu symbols unique\n  percpu: make percpu symbols in ia64 unique\n  percpu: make percpu symbols in powerpc unique\n  percpu: make percpu symbols in x86 unique\n  percpu: make percpu symbols in xen unique\n  percpu: make percpu symbols in cpufreq unique\n  percpu: make percpu symbols in oprofile unique\n  percpu: make percpu symbols in tracer unique\n  percpu: make percpu symbols under kernel/ and mm/ unique\n  percpu: remove some sparse warnings\n  percpu: make alloc_percpu() handle array types\n  vmalloc: fix use of non-existent percpu variable in put_cpu_var()\n  this_cpu: Use this_cpu_xx in trace_functions_graph.c\n  this_cpu: Use this_cpu_xx for ftrace\n  this_cpu: Use this_cpu_xx in nmi handling\n  this_cpu: Use this_cpu operations in RCU\n  this_cpu: Use this_cpu ops for VM statistics\n  ...\n\nFix up trivial (famous last words) global per-cpu naming conflicts in\n\tarch/x86/kvm/svm.c\n\tmm/slab.c\n"
    },
    {
      "commit": "0087aabd6a3744c28114240776918f5d15e46b98",
      "tree": "8bf3ba7b3395490441722360d2872480f64cd694",
      "parents": [
        "cc0104e877fff32865a67b256d3a9ce52ff15790",
        "cc51a0fca66658ea710db566ba17e80e3f7d4957"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:12:37 2009 +0100"
      },
      "message": "Merge branch \u0027tip/tracing/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/urgent\n"
    },
    {
      "commit": "1a551ae715825bb2a2107a2dd68de024a1fa4e32",
      "tree": "03f29f6a37be1eea125994aee5d34b4daf804a20",
      "parents": [
        "23f5d142519621b16cf2b378cf8adf4dcf01a616"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 09 10:15:11 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:11:35 2009 +0100"
      },
      "message": "sched: Use rcu in sched_get_rr_param()\n\nread_lock(\u0026tasklist_lock) does not protect\nsys_sched_get_rr_param() against a concurrent update of the\npolicy or scheduler parameters as do_sched_scheduler() does not\ntake the tasklist_lock.\n\nThe access to task-\u003esched_class-\u003eget_rr_interval is protected by\ntask_rq_lock(task).\n\nUse rcu_read_lock() to protect find_task_by_vpid() and prevent\nthe task struct from going away.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091209100706.862897167@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23f5d142519621b16cf2b378cf8adf4dcf01a616",
      "tree": "c7907cb635ea1ad6cab71598d687b752c17adf37",
      "parents": [
        "5fe85be081edf0ac92d83f9c39e0ab5c1371eb82"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 09 10:15:01 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:11:35 2009 +0100"
      },
      "message": "sched: Use rcu in sched_get/set_affinity()\n\ntasklist_lock is held read locked to protect the\nfind_task_by_vpid() call and to prevent the task going away.\nsched_setaffinity acquires a task struct ref and drops tasklist\nlock right away. The access to the cpus_allowed mask is\nprotected by rq-\u003elock.\n\nrcu_read_lock() provides the same protection here.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091209100706.789059966@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5fe85be081edf0ac92d83f9c39e0ab5c1371eb82",
      "tree": "6c8d313aec92310787c14b7d289f69e3e5e38711",
      "parents": [
        "663997d417330a59a566452f52cfa04c8ffd190b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 09 10:14:58 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 17:11:34 2009 +0100"
      },
      "message": "sched: Use rcu in sys_sched_getscheduler/sys_sched_getparam()\n\nread_lock(\u0026tasklist_lock) does not protect\nsys_sched_getscheduler and sys_sched_getparam() against a\nconcurrent update of the policy or scheduler parameters as\ndo_sched_setscheduler() does not take the tasklist_lock. The\naccessed integers can be retrieved w/o locking and are snapshots\nanyway.\n\nUsing rcu_read_lock() to protect find_task_by_vpid() and prevent\nthe task struct from going away is not changing the above\nsituation.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20091209100706.753790977@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc0104e877fff32865a67b256d3a9ce52ff15790",
      "tree": "18779442274e81607822ecb0905c55ac4ce6a163",
      "parents": [
        "16620e0f1990fa6d896a639449c4b3d678458464",
        "f40542532e96dda5506eb76badea322f2ae4731c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 14 09:16:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/urgent\n\nConflicts:\n\tkernel/trace/trace_kprobe.c\n\nMerge reason: resolve the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16620e0f1990fa6d896a639449c4b3d678458464",
      "tree": "fd8be22bfc910b858277c8b12e9621eb47e6ba08",
      "parents": [
        "472bbe02c92a7a8299d7b16946277d98bb8f4bb7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Dec 08 11:18:16 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sun Dec 13 18:46:54 2009 +0100"
      },
      "message": "ksym_tracer: Fix bad cast\n\nFix this warning:\n\nkernel/trace/trace_ksym.c: In function \u0027ksym_trace_filter_read\u0027:\nkernel/trace/trace_ksym.c:239: warning: cast to pointer from integer of different size\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \"K.Prasad\" \u003cprasad@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c4B1DC578.9020909@cn.fujitsu.com\u003e\n[remove the strstrip fix as tglx already fixed that]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    }
  ],
  "next": "472bbe02c92a7a8299d7b16946277d98bb8f4bb7"
}
