)]}'
{
  "log": [
    {
      "commit": "4ede816ac36e027db5fe0051ad9c73f76db63772",
      "tree": "6c79eae26067c2355a2d4c7e65bca84208a76c40",
      "parents": [
        "bcd0b235bf3808dec5115c381cd55568f63b85f0"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Tue Mar 31 15:24:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:20 2009 -0700"
      },
      "message": "epoll keyed wakeups: add __wake_up_locked_key() and __wake_up_sync_key()\n\nThis patchset introduces wakeup hints for some of the most popular (from\nepoll POV) devices, so that epoll code can avoid spurious wakeups on its\nwaiters.\n\nThe problem with epoll is that the callback-based wakeups do not, ATM,\ncarry any information about the events the wakeup is related to.  So the\nonly choice epoll has (not being able to call f_op-\u003epoll() from inside the\ncallback), is to add the file* to a ready-list and resolve the real events\nlater on, at epoll_wait() (or its own f_op-\u003epoll()) time.  This can cause\nspurious wakeups, since the wake_up() itself might be for an event the\ncaller is not interested into.\n\nThe rate of these spurious wakeup can be pretty high in case of many\nnetwork sockets being monitored.\n\nBy allowing devices to report the events the wakeups refer to (at least\nthe two major classes - POLLIN/POLLOUT), we are able to spare useless\nwakeups by proper handling inside the epoll\u0027s poll callback.\n\nEpoll will have in any case to call f_op-\u003epoll() on the file* later on,\nsince the change to be done in order to have the full event set sent via\nwakeup, is too invasive for the way our f_op-\u003epoll() system works (the\nfull event set is calculated inside the poll function - there are too many\nof them to even start thinking the change - also poll/select would need\nchange too).\n\nEpoll is changed in a way that both devices which send event hints, and\nthe ones that don\u0027t, are correctly handled.  The former will gain some\nefficiency though.\n\nAs a general rule for devices, would be to add an event mask by using\nkey-aware wakeup macros, when making up poll wait queues.  I tested it\n(together with the epoll\u0027s poll fix patch Andrew has in -mm) and wakeups\nfor the supported devices are correctly filtered.\n\nTest program available here:\n\nhttp://www.xmailserver.org/epoll_test.c\n\nThis patch:\n\nNothing revolutionary here.  Just using the available \"key\" that our\nwakeup core already support.  The __wake_up_locked_key() was no brainer,\nsince both __wake_up_locked() and __wake_up_locked_key() are thin wrappers\naround __wake_up_common().\n\nThe __wake_up_sync() function had a body, so the choice was between\nborrowing the body for __wake_up_sync_key() and calling it from\n__wake_up_sync(), or make an inline and calling it from both.  I chose the\nformer since in most archs it all resolves to \"mov $0, REG; jmp ADDR\".\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: William Lee Irwin III \u003cwli@movementarian.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8af78982ff4c0b3731527b0217d286a343a3089",
      "tree": "10f0ebe13c999dd54efdf79ff606b65e7952b69d",
      "parents": [
        "5f0e3da6e186598bbd2569410ab60fa645ba00c9"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Tue Mar 31 15:23:37 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:16 2009 -0700"
      },
      "message": "pm: rework includes, remove arch ifdefs\n\nMake the following header file changes:\n\n - remove arch ifdefs and asm/suspend.h from linux/suspend.h\n - add asm/suspend.h to disk.c (for arch_prepare_suspend())\n - add linux/io.h to swsusp.c (for ioremap())\n - x86 32/64 bit compile fixes\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "704503d836042d4a4c7685b7036e7de0418fbc0f",
      "tree": "218bea088f0b286981221e44d5247dab98020d30",
      "parents": [
        "6a11f75b6a17b5d9ac5025f8d048382fd1f47377"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Mar 31 15:23:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:13 2009 -0700"
      },
      "message": "mm: fix proc_dointvec_userhz_jiffies \"breakage\"\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d9838\n\nOn i386, HZ\u003d1000, jiffies_to_clock_t() converts time in a somewhat strange\nway from the user\u0027s point of view:\n\n\t# echo 500 \u003e/proc/sys/vm/dirty_writeback_centisecs\n\t# cat /proc/sys/vm/dirty_writeback_centisecs\n\t499\n\nSo, we have 5000 jiffies converted to only 499 clock ticks and reported\nback.\n\nTICK_NSEC \u003d 999848\nACTHZ \u003d 256039\n\nKeeping in-kernel variable in units passed from userspace will fix issue\nof course, but this probably won\u0027t be right for every sysctl.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.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": "ee99c71c59f897436ec65debb99372b3146f9985",
      "tree": "051f1c43b7c7658689d4b2c23b3d8585d6464a89",
      "parents": [
        "a6dc60f8975ad96d162915e07703a4439c80dcf0"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Mar 31 15:19:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 01 08:59:11 2009 -0700"
      },
      "message": "mm: introduce for_each_populated_zone() macro\n\nImpact: cleanup\n\nIn almost cases, for_each_zone() is used with populated_zone().  It\u0027s\nbecause almost function doesn\u0027t need memoryless node information.\nTherefore, for_each_populated_zone() can help to make code simplify.\n\nThis patch has no functional change.\n\n[akpm@linux-foundation.org: small cleanup]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d17abcd5417d84cfa8a225160481203a37dc81d4",
      "tree": "74ce2c425c5c6550acec90bc92c8a3f735f0d257",
      "parents": [
        "db6f204019380c788f1de06ee937bdbccd60e5c0",
        "bb75efddeaca89f8a67fd82cdcbaaf436cf17ca9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 30 18:00:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 30 18:00:26 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask:\n  oprofile: Thou shalt not call __exit functions from __init functions\n  cpumask: remove the now-obsoleted pcibus_to_cpumask(): generic\n  cpumask: remove cpumask_t from core\n  cpumask: convert rcutorture.c\n  cpumask: use new cpumask_ functions in core code.\n  cpumask: remove references to struct irqaction\u0027s mask field.\n  cpumask: use mm_cpumask() wrapper: kernel/fork.c\n  cpumask: use set_cpu_active in init/main.c\n  cpumask: remove node_to_first_cpu\n  cpumask: fix seq_bitmap_*() functions.\n  cpumask: remove dangerous CPU_MASK_ALL_PTR, \u0026CPU_MASK_ALL\n"
    },
    {
      "commit": "c4e1aa67ed9e4e542a064bc271ddbf152b677e91",
      "tree": "2a2ca00bed0fc22b4eb83db092c9178868d8f76b",
      "parents": [
        "cf2f7d7c90279cdbc12429de278f3d27ac2050ae",
        "2f8501815256af8498904e68bd0984b1afffd6f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 30 17:17:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 30 17:17:35 2009 -0700"
      },
      "message": "Merge branch \u0027locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027locking-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (33 commits)\n  lockdep: fix deadlock in lockdep_trace_alloc\n  lockdep: annotate reclaim context (__GFP_NOFS), fix SLOB\n  lockdep: annotate reclaim context (__GFP_NOFS), fix\n  lockdep: build fix for !PROVE_LOCKING\n  lockstat: warn about disabled lock debugging\n  lockdep: use stringify.h\n  lockdep: simplify check_prev_add_irq()\n  lockdep: get_user_chars() redo\n  lockdep: simplify get_user_chars()\n  lockdep: add comments to mark_lock_irq()\n  lockdep: remove macro usage from mark_held_locks()\n  lockdep: fully reduce mark_lock_irq()\n  lockdep: merge the !_READ mark_lock_irq() helpers\n  lockdep: merge the _READ mark_lock_irq() helpers\n  lockdep: simplify mark_lock_irq() helpers #3\n  lockdep: further simplify mark_lock_irq() helpers\n  lockdep: simplify the mark_lock_irq() helpers\n  lockdep: split up mark_lock_irq()\n  lockdep: generate usage strings\n  lockdep: generate the state bit definitions\n  ...\n"
    },
    {
      "commit": "2f8501815256af8498904e68bd0984b1afffd6f8",
      "tree": "ffc9b4d8d80906fc2743b34dcdc93fdd2294f2c6",
      "parents": [
        "19cefdffbfe0f7e280f21e80875937e8700e99e2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Fri Mar 20 11:13:20 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 30 23:19:24 2009 +0200"
      },
      "message": "lockdep: fix deadlock in lockdep_trace_alloc\n\nHeiko reported that we grab the graph lock with irqs enabled.\n\nFix this by providng the same wrapper as all other lockdep entry\nfunctions have.\n\nReported-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nLKML-Reference: \u003c1237544000.24626.52.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "749b0afc3a9d90dda3319fd1464a3b32fc225361",
      "tree": "811a0931109bf3ee1204d43c37c9f3d1d7a4b327",
      "parents": [
        "4aecd6718939eb3c4145b248369b65f7483a8a02"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:35 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:55 2009 +0200"
      },
      "message": "kexec: Change kexec jump code ordering\n\nChange the ordering of the kexec jump code so that the nonboot CPUs\nare disabled after calling device drivers\u0027 \"late suspend\" methods.\n\nThis change reflects the recent modifications of the power management\ncode that is also used by kexec jump.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4aecd6718939eb3c4145b248369b65f7483a8a02",
      "tree": "20030736ca8e762b5de7ad2e66c39321c9ef94f5",
      "parents": [
        "900af0d973856d6feb6fc088c2d0d3fde57707d3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:26 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Change hibernation code ordering\n\nChange the ordering of the hibernation core code so that the platform\n\"prepare\" callbacks are executed and the nonboot CPUs are disabled\nafter calling device drivers\u0027 \"late suspend\" methods.\n\nThis change (along with the previous analogous change of the suspend\ncore code) will allow us to rework the PCI PM core so that the power\nstate of devices is changed in the \"late\" phase of suspend (and\nanalogously in the \"early\" phase of resume), which in turn will allow\nus to avoid the race condition where a device using shared interrupts\nis put into a low power state with interrupts enabled and then an\ninterrupt (for another device) comes in and confuses its driver.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "900af0d973856d6feb6fc088c2d0d3fde57707d3",
      "tree": "4502d4108200fa0eb38dd5f0155b205fed166e48",
      "parents": [
        "2ed8d2b3a81bdbb0418301628ccdb008ac9f40b7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:15 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Change suspend code ordering\n\nChange the ordering of the suspend core code so that the platform\n\"prepare\" callback is executed and the nonboot CPUs are disabled\nafter calling device drivers\u0027 \"late suspend\" methods.\n\nThis change will allow us to rework the PCI PM core so that the power\nstate of devices is changed in the \"late\" phase of suspend (and\nanalogously in the \"early\" phase of resume), which in turn will allow\nus to avoid the race condition where a device using shared interrupts\nis put into a low power state with interrupts enabled and then an\ninterrupt (for another device) comes in and confuses its driver.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ed8d2b3a81bdbb0418301628ccdb008ac9f40b7",
      "tree": "54ab0cd7aa7db73151533b463bd490b62a29c462",
      "parents": [
        "0a0c5168df270a50e3518e4f12bddb31f8f5f38f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:34:06 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Rework handling of interrupts during suspend-resume\n\nUse the functions introduced in by the previous patch,\nsuspend_device_irqs(), resume_device_irqs() and check_wakeup_irqs(),\nto rework the handling of interrupts during suspend (hibernation) and\nresume.  Namely, interrupts will only be disabled on the CPU right\nbefore suspending sysdevs, while device drivers will be prevented\nfrom receiving interrupts, with the help of the new helper function,\nbefore their \"late\" suspend callbacks run (and analogously during\nresume).\n\nIn addition, since the device interrups are now disabled before the\nCPU has turned all interrupts off and the CPU will ACK the interrupts\nsetting the IRQ_PENDING bit for them, check in sysdev_suspend() if\nany wake-up interrupts are pending and abort suspend if that\u0027s the\ncase.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0a0c5168df270a50e3518e4f12bddb31f8f5f38f",
      "tree": "ea1e392fef9d52a7b81c9010580c09317a4d707d",
      "parents": [
        "019abbc87025a030fd25008612afd4eff8a375f7"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 16 22:33:49 2009 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Mar 30 21:46:54 2009 +0200"
      },
      "message": "PM: Introduce functions for suspending and resuming device interrupts\n\nIntroduce helper functions allowing us to prevent device drivers from\ngetting any interrupts (without disabling interrupts on the CPU)\nduring suspend (or hibernation) and to make them start to receive\ninterrupts again during the subsequent resume.  These functions make it\npossible to keep timer interrupts enabled while the \"late\" suspend and\n\"early\" resume callbacks provided by device drivers are being\nexecuted.  In turn, this allows device drivers\u0027 \"late\" suspend and\n\"early\" resume callbacks to sleep, execute ACPI callbacks etc.\n\nThe functions introduced here will be used to rework the handling of\ninterrupts during suspend (hibernation) and resume.  Namely,\ninterrupts will only be disabled on the CPU right before suspending\nsysdevs, while device drivers will be prevented from receiving\ninterrupts, with the help of the new helper function, before their\n\"late\" suspend callbacks run (and analogously during resume).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "612a726faf8486fa48b34fa37115ce1e7421d383",
      "tree": "3448dd7e8129218401eac69b24a6116b06437b4f",
      "parents": [
        "73d0a4b107d58908305f272bfae9bd17f74a2c81"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:16 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:17 2009 +1030"
      },
      "message": "cpumask: remove cpumask_t from core\n\nImpact: cleanup\n\nstruct cpumask is nicer, and we use it to make where we\u0027ve made code\nsafe for CONFIG_CPUMASK_OFFSTACK\u003dy.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "73d0a4b107d58908305f272bfae9bd17f74a2c81",
      "tree": "2dd9c3c51e227880abd662a7749bf3f843b9f6d4",
      "parents": [
        "aa85ea5b89c36c51200d795dd788139bd9b8cf50"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:16 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:16 2009 +1030"
      },
      "message": "cpumask: convert rcutorture.c\n\nWe\u0027re getting rid of cpumasks on the stack.\n\nSimply change tmp_mask to a global, and allocate it in\nrcu_torture_init().\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Josh Triplett \u003cjosh@freedesktop.org\u003e\n"
    },
    {
      "commit": "aa85ea5b89c36c51200d795dd788139bd9b8cf50",
      "tree": "0b68a35b691417d927127376beb0541d96c9cc64",
      "parents": [
        "1a8a51004a18b627ea81444201f7867875212f46"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:15 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:16 2009 +1030"
      },
      "message": "cpumask: use new cpumask_ functions in core code.\n\nImpact: cleanup\n\nTime to clean up remaining laggards using the old cpu_ functions.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Trond.Myklebust@netapp.com\n"
    },
    {
      "commit": "9489424454c93f4d225d7af47978f8c7e84bf4d4",
      "tree": "b97394982298e4e191b2766408ff8a3dff99266a",
      "parents": [
        "2b17fa506c418e9fb02bbbc7f426d2bbb5b247a6"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:12 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:13 2009 +1030"
      },
      "message": "cpumask: use mm_cpumask() wrapper: kernel/fork.c\n\nImpact: futureproof\n\nMakes code futureproof against the impending change to mm-\u003ecpu_vm_mask.\n\nIt\u0027s also a chance to use the new cpumask_ ops which take a pointer.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "2b17fa506c418e9fb02bbbc7f426d2bbb5b247a6",
      "tree": "bc010d85f71ff6f6f8fa3e7038d8ad5eb3526aec",
      "parents": [
        "0451fb2ebc4f65c265bb51d71a2fc986ebf20218"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:12 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:12 2009 +1030"
      },
      "message": "cpumask: use set_cpu_active in init/main.c\n\ncpu_active_map is deprecated in favor of cpu_active_mask, which is\nconst for safety: we use accessors now (set_cpu_active) is we really\nwant to make a change.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1a2142afa5646ad5af44bbe1febaa5e0b7e71156",
      "tree": "1c76670c82adb46a7726421ad0fcba2994758964",
      "parents": [
        "0d34fb8e93ceba7b6dad0062dbb4a0813bacd75b"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:10 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 30 22:05:11 2009 +1030"
      },
      "message": "cpumask: remove dangerous CPU_MASK_ALL_PTR, \u0026CPU_MASK_ALL\n\nImpact: cleanup\n\n(Thanks to Al Viro for reminding me of this, via Ingo)\n\nCPU_MASK_ALL is the (deprecated) \"all bits set\" cpumask, defined as so:\n\n\t#define CPU_MASK_ALL (cpumask_t) { { ... } }\n\nTaking the address of such a temporary is questionable at best,\nunfortunately 321a8e9d (cpumask: add CPU_MASK_ALL_PTR macro) added\nCPU_MASK_ALL_PTR:\n\n\t#define CPU_MASK_ALL_PTR (\u0026CPU_MASK_ALL)\n\nWhich formalizes this practice.  One day gcc could bite us over this\nusage (though we seem to have gotten away with it so far).\n\nSo replace everywhere which used \u0026CPU_MASK_ALL or CPU_MASK_ALL_PTR\nwith the modern \"cpu_all_mask\" (a real const struct cpumask *).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReported-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "9ff9a26b786c35ee8d2a66222924a807ec851a9f",
      "tree": "db432a17bccca1ca2c16907f0ee83ac449ed4012",
      "parents": [
        "0a3108beea9143225119d5e7c72a8e2c64f3eb7d",
        "0d34fb8e93ceba7b6dad0062dbb4a0813bacd75b"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Mar 30 14:04:53 2009 +1100"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Mar 30 14:04:53 2009 +1100"
      },
      "message": "Merge commit \u0027origin/master\u0027 into next\n\nManual merge of:\n\tarch/powerpc/include/asm/elf.h\n\tdrivers/i2c/busses/i2c-mpc.c\n"
    },
    {
      "commit": "d5ac537e5fb6fc12384c9f3ed6a15e912dfbbc2a",
      "tree": "0b86a19d2e54558ac99ed5e1bb287cf22505b21a",
      "parents": [
        "ee665ecca6d6775f65b1a4154c34f551f62cec52"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat Mar 28 21:52:47 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 29 08:12:39 2009 -0700"
      },
      "message": "sched: fix errors in struct \u0026 function comments\n\nFix kernel-doc errors in sched.c:  the structs don\u0027t have\nkernel-doc notation and the short function description needs to\nbe one line only.\n\n  Error(kernel/sched.c:3197): cannot understand prototype: \u0027struct sd_lb_stats \u0027\n  Error(kernel/sched.c:3228): cannot understand prototype: \u0027struct sg_lb_stats \u0027\n  Error(kernel/sched.c:3375): duplicate section name \u0027Description\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\ncc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c31f403de62415c738ddc9e673cf8e722c82f861",
      "tree": "33d2bcb04a783c1f0e903c5a949d33381ccb1756",
      "parents": [
        "7541bba880fb6989f489f0c68fa246a375b44035",
        "d00ab2fdd4dc4361c97777bc1fef7234329d4659"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 17:32:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 17:32:14 2009 -0700"
      },
      "message": "Merge branch \u0027futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futex: remove the pointer math from double_unlock_hb, fix\n  futex: remove the pointer math from double_unlock_hb\n  futex: clean up fault logic\n  futex: unlock before returning -EFAULT\n  futex: use current-\u003etime_slack_ns for rt tasks too\n  futex: add double_unlock_hb()\n  futex: additional (get|put)_futex_key() fixes\n  futex: update futex commentary\n"
    },
    {
      "commit": "d00ab2fdd4dc4361c97777bc1fef7234329d4659",
      "tree": "b8d8f98c1af633bbc1570b4270b39727737beebf",
      "parents": [
        "88f502fedba82eff252b6420e8b8328e4ae25c67",
        "7c730ccdc1188b97f5c8cb690906242c7ed75c22"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 23:24:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 23:24:12 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/futexes\n"
    },
    {
      "commit": "eedf2c5296a8dfaaf9aec1a938c1d3bd73159a30",
      "tree": "a02e5ef1f2ae46c6328a6744e806c9e7dbff7327",
      "parents": [
        "0151f94f2e61c39858e714a5d92244b0e5a7fdf5",
        "df52092f3c97788592ef72501a43fb7ac6a3cfe0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 14:00:33 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 28 14:00:33 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30:\n  fastboot: remove duplicate unpack_to_rootfs()\n  ide/net: flip the order of SATA and network init\n  async: remove the temporary (2.6.29) \"async is off by default\" code\n\nFix up conflicts in init/initramfs.c manually\n"
    },
    {
      "commit": "9710794383ee5008d67f1a6613a4717bf6de47bc",
      "tree": "9917f2f1a345a6de6b957c308acc6b6b8813c697",
      "parents": [
        "5d80f8e5a9dc9c9a94d4aeaa567e219a808b8a4a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Mar 15 11:11:44 2009 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Mar 28 13:05:30 2009 -0700"
      },
      "message": "async: remove the temporary (2.6.29) \"async is off by default\" code\n\nNow that everyone has been able to test the async code (and it\u0027s being used\nin the Moblin betas by default), we can enable it by default.\nThe various fixes needed have gone into 2.6.29 already.\n\n[With an important bugfix from Stefan Richter]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "82268da1b130f763d22d04f7d016bbf6fc8815c2",
      "tree": "9803f361556d10708313e980428e63a18162e667",
      "parents": [
        "6e15cf04860074ad032e88c306bea656bbdd0f22",
        "5d80f8e5a9dc9c9a94d4aeaa567e219a808b8a4a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 04:21:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 28 04:26:01 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/sparc/kernel/time_64.c\n\tdrivers/gpu/drm/drm_proc.c\n\nManual merge to resolve build warning due to phys_addr_t type change\non x86:\n\n\tdrivers/gpu/drm/drm_info.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ae5080f4c2e293229508dabe7c8a90af4e4c460",
      "tree": "9cb11f26905a82b7fac9d3b8f9d61d58bc5c94b0",
      "parents": [
        "2c9e15a011c55ff96b2b8d2b126d1b9a96abba20",
        "aabb8fdb41128705fd1627f56fdd571e45fdbcdb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 27 16:23:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 27 16:23:12 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (37 commits)\n  fs: avoid I_NEW inodes\n  Merge code for single and multiple-instance mounts\n  Remove get_init_pts_sb()\n  Move common mknod_ptmx() calls into caller\n  Parse mount options just once and copy them to super block\n  Unroll essentials of do_remount_sb() into devpts\n  vfs: simple_set_mnt() should return void\n  fs: move bdev code out of buffer.c\n  constify dentry_operations: rest\n  constify dentry_operations: configfs\n  constify dentry_operations: sysfs\n  constify dentry_operations: JFS\n  constify dentry_operations: OCFS2\n  constify dentry_operations: GFS2\n  constify dentry_operations: FAT\n  constify dentry_operations: FUSE\n  constify dentry_operations: procfs\n  constify dentry_operations: ecryptfs\n  constify dentry_operations: CIFS\n  constify dentry_operations: AFS\n  ...\n"
    },
    {
      "commit": "a3ec947c85ec339884b30ef6a08133e9311fdae1",
      "tree": "c3cc5859a6b6d8986547405b6c5bd11bc8916114",
      "parents": [
        "585d3bc06f4ca57f975a5a1f698f65a45ea66225"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@linux.vnet.ibm.com",
        "time": "Wed Mar 04 12:06:34 2009 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 27 14:44:03 2009 -0400"
      },
      "message": "vfs: simple_set_mnt() should return void\n\nsimple_set_mnt() is defined as returning \u0027int\u0027 but always returns 0.\nCallers assume simple_set_mnt() never fails and don\u0027t properly cleanup if\nit were to _ever_ fail.  For instance, get_sb_single() and get_sb_nodev()\nshould:\n\n        up_write(sb-\u003es_unmount);\n        deactivate_super(sb);\n\nif simple_set_mnt() fails.\n\nSince simple_set_mnt() never fails, would be cleaner if it did not\nreturn anything.\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@linux.vnet.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3ba13d179e8c24c68eac32b93593a6b10fcd1572",
      "tree": "732162ba9ddfe66c8e892a25765cb30f0807cf31",
      "parents": [
        "296c2d86635bd6ecd8f282dfff18bb68fb4fc512"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Feb 20 06:02:22 2009 +0000"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 27 14:44:03 2009 -0400"
      },
      "message": "constify dentry_operations: rest\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a8416961d32d8bb757bcbb86b72042b66d044510",
      "tree": "85ae6a21a2d71541e3dae93f17da078f63e2341e",
      "parents": [
        "6671de344cd661453bbee3cfde5574a974332436",
        "fc2869f6a1993550c2765e934b117e993782db30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:06:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:06:50 2009 -0700"
      },
      "message": "Merge branch \u0027irq-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (32 commits)\n  x86: disable __do_IRQ support\n  sparseirq, powerpc/cell: fix unused variable warning in interrupt.c\n  genirq: deprecate obsolete typedefs and defines\n  genirq: deprecate __do_IRQ\n  genirq: add doc to struct irqaction\n  genirq: use kzalloc instead of explicit zero initialization\n  genirq: make irqreturn_t an enum\n  genirq: remove redundant if condition\n  genirq: remove unused hw_irq_controller typedef\n  irq: export remove_irq() and setup_irq() symbols\n  irq: match remove_irq() args with setup_irq()\n  irq: add remove_irq() for freeing of setup_irq() irqs\n  genirq: assert that irq handlers are indeed running in hardirq context\n  irq: name \u0027p\u0027 variables a bit better\n  irq: further clean up the free_irq() code flow\n  irq: refactor and clean up the free_irq() code flow\n  irq: clean up manage.c\n  irq: use GFP_KERNEL for action allocation in request_irq()\n  kernel/irq: fix sparse warning: make symbol static\n  irq: optimize init_kstat_irqs/init_copy_kstat_irqs\n  ...\n"
    },
    {
      "commit": "6671de344cd661453bbee3cfde5574a974332436",
      "tree": "826873ae0180eea53b8fcc6e41938b67c656ba3f",
      "parents": [
        "831576fe40f4175e0767623cffa4aeb28157943a",
        "7c526e1fef8d604a9ec022d9145bba5dbfe40a11"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:42 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:42 2009 -0700"
      },
      "message": "Merge branch \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (26 commits)\n  posix timers: fix RLIMIT_CPU \u0026\u0026 fork()\n  time: ntp: fix bug in ntp_update_offset() \u0026 do_adjtimex(), fix\n  time: ntp: clean up second_overflow()\n  time: ntp: simplify ntp_tick_adj calculations\n  time: ntp: make 64-bit constants more robust\n  time: ntp: refactor do_adjtimex() some more\n  time: ntp: refactor do_adjtimex()\n  time: ntp: fix bug in ntp_update_offset() \u0026 do_adjtimex()\n  time: ntp: micro-optimize ntp_update_offset()\n  time: ntp: simplify ntp_update_offset_fll()\n  time: ntp: refactor and clean up ntp_update_offset()\n  time: ntp: refactor up ntp_update_frequency()\n  time: ntp: clean up ntp_update_frequency()\n  time: ntp: simplify the MAX_TICKADJ_SCALED definition\n  time: ntp: simplify the second_overflow() code flow\n  time: ntp: clean up kernel/time/ntp.c\n  x86: hpet: stop HPET_COUNTER when programming periodic mode\n  x86: hpet: provide separate functions to stop and start the counter\n  x86: hpet: print HPET registers during setup (if hpet\u003dverbose is used)\n  time: apply NTP frequency/tick changes immediately\n  ...\n"
    },
    {
      "commit": "831576fe40f4175e0767623cffa4aeb28157943a",
      "tree": "de54e628e5849d6cf201df4446d760d17f752326",
      "parents": [
        "21cdbc1378e8aa96e1ed4a606dce1a8e7daf7fdf",
        "66fef08f7d5267b2312c4b48a6d2957d2d414105"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:05:01 2009 -0700"
      },
      "message": "Merge branch \u0027sched-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (46 commits)\n  sched: Add comments to find_busiest_group() function\n  sched: Refactor the power savings balance code\n  sched: Optimize the !power_savings_balance during fbg()\n  sched: Create a helper function to calculate imbalance\n  sched: Create helper to calculate small_imbalance in fbg()\n  sched: Create a helper function to calculate sched_domain stats for fbg()\n  sched: Define structure to store the sched_domain statistics for fbg()\n  sched: Create a helper function to calculate sched_group stats for fbg()\n  sched: Define structure to store the sched_group statistics for fbg()\n  sched: Fix indentations in find_busiest_group() using gotos\n  sched: Simple helper functions for find_busiest_group()\n  sched: remove unused fields from struct rq\n  sched: jiffies not printed per CPU\n  sched: small optimisation of can_migrate_task()\n  sched: fix typos in documentation\n  sched: add avg_overlap decay\n  x86, sched_clock(): mark variables read-mostly\n  sched: optimize ttwu vs group scheduling\n  sched: TIF_NEED_RESCHED -\u003e need_reshed() cleanup\n  sched: don\u0027t rebalance if attached on NULL domain\n  ...\n"
    },
    {
      "commit": "08abe18af1f78ee80c3c3a5ac47c3e0ae0beadf6",
      "tree": "2be39bf8942edca1bcec735145e144a682ca9cd3",
      "parents": [
        "f0de70f8bb56952f6e016a65a8a8d006918f5bf6",
        "0384e2959127a56d0640505d004d8dd92f9c29f5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 15:23:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 26 15:23:24 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n\nConflicts:\n\tdrivers/net/wimax/i2400m/usb-notif.c\n"
    },
    {
      "commit": "0c93ea4064a209cdc36de8a9a3003d43d08f46f7",
      "tree": "ff19952407c523a1349ef56c05993416dd28437e",
      "parents": [
        "bc2fd381d8f9dbeb181f82286cdca1567e3d0def",
        "e6e66b02e11563abdb7f69dcb7a2efbd8d577e77"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:17:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 11:17:04 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (61 commits)\n  Dynamic debug: fix pr_fmt() build error\n  Dynamic debug: allow simple quoting of words\n  dynamic debug: update docs\n  dynamic debug: combine dprintk and dynamic printk\n  sysfs: fix some bin_vm_ops errors\n  kobject: don\u0027t block for each kobject_uevent\n  sysfs: only allow one scheduled removal callback per kobj\n  Driver core: Fix device_move() vs. dpm list ordering, v2\n  Driver core: some cleanup on drivers/base/sys.c\n  Driver core: implement uevent suppress in kobject\n  vcs: hook sysfs devices into object lifetime instead of \"binding\"\n  driver core: fix passing platform_data\n  driver core: move platform_data into platform_device\n  sysfs: don\u0027t block indefinitely for unmapped files.\n  driver core: move knode_bus into private structure\n  driver core: move knode_driver into private structure\n  driver core: move klist_children into private structure\n  driver core: create a private portion of struct device\n  driver core: remove polling for driver_probe_done(v5)\n  sysfs: reference sysfs_dirent from sysfs inodes\n  ...\n\nFixed conflicts in drivers/sh/maple/maple.c manually\n"
    },
    {
      "commit": "7c526e1fef8d604a9ec022d9145bba5dbfe40a11",
      "tree": "0234bf6c439cb0b91c69ac0eed28c526d05cbf2f",
      "parents": [
        "e8684605adf87d8e65f64ce7b0274d60a05085bd",
        "74019224ac34b044b44a31dd89a54e3477db4896",
        "a2a5ac8650b570bea3cb3614f77739dcd07d6632",
        "37bebc70d7ad4144c571d74500db3bb26ec0c0eb"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 15:45:52 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 15:45:52 2009 +0100"
      },
      "message": "Merge branches \u0027timers/new-apis\u0027, \u0027timers/ntp\u0027 and \u0027timers/urgent\u0027 into timers/core\n"
    },
    {
      "commit": "a5ebc0b1a7843508b375f7ab8a36a628e5c9f372",
      "tree": "04d3ab410e08b4d9174c663dd6bf95611dd16d0a",
      "parents": [
        "5ba1ae92b6796b3367152ccd9baa022dde7eed4c",
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 15:45:22 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 15:45:22 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.29\u0027 into timers/core\n"
    },
    {
      "commit": "b7bb4c9bb01941fe8feb653f3410e7ed0c9bb786",
      "tree": "ee6fb1ce3354c8a06c7c1b08b2c386aaebf07a33",
      "parents": [
        "c071df18525a95b37dd5821a6dc4af83bd18675e"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:27 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 13:28:30 2009 +0100"
      },
      "message": "sched: Add comments to find_busiest_group() function\n\nImpact: cleanup\n\nAdd /** style comments around find_busiest_group(). Also add a few\nexplanatory comments.\n\nThis concludes the find_busiest_group() cleanup. The function is\nnow down to 72 lines from the original 313 lines.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091427.13992.18933.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c071df18525a95b37dd5821a6dc4af83bd18675e",
      "tree": "3b5a3761ed296465ed5f7b4669e74ec92203de78",
      "parents": [
        "a021dc03376707c55a3483e32c16b8986d4414cc"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:22 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:48 2009 +0100"
      },
      "message": "sched: Refactor the power savings balance code\n\nImpact: cleanup\n\nCreate seperate helper functions to initialize the\npower-savings-balance related variables, to update them and\nto check if we have a scope for performing power-savings balance.\n\nAdd no-op inline functions for the !(CONFIG_SCHED_MC || CONFIG_SCHED_SMT)\ncase.\n\nThis will eliminate all the #ifdef jungle in find_busiest_group() and the\nother helper functions.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091422.13992.73616.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a021dc03376707c55a3483e32c16b8986d4414cc",
      "tree": "a3d29953e30b8874e7191d29dc50c59f9ac4c809",
      "parents": [
        "dbc523a3b86f9e1765b5e70e6886913b99cc5cec"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:17 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:48 2009 +0100"
      },
      "message": "sched: Optimize the !power_savings_balance during fbg()\n\nImpact: cleanup, micro-optimization\n\nWe don\u0027t need to perform power_savings balance if either the\ncpu is NOT_IDLE or if the sched_domain doesn\u0027t contain the\nSD_POWERSAVINGS_BALANCE flag set.\n\nCurrently, we check for these conditions multiple number of\ntimes, even though these variables don\u0027t change over the scope\nof find_busiest_group().\n\nCheck once, and store the value in the already exiting\n\"power_savings_balance\" variable.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091417.13992.2657.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dbc523a3b86f9e1765b5e70e6886913b99cc5cec",
      "tree": "74e735ebf9ad70f4b204336eee333e4024fc9a9f",
      "parents": [
        "2e6f44aeda426054fc58464df1ad571aecca0c92"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:12 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:47 2009 +0100"
      },
      "message": "sched: Create a helper function to calculate imbalance\n\nMove all the imbalance calculation out of find_busiest_group()\nthrough this helper function.\n\nWith this change, the structure of find_busiest_group() will be\nas follows:\n\n- update_sched_domain_statistics.\n\n- check if imbalance exits.\n\n- update imbalance and return busiest.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091411.13992.43293.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e6f44aeda426054fc58464df1ad571aecca0c92",
      "tree": "eb6f6788ac6f0ac6c71e82f7741ed8f830c3b2b4",
      "parents": [
        "37abe198b1246ddd206319c43502a687db62d347"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:06 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:47 2009 +0100"
      },
      "message": "sched: Create helper to calculate small_imbalance in fbg()\n\nImpact: cleanup\n\nWe have two places in find_busiest_group() where we need to calculate\nthe minor imbalance before returning the busiest group. Encapsulate\nthis functionality into a seperate helper function.\n\nCredit: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091406.13992.54316.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "37abe198b1246ddd206319c43502a687db62d347",
      "tree": "8289ef7751b393fe90ba39c4576d93fe57059381",
      "parents": [
        "222d656dea57e4e084fbd1e9383e6fed2ca9fa61"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:44:01 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:46 2009 +0100"
      },
      "message": "sched: Create a helper function to calculate sched_domain stats for fbg()\n\nImpact: cleanup\n\nCreate a helper function named update_sd_lb_stats() to update the\nvarious sched_domain related statistics in find_busiest_group().\n\nWith this we would have moved all the statistics computation out of\nfind_busiest_group().\n\nCredit: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091401.13992.88737.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "222d656dea57e4e084fbd1e9383e6fed2ca9fa61",
      "tree": "eb5f5be4312e050c28ba9b80dc9d0e113e711190",
      "parents": [
        "1f8c553d0f11d85f7993fe21015695d266771c00"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:43:56 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:46 2009 +0100"
      },
      "message": "sched: Define structure to store the sched_domain statistics for fbg()\n\nImpact: cleanup\n\nCurrently we use a lot of local variables in find_busiest_group()\nto capture the various statistics related to the sched_domain.\nGroup them together into a single data structure.\n\nThis will help us to offload the job of updating the sched_domain\nstatistics to a helper function.\n\nCredit: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091356.13992.25970.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1f8c553d0f11d85f7993fe21015695d266771c00",
      "tree": "f7444308d28ddab455ccd48f246b628fdb854eaf",
      "parents": [
        "381be78fdc829a22f6327a0ed09f54b6270a976d"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:43:51 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:45 2009 +0100"
      },
      "message": "sched: Create a helper function to calculate sched_group stats for fbg()\n\nImpact: cleanup\n\nCreate a helper function named update_sg_lb_stats() which\ncan be invoked to calculate the individual group\u0027s statistics\nin find_busiest_group().\n\nThis reduces the lenght of find_busiest_group() considerably.\n\nCredit: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091351.13992.43461.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "381be78fdc829a22f6327a0ed09f54b6270a976d",
      "tree": "d69536e051f14b67138267dd6010a895cdb5745e",
      "parents": [
        "6dfdb0629019f307ab18864b1fd3e5dbb02f383c"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:43:46 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:45 2009 +0100"
      },
      "message": "sched: Define structure to store the sched_group statistics for fbg()\n\nImpact: cleanup\n\nCurrently a whole bunch of variables are used to store the\nvarious statistics pertaining to the groups we iterate over\nin find_busiest_group().\n\nGroup them together in a single data structure and add\nappropriate comments.\n\nThis will be useful later on when we create helper functions\nto calculate the sched_group statistics.\n\nCredit: Vaidyanathan Srinivasan \u003csvaidy@linux.vnet.ibm.com\u003e\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091345.13992.20099.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6dfdb0629019f307ab18864b1fd3e5dbb02f383c",
      "tree": "bb5f0e9b59998961d71d226ff46c162694691a7d",
      "parents": [
        "67bb6c036d1fc3d332c8527a36a546e3e72e822c"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:43:40 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:44 2009 +0100"
      },
      "message": "sched: Fix indentations in find_busiest_group() using gotos\n\nImpact: cleanup\n\nSome indentations in find_busiest_group() can minimized by using\nearly exits with the help of gotos. This improves readability in\na couple of cases.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091340.13992.45062.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "67bb6c036d1fc3d332c8527a36a546e3e72e822c",
      "tree": "677795ae954a6fec174c8218e59d8301dc7f1a8a",
      "parents": [
        "b6d9842258d1ba27fb978cded74eb4b6aa15edc8"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Wed Mar 25 14:43:35 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:30:44 2009 +0100"
      },
      "message": "sched: Simple helper functions for find_busiest_group()\n\nImpact: cleanup\n\nCurrently the load idx calculation code is in find_busiest_group().\nMove that to a static inline helper function.\n\nSimilary, to find the first cpu of a sched_group we use\ncpumask_first(sched_group_cpus(group))\n\nUse a helper to that. It improves readability in some cases.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Balbir Singh\" \u003cbalbir@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Dhaval Giani\" \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Bharata B Rao \u003cbharata@linux.vnet.ibm.com\u003e\nCc: \"Vaidyanathan Srinivasan\" \u003csvaidy@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090325091335.13992.55424.stgit@sofia.in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b6d9842258d1ba27fb978cded74eb4b6aa15edc8",
      "tree": "0fc02ca81720b6e4d19d372e346faad47f4f612c",
      "parents": [
        "67aa0f767af488a7f1e41cccb4f7a4893f24a1ab",
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:26:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 25 10:26:51 2009 +0100"
      },
      "message": "Merge branch \u0027sched/cleanups\u0027; commit \u0027v2.6.29\u0027 into sched/core\n"
    },
    {
      "commit": "e9d376f0fa66bd630fe27403669c6ae6c22a868f",
      "tree": "6eadef32eb421647ae98d88341b9aceb259aaf22",
      "parents": [
        "095160aee954688a9bad225952c4bee546541e19"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 05 11:51:38 2009 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "dynamic debug: combine dprintk and dynamic printk\n\nThis patch combines Greg Bank\u0027s dprintk() work with the existing dynamic\nprintk patchset, we are now calling it \u0027dynamic debug\u0027.\n\nThe new feature of this patchset is a richer /debugfs control file interface,\n(an example output from my system is at the bottom), which allows fined grained\ncontrol over the the debug output. The output can be controlled by function,\nfile, module, format string, and line number.\n\nfor example, enabled all debug messages in module \u0027nf_conntrack\u0027:\n\necho -n \u0027module nf_conntrack +p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nto disable them:\n\necho -n \u0027module nf_conntrack -p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nA further explanation can be found in the documentation patch.\n\nSigned-off-by: Greg Banks \u003cgnb@sgi.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "67aa0f767af488a7f1e41cccb4f7a4893f24a1ab",
      "tree": "7852ed82045798af8881f486b175c11512dd1437",
      "parents": [
        "efd247fa34084d9b162f485004ae6d8a04059f0c"
      ],
      "author": {
        "name": "Luis Henriques",
        "email": "henrix@sapo.pt",
        "time": "Tue Mar 24 22:10:02 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 24 23:16:51 2009 +0100"
      },
      "message": "sched: remove unused fields from struct rq\n\nImpact: cleanup, new schedstat ABI\n\nSince they are used on in statistics and are always set to zero, the\nfollowing fields from struct rq have been removed: yld_exp_empty,\nyld_act_empty and yld_both_empty.\n\nBoth Sched Debug and SCHEDSTAT_VERSION versions has also been\nincremented since ABIs have been changed.\n\nThe schedtop tool has been updated to properly handle new version of\nschedstat:\n\n   http://rt.wiki.kernel.org/index.php/Schedtop_utility\n\nSigned-off-by: Luis Henriques \u003chenrix@sapo.pt\u003e\nAcked-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20090324221002.GA10061@hades.domain.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9e41d9597e7825ec20d690013d32bcec5f3fe16a",
      "tree": "ac6fea59e9a4a1c2183d6bbd6ffa760680673afb",
      "parents": [
        "77ecfe8d427f554fabbf258e9d789f1d4c3afd63",
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Mar 24 13:38:30 2009 +1100"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Mar 24 13:38:30 2009 +1100"
      },
      "message": "Merge commit \u0027origin/master\u0027 into next\n"
    },
    {
      "commit": "703a3cd72817e99201cef84a8a7aecc60b2b3581",
      "tree": "3e943755178ff410694722bb031f523136fbc432",
      "parents": [
        "df7f54c012b92ec93d56b68547351dcdf8a163d3",
        "8e0ee43bc2c3e19db56a4adaa9a9b04ce885cd84"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 24 10:52:46 2009 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Tue Mar 24 10:52:46 2009 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n"
    },
    {
      "commit": "37bebc70d7ad4144c571d74500db3bb26ec0c0eb",
      "tree": "856ed72491c8e650dd4ad8f56d57bda4881fa231",
      "parents": [
        "d56ffd38a93841a07c839a375049a56b51e9567c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 23 20:34:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 20:43:35 2009 +0100"
      },
      "message": "posix timers: fix RLIMIT_CPU \u0026\u0026 fork()\n\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d12911\n\ncopy_signal() copies signal-\u003erlim, but RLIMIT_CPU is \"lost\". Because\nposix_cpu_timers_init_group() sets cputime_expires.prof_exp \u003d 0 and thus\nfastpath_timer_check() returns false unless we have other cpu timers.\n\nThis is the minimal fix for 2.6.29 (tested) and 2.6.28. The patch is not\noptimal, we need further cleanups here. With this patch update_rlimit_cpu()\nis not really needed, but I don\u0027t think it should be removed.\n\nThe proper fix (I think) is:\n\n\t- set_process_cpu_timer() should just start the cputimer-\u003erunning\n\t  logic (it does), no need to change cputime_expires.xxx_exp\n\n\t- posix_cpu_timers_init_group() should set -\u003erunning when needed\n\n\t- fastpath_timer_check() can check -\u003erunning instead of\n\t  task_cputime_zero(signal-\u003ecputime_expires)\n\nReported-by: Peter Lojkin \u003cia6432@inbox.ru\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e [for 2.6.29.x]\nLKML-Reference: \u003c20090323193411.GA17514@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "53da1d9456fe7f87a920a78fdbdcf1225d197cb7",
      "tree": "eccd5357ceff25a9a07be802ac0161c8c1842e64",
      "parents": [
        "b0dcb4a91ddb79f2e213205cf8d86b467f8559c7"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Mon Mar 23 16:07:24 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 23 09:22:31 2009 -0700"
      },
      "message": "fix ptrace slowness\n\nThis patch fixes bug #12208:\n\n  Bug-Entry       : http://bugzilla.kernel.org/show_bug.cgi?id\u003d12208\n  Subject         : uml is very slow on 2.6.28 host\n\nThis turned out to be not a scheduler regression, but an already\nexisting problem in ptrace being triggered by subtle scheduler\nchanges.\n\nThe problem is this:\n\n - task A is ptracing task B\n - task B stops on a trace event\n - task A is woken up and preempts task B\n - task A calls ptrace on task B, which does ptrace_check_attach()\n - this calls wait_task_inactive(), which sees that task B is still on the runq\n - task A goes to sleep for a jiffy\n - ...\n\nSince UML does lots of the above sequences, those jiffies quickly add\nup to make it slow as hell.\n\nThis patch solves this by not rescheduling in read_unlock() after\nptrace_stop() has woken up the tracer.\n\nThanks to Oleg Nesterov and Ingo Molnar for the feedback.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCC: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "efd247fa34084d9b162f485004ae6d8a04059f0c",
      "tree": "417dcbe06d5cce1353a4c19cbda480ae67652b5c",
      "parents": [
        "af66df5ecf9c9e2d2ff86e8203510c1c4519d64c",
        "59fcbddaff6f862cc1584b488866d9c4a5579085"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 16:53:20 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 16:53:20 2009 +0100"
      },
      "message": "Merge branches \u0027sched/debug\u0027 and \u0027linus\u0027 into sched/core\n"
    },
    {
      "commit": "b3e3b302cf6dc8d60b67f0e84d1fa5648889c038",
      "tree": "3f6150291664b4c62e328f6b1dcff79b54db612a",
      "parents": [
        "a6bc3262c561780d2a6587aa3d5715b1e7d8fa13",
        "59fcbddaff6f862cc1584b488866d9c4a5579085"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 10:07:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 23 10:07:49 2009 +0100"
      },
      "message": "Merge branches \u0027irq/sparseirq\u0027 and \u0027linus\u0027 into irq/core\n"
    },
    {
      "commit": "af66df5ecf9c9e2d2ff86e8203510c1c4519d64c",
      "tree": "c87b608c16911c48a9a55167891489f5714f66c7",
      "parents": [
        "37ba317c9ed19eb126e40bbf563f2711e191a636"
      ],
      "author": {
        "name": "Luis Henriques",
        "email": "henrix@sapo.pt",
        "time": "Wed Mar 18 00:04:25 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 18 09:57:26 2009 +0100"
      },
      "message": "sched: jiffies not printed per CPU\n\nThe jiffies value was being printed for each CPU, which does not seem to make\nsense.  Moved jiffies to system section.\n\nSigned-off-by: Luis Henriques \u003chenrix@sapo.pt\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20090318000425.GA2228@hades.domain.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6e2b75740bed35df98b8113300579e13ed2ce848",
      "tree": "225f75f803450c728d546c755f7398b102f8cf3d",
      "parents": [
        "ee568b25ee9e160b32d1aef73d8b2ee9c05d34db"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Mon Mar 16 18:13:36 2009 -0400"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Mar 18 09:31:21 2009 +1030"
      },
      "message": "module: fix refptr allocation and release order\n\nImpact: fix ref-after-free crash on failed module load\n\nFix refptr bug: Change refptr allocation and release order not to access a module\ndata structure pointed by \u0027mod\u0027 after freeing mod-\u003emodule_core.\nThis bug will cause kernel panic(e.g. failed to find undefined symbols).\n\nThis bug was reported on systemtap bugzilla.\nhttp://sources.redhat.com/bugzilla/show_bug.cgi?id\u003d9927\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "708dc5125309cd33c5daaad3026cc4ae6ef39c8b",
      "tree": "7a99f6b210ebba4b42123a933345e464e3052eef",
      "parents": [
        "80dd99b368cf6501be88ab517bbbb5bf352b75b8"
      ],
      "author": {
        "name": "Luis Henriques",
        "email": "henrix@sapo.pt",
        "time": "Mon Mar 16 19:59:02 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 12:04:41 2009 +0100"
      },
      "message": "sched: small optimisation of can_migrate_task()\n\nThere were 3 invocations of task_hot() in can_migrate_task().\n\nReplace these 3 invocations by only one invocation, cached in\na local variable.\n\nSigned-off-by: Luis Henriques \u003chenrix@sapo.pt\u003e\nLKML-Reference: \u003c20090316195902.GA6197@hades.domain.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "80dd99b368cf6501be88ab517bbbb5bf352b75b8",
      "tree": "f39c4babfd1c8d58526aefa932fb47696c617ac0",
      "parents": [
        "f6411fe7e09b67470a2569231d6fa566c7c29b8b"
      ],
      "author": {
        "name": "Luis Henriques",
        "email": "henrix@sapo.pt",
        "time": "Mon Mar 16 19:58:09 2009 +0000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 17 12:04:40 2009 +0100"
      },
      "message": "sched: fix typos in documentation\n\nFixed typos in function documentation.\n\nSigned-off-by: Luis Henriques \u003chenrix@sapo.pt\u003e\nLKML-Reference: \u003c20090316195809.GA6073@hades.domain.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "edb35028e40515beb2f94808aff8b3e71fb9f35a",
      "tree": "153da9f8ca1934b30474bb15478feb14a7bd5b75",
      "parents": [
        "8f8573ae9f5deefada6f5d64d0a52c9b39c730c7",
        "cb065c06b6cc615a58860d619d7fa7952cd6a18b",
        "5bee17f18b595937e6beafeee5197868a3f74a06"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:20:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:20:13 2009 +0100"
      },
      "message": "Merge branches \u0027irq/genirq\u0027 and \u0027linus\u0027 into irq/core\n"
    },
    {
      "commit": "0e57aa11abb15b70db53d1f95ae70b3c980ac885",
      "tree": "9e4c9fabfcaa095eba1e50252e341aa749c6e607",
      "parents": [
        "a9d0a1a38352c4fb8946e73b3e42ba4ada29e733"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 14:34:05 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 16:34:02 2009 +0100"
      },
      "message": "genirq: deprecate __do_IRQ\n\nTwo years migration time is enough. Remove the compability cruft.\n\nAdd the deprecated warning in kernel/irq/handle.c because marking\n__do_IRQ itself is way too noisy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4553573277906901f62f73c0432b332c53de5e2c",
      "tree": "4093af83302fa711e9079152089085927f60c838",
      "parents": [
        "bedd30d986a05e32dc3eab874e4b9ed8a38058bb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 22 23:00:32 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 14:32:29 2009 +0100"
      },
      "message": "genirq: use kzalloc instead of explicit zero initialization\n\nImpact: simplification\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "c8e2aeef0b8ac9fb8821b8b3734c031579d0b77a",
      "tree": "6b171eb497bdd5f21f9e6a0b06c4aa6c3c60b76b",
      "parents": [
        "3dd3d46b78c22503957230ca5981849b7bb29b9a"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 09 20:26:23 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 14:32:28 2009 +0100"
      },
      "message": "genirq: remove redundant if condition\n\nImpact: cleanup\n\nThe code is only compiled if CONFIG_GENERIC_HARDIRQS\u003dy so another\ncheck for this define in the code is redundant. Remove it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "88f502fedba82eff252b6420e8b8328e4ae25c67",
      "tree": "5063980d641f077da073ce972028c2b07ccb1bbc",
      "parents": [
        "f061d35150003b7fd5b133d14d66a74500fdaa60"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:32:07 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 10:32:07 2009 +0100"
      },
      "message": "futex: remove the pointer math from double_unlock_hb, fix\n\nImpact: fix double unlock crash\n\nThomas Gleixner noticed that the simplified double_unlock_hb()\nbecame ... too unsophisticated: in the hb1 \u003d\u003d hb2 case it will\ndo a double unlock.\n\nReported-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nLKML-Reference: \u003c20090312221118.11146.68610.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6411fe7e09b67470a2569231d6fa566c7c29b8b",
      "tree": "f12d569c70ff937175eb5cde2195fccfe2fa34eb",
      "parents": [
        "df1c99d416500da8d26a4d78777467c53ee7689e",
        "f24ade3a3332811a512ed3b6c6aa69486719b1d8",
        "9ead64974b05501bbac0d63a47c99fa786d064ba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 04:50:44 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 04:50:44 2009 +0100"
      },
      "message": "Merge branches \u0027sched/clock\u0027, \u0027sched/urgent\u0027 and \u0027linus\u0027 into sched/core\n"
    },
    {
      "commit": "f061d35150003b7fd5b133d14d66a74500fdaa60",
      "tree": "4181a2a13841804ed6ccb4345d2b340eeba941a2",
      "parents": [
        "e4dc5b7a36a49eff97050894cf1b3a9a02523717"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 15:11:18 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 01:15:46 2009 +0100"
      },
      "message": "futex: remove the pointer math from double_unlock_hb\n\nImpact: simplify code\n\nI mistakenly included the pointer value ordering in the\ndouble_unlock_hb() in my previous patch. It\u0027s only necessary\nin the double_lock_hb() function. This patch removes it.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312221118.11146.68610.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eb53b4e8fef10ccccb49a6dbb5e19ca84ba5a305",
      "tree": "156b1a9b799c0b1c4dc90b05a7b2468df56ca1c1",
      "parents": [
        "cbf94f06824780183e4bba165c7c29d5c7bd9a51"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Mar 12 21:05:59 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 13:16:33 2009 +0100"
      },
      "message": "irq: export remove_irq() and setup_irq() symbols\n\nExport the setup_irq() and remove_irq() symbols.\n\nI\u0027d like to export these functions since I have timer\ncode that needs to use setup_irq() early on (too early\nfor request_irq()), and the same code can also be\ncompiled as a module.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nLKML-Reference: \u003c20090312120559.2926.82371.sendpatchset@rx1.opensource.se\u003e\n[ changed to _GPL as these are special APIs deep inside the irq layer. ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cbf94f06824780183e4bba165c7c29d5c7bd9a51",
      "tree": "e1cfa04aee8ba76d79737526061c706defb1552c",
      "parents": [
        "f21cfb258df6dd3ea0b3e56d75c7e994edb81b35"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Mar 12 21:05:51 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 13:16:33 2009 +0100"
      },
      "message": "irq: match remove_irq() args with setup_irq()\n\nModify remove_irq() to match setup_irq().\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nLKML-Reference: \u003c20090312120551.2926.43942.sendpatchset@rx1.opensource.se\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f21cfb258df6dd3ea0b3e56d75c7e994edb81b35",
      "tree": "63d2c11d1857bdffab6bf3ed036af8e03d16abd7",
      "parents": [
        "f8cb22cbb8383c9f41e6ccbcd4fb94edb1048bda"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "damm@igel.co.jp",
        "time": "Thu Mar 12 21:05:42 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 13:16:32 2009 +0100"
      },
      "message": "irq: add remove_irq() for freeing of setup_irq() irqs\n\nImpact: add new API\n\nThis patch adds a remove_irq() function for releasing\ninterrupts requested with setup_irq().\n\nWithout this patch we have no way of releasing such\ninterrupts since free_irq() today tries to kfree()\nthe irqaction passed with setup_irq().\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nLKML-Reference: \u003c20090312120542.2926.56609.sendpatchset@rx1.opensource.se\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f8cb22cbb8383c9f41e6ccbcd4fb94edb1048bda",
      "tree": "9b3a333224ec895c053a694dcaff526502b84e6c",
      "parents": [
        "044d408409cc4e1bc75c886e27ca85c270db104c",
        "ebdcc81c71937b30e09110c02a1e8a21fa770b6f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 13:16:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 13:16:18 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/genirq\n"
    },
    {
      "commit": "e4dc5b7a36a49eff97050894cf1b3a9a02523717",
      "tree": "91a0aceb21b1869385507c2631bf97fbf180697b",
      "parents": [
        "e8f6386c01a5699c115bdad10271a24076364c97"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:56:13 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:57 2009 +0100"
      },
      "message": "futex: clean up fault logic\n\nImpact: cleanup\n\nOlder versions of the futex code held the mmap_sem which had to\nbe dropped in order to call get_user(), so a two-pronged fault\nhandling mechanism was employed to handle faults of the atomic\noperations.  The mmap_sem is no longer held, so get_user()\nshould be adequate.  This patch greatly simplifies the logic and\nimproves legibility.\n\nBuild and boot tested on a 4 way Intel x86_64 workstation.\nPasses basic pthread_mutex and PI tests out of\nltp/testcases/realtime.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312075612.9856.48612.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e8f6386c01a5699c115bdad10271a24076364c97",
      "tree": "7375a9b8961c0e0fd8e25176c7912375aaaa4d1e",
      "parents": [
        "16f4993f4e9860715918efd4eeac928f8de1218b"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:56:06 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:57 2009 +0100"
      },
      "message": "futex: unlock before returning -EFAULT\n\nImpact: rt-mutex failure case fix\n\nfutex_lock_pi can potentially return -EFAULT with the rt_mutex\nheld.  This seems like the wrong thing to do as userspace should\nassume -EFAULT means the lock was not taken.  Even if it could\nfigure this out, we\u0027d be leaving the pi_state-\u003eowner in an\ninconsistent state.  This patch unlocks the rt_mutex prior to\nreturning -EFAULT to userspace.\n\nBuild and boot tested on a 4 way Intel x86_64 workstation.\nPasses basic pthread_mutex and PI tests out of\nltp/testcases/realtime.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312075606.9856.88729.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "16f4993f4e9860715918efd4eeac928f8de1218b",
      "tree": "d5416de0cd3df09700e58c8148f67d6963ba19e9",
      "parents": [
        "5eb3dc62fc5986e85715041c23dcf3832812be4b"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:55:59 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:57 2009 +0100"
      },
      "message": "futex: use current-\u003etime_slack_ns for rt tasks too\n\nRT tasks should set their timer slack to 0 on their own.  This\npatch removes the \u0027if (rt_task()) slack \u003d 0;\u0027 block in\nfutex_wait.\n\nBuild and boot tested on a 4 way Intel x86_64 workstation.\nPasses basic pthread_mutex and PI tests out of\nltp/testcases/realtime.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nLKML-Reference: \u003c20090312075559.9856.28822.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5eb3dc62fc5986e85715041c23dcf3832812be4b",
      "tree": "e8b55b84cc50841ab7f7c87afdcc3d5e419cb4e9",
      "parents": [
        "de87fcc124a5d4a171aa32707b3265608ebda6e7"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:55:52 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:56 2009 +0100"
      },
      "message": "futex: add double_unlock_hb()\n\nImpact: cleanup\n\nThe futex code uses double_lock_hb() which locks the hb-\u003elock\u0027s\nin pointer value order.  There is no parallel unlock routine,\nand the code unlocks them in name order, ignoring pointer value.\n\nThis patch adds double_unlock_hb() to refactor the duplicated\ncode segments.\n\nBuild and boot tested on a 4 way Intel x86_64 workstation.\nPasses basic pthread_mutex and PI tests out of\nltp/testcases/realtime.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312075552.9856.48021.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de87fcc124a5d4a171aa32707b3265608ebda6e7",
      "tree": "5ba695dc0b13c7613c8e9306f9703c1b61ef41fc",
      "parents": [
        "b2d0994b1301fc3a6a89e1889578dac9227840e3"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:55:46 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:56 2009 +0100"
      },
      "message": "futex: additional (get|put)_futex_key() fixes\n\nImpact: fix races\n\nfutex_requeue and futex_lock_pi still had some bad\n(get|put)_futex_key() usage. This patch adds the missing\nput_futex_keys() and corrects a goto in futex_lock_pi() to avoid\na double get.\n\nBuild and boot tested on a 4 way Intel x86_64 workstation.\nPasses basic pthread_mutex and PI tests out of\nltp/testcases/realtime.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312075545.9856.75152.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b2d0994b1301fc3a6a89e1889578dac9227840e3",
      "tree": "176a417a86d7072b014f1f872787eff7da2034de",
      "parents": [
        "ebdcc81c71937b30e09110c02a1e8a21fa770b6f"
      ],
      "author": {
        "name": "Darren Hart",
        "email": "dvhltc@us.ibm.com",
        "time": "Thu Mar 12 00:55:37 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 12 11:20:55 2009 +0100"
      },
      "message": "futex: update futex commentary\n\nImpact: cleanup\n\nThe futex_hash_bucket can be a bit confusing when first looking\nat the code as it is a shared queue (and futex_q isn\u0027t a queue\nat all, but rather an element on the queue).\n\nThe mmap_sem is no longer held outside of the\nfutex_handle_fault() routine, yet numerous comments refer to it.\nThe fshared argument is no an integer.  I left some of these\ncomments along as they are simply removed in future patches.\n\nSome of the commentary refering to futexes by virtual page\nmappings was not very clear, and completely accurate (as for\nshared futexes both the page and the offset are used to\ndetermine the key).  For the purposes of the function\ndescription, just referring to \"the futex\" seems sufficient.\n\nWith hashed futexes we now access the page after the hash-bucket\nis locked, and not only after it is enqueued.\n\nSigned-off-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c20090312075537.9856.29954.stgit@Aeon\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "df1c99d416500da8d26a4d78777467c53ee7689e",
      "tree": "4f61ea769c43bfc985b760649d2c4ba5089ff608",
      "parents": [
        "57310a98a354e84279d7c8af2f48805a62372e53"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Tue Mar 10 19:08:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 11 11:31:50 2009 +0100"
      },
      "message": "sched: add avg_overlap decay\n\nImpact: more precise avg_overlap metric - better load-balancing\n\navg_overlap is used to measure the runtime overlap of the waker and\nwakee.\n\nHowever, when a process changes behaviour, eg a pipe becomes\nun-congested and we don\u0027t need to go to sleep after a wakeup\nfor a while, the avg_overlap value grows stale.\n\nWhen running we use the avg runtime between preemption as a\nmeasure for avg_overlap since the amount of runtime can be\ncorrelated to cache footprint.\n\nThe longer we run, the less likely we\u0027ll be wanting to be\nmigrated to another CPU.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1236709131.25234.576.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e14eee56c2280953c6e3d24d5dce42bd90836b81",
      "tree": "21ab792d9ad6fbbab460058f352a0158f995644e",
      "parents": [
        "d6ee6f7e4c74d9a0fed7544f4d389bde004651d3",
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Mar 11 17:10:07 2009 +1100"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Mar 11 17:10:07 2009 +1100"
      },
      "message": "Merge commit \u0027origin/master\u0027 into next\n"
    },
    {
      "commit": "be50b8342dead8cacf57d4839240106b225d31f5",
      "tree": "a5f40b583e4c008313b090426fa785d178348e76",
      "parents": [
        "d58ab5cf09679d8cb4824e22cae900c0eab5ab31"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Tue Mar 10 12:55:56 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 10 15:55:11 2009 -0700"
      },
      "message": "kernel/user.c: fix a memory leak when freeing up non-init usernamespaces users\n\nWe were returning early in the sysfs directory cleanup function if the\nuser belonged to a non init usernamespace.  Due to this a lot of the\ncleanup was not done and we were left with a leak.  Fix the leak.\n\nReported-by: Serge Hallyn \u003cserue@linux.vnet.ibm.com\u003e\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Serge Hallyn \u003cserue@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": "57310a98a354e84279d7c8af2f48805a62372e53",
      "tree": "e0027f76f0d48da80f49cf6948de860402572837",
      "parents": [
        "8c54436ae9f59146b3d02820a3ebbf71e61f2aee"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Mon Mar 09 13:56:21 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 16:43:36 2009 +0100"
      },
      "message": "sched: optimize ttwu vs group scheduling\n\nImpact: micro-optimization\n\nWe can avoid the sched domain walk on try_to_wake_up() when we know\nthere are no groups.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1236603381.8389.455.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8c54436ae9f59146b3d02820a3ebbf71e61f2aee",
      "tree": "0ab1a3847809bd7d5f44fc52b1f16fabd953c4bb",
      "parents": [
        "5ed0cec0ac5f1b3759bdbe4d9df32ee4ff8afb5a",
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 16:34:43 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 16:34:43 2009 +0100"
      },
      "message": "Merge branches \u0027sched/cleanups\u0027 and \u0027linus\u0027 into sched/core\n"
    },
    {
      "commit": "2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205",
      "tree": "7f3fa06b708a508f4cc0fa6ef7894ede14101c87",
      "parents": [
        "df0b4a5080ca668636831b641a6356500fb5c637"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Mar 02 22:58:45 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:25 2009 -0700"
      },
      "message": "copy_process: fix CLONE_PARENT \u0026\u0026 parent_exec_id interaction\n\nCLONE_PARENT can fool the -\u003eself_exec_id/parent_exec_id logic. If we\nre-use the old parent, we must also re-use -\u003eparent_exec_id to make\nsure exit_notify() sees the right -\u003exxx_exec_id\u0027s when the CLONE_PARENT\u0027ed\ntask exits.\n\nAlso, move down the \"p-\u003eparent_exec_id \u003d p-\u003eself_exec_id\" thing, to place\ntwo different cases together.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Serge E. Hallyn \u003cserge@hallyn.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d5b5acca9e566515ef3f1ed617e7295c4f94345",
      "tree": "cad7d2487a95bacbf18ca06be3cef96d4dcf87c9",
      "parents": [
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Mar 09 13:31:59 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 08:13:35 2009 -0700"
      },
      "message": "Fix fixpoint divide exception in acct_update_integrals\n\nFrans Pop reported the crash below when running an s390 kernel under Hercules:\n\n  Kernel BUG at 000738b4  verbose debug info unavailable!\n  fixpoint divide exception: 0009  #1! SMP\n  Modules linked in: nfs lockd nfs_acl sunrpc ctcm fsm tape_34xx\n     cu3088 tape ccwgroup tape_class ext3 jbd mbcache dm_mirror dm_log dm_snapshot\n     dm_mod dasd_eckd_mod dasd_mod\n  CPU: 0 Not tainted 2.6.27.19 #13\n  Process awk (pid: 2069, task: 0f9ed9b8, ksp: 0f4f7d18)\n  Krnl PSW : 070c1000 800738b4 (acct_update_integrals+0x4c/0x118)\n             R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0\n  Krnl GPRS: 00000000 000007d0 7fffffff fffff830\n             00000000 ffffffff 00000002 0f9ed9b8\n             00000000 00008ca0 00000000 0f9ed9b8\n             0f9edda4 8007386e 0f4f7ec8 0f4f7e98\n  Krnl Code: 800738aa: a71807d0         lhi     %r1,2000\n             800738ae: 8c200001         srdl    %r2,1\n             800738b2: 1d21             dr      %r2,%r1\n            \u003e800738b4: 5810d10e         l       %r1,270(%r13)\n             800738b8: 1823             lr      %r2,%r3\n             800738ba: 4130f060         la      %r3,96(%r15)\n             800738be: 0de1             basr    %r14,%r1\n             800738c0: 5800f060         l       %r0,96(%r15)\n  Call Trace:\n  ( \u003c000000000004fdea\u003e! blocking_notifier_call_chain+0x1e/0x2c)\n    \u003c0000000000038502\u003e! do_exit+0x106/0x7c0\n    \u003c0000000000038c36\u003e! do_group_exit+0x7a/0xb4\n    \u003c0000000000038c8e\u003e! SyS_exit_group+0x1e/0x30\n    \u003c0000000000021c28\u003e! sysc_do_restart+0x12/0x16\n    \u003c0000000077e7e924\u003e! 0x77e7e924\n\nReason for this is that cpu time accounting usually only happens from\ninterrupt context, but acct_update_integrals gets also called from\nprocess context with interrupts enabled.\n\nSo in acct_update_integrals we may end up with the following scenario:\n\nBetween reading tsk-\u003estime/tsk-\u003eutime and tsk-\u003eacct_timexpd an interrupt\nhappens which updates accouting values.  This causes acct_timexpd to be\ngreater than the former stime + utime.  The subsequent calculation of\n\n\tdtime \u003d cputime_sub(time, tsk-\u003eacct_timexpd);\n\nwill be negative and the division performed by\n\n\tcputime_to_jiffies(dtime)\n\nwill generate an exception since the result won\u0027t fit into a 32 bit\nregister.\n\nIn order to fix this just always disable interrupts while accessing any\nof the accounting values.\n\nReported by: Frans Pop \u003celendil@planet.nl\u003e\nTested by: Frans Pop \u003celendil@planet.nl\u003e\nCc: stable@kernel.org\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ed0cec0ac5f1b3759bdbe4d9df32ee4ff8afb5a",
      "tree": "a804da35b296f278865b194661cc6e75bfdaf11f",
      "parents": [
        "7fc07d84108d54c5b94625c0e168f31b2d66976e"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 06 19:40:20 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 12:48:55 2009 +0100"
      },
      "message": "sched: TIF_NEED_RESCHED -\u003e need_reshed() cleanup\n\nImpact: cleanup\n\nUse test_tsk_need_resched(), set_tsk_need_resched(), need_resched()\ninstead of using TIF_NEED_RESCHED.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c49B10BA4.9070209@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7fc07d84108d54c5b94625c0e168f31b2d66976e",
      "tree": "bebcbcae186108a815de0c1b90e25b1a5fa3852c",
      "parents": [
        "b67802ea8061393f7bd2d4db934646e76096027c",
        "8a0be9ef8225638d26b455788f988c8f84ce9e75"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:47:52 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 11:47:52 2009 +0100"
      },
      "message": "Merge branch \u0027sched/core\u0027 into sched/cleanups\n"
    },
    {
      "commit": "edcb463997ed7b2ffa3bac76e3e75957318f2e01",
      "tree": "d1eefb78736404993b0de4a049392f9af578e29e",
      "parents": [
        "3e24aa58907c62bc79d1094e941a374568f62522"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Mar 06 14:33:59 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Mar 06 14:33:59 2009 +0900"
      },
      "message": "percpu, module: implement reserved allocation and use it for module percpu variables\n\nImpact: add reserved allocation functionality and use it for module\n\tpercpu variables\n\nThis patch implements reserved allocation from the first chunk.  When\nsetting up the first chunk, arch can ask to set aside certain number\nof bytes right after the core static area which is available only\nthrough a separate reserved allocator.  This will be used primarily\nfor module static percpu variables on architectures with limited\nrelocation range to ensure that the module perpcu symbols are inside\nthe relocatable range.\n\nIf reserved area is requested, the first chunk becomes reserved and\nisn\u0027t available for regular allocation.  If the first chunk also\nincludes piggy-back dynamic allocation area, a separate chunk mapping\nthe same region is created to serve dynamic allocation.  The first one\nis called static first chunk and the second dynamic first chunk.\nAlthough they share the page map, their different area map\ninitializations guarantee they serve disjoint areas according to their\npurposes.\n\nIf arch doesn\u0027t setup reserved area, reserved allocation is handled\nlike any other allocation.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "8a0be9ef8225638d26b455788f988c8f84ce9e75",
      "tree": "7c4468532d09c405bd884f9f6ff2207619764355",
      "parents": [
        "49d2d266adff27793fed247a2e9e672d59b6ddc6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Mar 05 01:27:02 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 14:04:44 2009 +0100"
      },
      "message": "sched: don\u0027t rebalance if attached on NULL domain\n\nImpact: fix function graph trace hang / drop pointless softirq on UP\n\nWhile debugging a function graph trace hang on an old PII, I saw\nthat it consumed most of its time on the timer interrupt. And\nthe domain rebalancing softirq was the most concerned.\n\nThe timer interrupt calls trigger_load_balance() which will\ndecide if it is worth to schedule a rebalancing softirq.\n\nIn case of builtin UP kernel, no problem arises because there is\nno domain question.\n\nIn case of builtin SMP kernel running on an SMP box, still no\nproblem, the softirq will be raised each time we reach the\nnext_balance time.\n\nIn case of builtin SMP kernel running on a UP box (most distros\nprovide default SMP kernels, whatever the box you have), then\nthe CPU is attached to the NULL sched domain. So a kind of\nunexpected behaviour happen:\n\ntrigger_load_balance() -\u003e raises the rebalancing softirq later\non softirq: run_rebalance_domains() -\u003e rebalance_domains() where\nthe for_each_domain(cpu, sd) is not taken because of the NULL\ndomain we are attached at. Which means rq-\u003enext_balance is never\nupdated. So on the next timer tick, we will enter\ntrigger_load_balance() which will always reschedule() the\nrebalacing softirq:\n\nif (time_after_eq(jiffies, rq-\u003enext_balance))\n\traise_softirq(SCHED_SOFTIRQ);\n\nSo for each tick, we process this pointless softirq.\n\nThis patch fixes it by checking if we are attached to the null\ndomain before raising the softirq, another possible fix would be\nto set the maximal possible JIFFIES value to rq-\u003enext_balance if\nwe are attached to the NULL domain.\n\nv2: build fix on UP\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c49af242d.1c07d00a.32d5.ffffc019@mx.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "49d2d266adff27793fed247a2e9e672d59b6ddc6",
      "tree": "aa23052f8b6e9f1a96e56873c940eef7110f0013",
      "parents": [
        "5512b3ece0cbb5024b83099963222700aa45f59e",
        "fec6c6fec3e20637bee5d276fb61dd8b49a3f9cc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 11:59:10 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 05 11:59:10 2009 +0100"
      },
      "message": "Merge commit \u0027v2.6.29-rc7\u0027 into sched/core\n"
    },
    {
      "commit": "508827ff0ac3981d420edac64a70de7f4e304d38",
      "tree": "b0cee8ddef9f0ceab68c388e4ae46b7295eb2cb5",
      "parents": [
        "2c3c3d02f28801d7ad2da4952b2c7ca6621ef221",
        "72e2240f181871675d3a979766330c91d48a1673"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 05 02:06:47 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/tokenring/tmspci.c\n\tdrivers/net/ucc_geth_mii.c\n"
    },
    {
      "commit": "64ca5ab913f1594ef316556e65f5eae63ff50cee",
      "tree": "44cecee89609fbec9e4d7ed853b0eaf5c3782fc3",
      "parents": [
        "559595a985e106d2fa9f0c79b7f5805453fed593"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Mar 04 12:11:56 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 22:08:45 2009 +0100"
      },
      "message": "rcu: increment quiescent state counter in ksoftirqd()\n\nIf a machine is flooded by network frames, a cpu can loop\n100% of its time inside ksoftirqd() without calling schedule().\nThis can delay RCU grace period to insane values.\n\nAdding rcu_qsctr_inc() call in ksoftirqd() solves this problem.\n\nPaul: \"This regression was a result of the recent change from\n\"schedule()\" to \"cond_resched()\", which got rid of that quiescent\nstate in the common case where a reschedule is not needed\".\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "91d75e209bd59695f0708d66964d928d45b3b2f3",
      "tree": "32cab1359d951e4193bebb181a0f0319824a2b95",
      "parents": [
        "9976b39b5031bbf76f715893cf080b6a17683881",
        "8b0e5860cb099d7958d13b00ffbc35ad02735700"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:29:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:29:19 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into core/percpu\n"
    },
    {
      "commit": "8b0e5860cb099d7958d13b00ffbc35ad02735700",
      "tree": "fa95e40d50a891c9a671873c7effbc8a66c6b47d",
      "parents": [
        "b6122b3843216f3f8e9624f9e876f4f0514f9205",
        "327f4387e39cf7bfe79a673e56dbf5479db3fec9",
        "c577b098f9bf467fb05dc279ba83604cb3f7cea0",
        "03787ceed8f7bf06af29f3b213017d89f8e9423d",
        "2fb6b2a048ed8fa3f049c7d42f7a2dd3f0c8d7a6",
        "ab76f3d771590d5c89faa3219559c5d3fc0ce0c2",
        "2505170211f7630361a852e25b60f4df4c878daa",
        "780eef9492b16a1543a3b2ae9f9526a735fc9856"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:22:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Mar 04 02:22:31 2009 +0100"
      },
      "message": "Merge branches \u0027x86/apic\u0027, \u0027x86/cpu\u0027, \u0027x86/fixmap\u0027, \u0027x86/mm\u0027, \u0027x86/sched\u0027, \u0027x86/setup-lzma\u0027, \u0027x86/signal\u0027 and \u0027x86/urgent\u0027 into x86/core\n"
    },
    {
      "commit": "219f170a85fee524fa528ef75a0432b79af95d0b",
      "tree": "13489998c59c5d7ac6d46b7835c7f4a6ccfab2e6",
      "parents": [
        "3024e4a99744f5b59704a6570524a312f94f010f",
        "54e991242850edc8c53f71fa5aa3ba7a93ce38f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:33:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:33:20 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:\n  sched: don\u0027t allow setuid to succeed if the user does not have rt bandwidth\n  sched_rt: don\u0027t start timer when rt bandwidth disabled\n"
    },
    {
      "commit": "b24746c7be75384d182845375c96433d713981bb",
      "tree": "fdb0371d9e59c94e18c946a88c4aa3bcfa4af9b1",
      "parents": [
        "f41bf2ab998daaa2ac27348d5813e0ae21c57ded",
        "a682604838763981613e42015cd0e39f2989d6bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:32:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:32:04 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  rcu: Teach RCU that idle task is not quiscent state at boot\n"
    },
    {
      "commit": "5b1017404aea6d2e552e991b3fd814d839e9cd67",
      "tree": "8af3679beab1541d8c77afe28bc261196f03c083",
      "parents": [
        "ccbe495caa5e604b04d5a31d7459a6f6a76a756c"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Fri Feb 27 23:25:54 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 15:41:30 2009 -0800"
      },
      "message": "x86-64: seccomp: fix 32/64 syscall hole\n\nOn x86-64, a 32-bit process (TIF_IA32) can switch to 64-bit mode with\nljmp, and then use the \"syscall\" instruction to make a 64-bit system\ncall.  A 64-bit process make a 32-bit system call with int $0x80.\n\nIn both these cases under CONFIG_SECCOMP\u003dy, secure_computing() will use\nthe wrong system call number table.  The fix is simple: test TS_COMPAT\ninstead of TIF_IA32.  Here is an example exploit:\n\n\t/* test case for seccomp circumvention on x86-64\n\n\t   There are two failure modes: compile with -m64 or compile with -m32.\n\n\t   The -m64 case is the worst one, because it does \"chmod 777 .\" (could\n\t   be any chmod call).  The -m32 case demonstrates it was able to do\n\t   stat(), which can glean information but not harm anything directly.\n\n\t   A buggy kernel will let the test do something, print, and exit 1; a\n\t   fixed kernel will make it exit with SIGKILL before it does anything.\n\t*/\n\n\t#define _GNU_SOURCE\n\t#include \u003cassert.h\u003e\n\t#include \u003cinttypes.h\u003e\n\t#include \u003cstdio.h\u003e\n\t#include \u003clinux/prctl.h\u003e\n\t#include \u003csys/stat.h\u003e\n\t#include \u003cunistd.h\u003e\n\t#include \u003casm/unistd.h\u003e\n\n\tint\n\tmain (int argc, char **argv)\n\t{\n\t  char buf[100];\n\t  static const char dot[] \u003d \".\";\n\t  long ret;\n\t  unsigned st[24];\n\n\t  if (prctl (PR_SET_SECCOMP, 1, 0, 0, 0) !\u003d 0)\n\t    perror (\"prctl(PR_SET_SECCOMP) -- not compiled into kernel?\");\n\n\t#ifdef __x86_64__\n\t  assert ((uintptr_t) dot \u003c (1UL \u003c\u003c 32));\n\t  asm (\"int $0x80 # %0 \u003c- %1(%2 %3)\"\n\t       : \"\u003da\" (ret) : \"0\" (15), \"b\" (dot), \"c\" (0777));\n\t  ret \u003d snprintf (buf, sizeof buf,\n\t\t\t  \"result %ld (check mode on .!)\\n\", ret);\n\t#elif defined __i386__\n\t  asm (\".code32\\n\"\n\t       \"pushl %%cs\\n\"\n\t       \"pushl $2f\\n\"\n\t       \"ljmpl $0x33, $1f\\n\"\n\t       \".code64\\n\"\n\t       \"1: syscall # %0 \u003c- %1(%2 %3)\\n\"\n\t       \"lretl\\n\"\n\t       \".code32\\n\"\n\t       \"2:\"\n\t       : \"\u003da\" (ret) : \"0\" (4), \"D\" (dot), \"S\" (\u0026st));\n\t  if (ret \u003d\u003d 0)\n\t    ret \u003d snprintf (buf, sizeof buf,\n\t\t\t    \"stat . -\u003e st_uid\u003d%u\\n\", st[7]);\n\t  else\n\t    ret \u003d snprintf (buf, sizeof buf, \"result %ld\\n\", ret);\n\t#else\n\t# error \"not this one\"\n\t#endif\n\n\t  write (1, buf, ret);\n\n\t  syscall (__NR_exit, 1);\n\t  return 2;\n\t}\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\n[ I don\u0027t know if anybody actually uses seccomp, but it\u0027s enabled in\n  at least both Fedora and SuSE kernels, so maybe somebody is. - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "044d408409cc4e1bc75c886e27ca85c270db104c",
      "tree": "c2286707e9d4983a4828b0a4133181031de36964",
      "parents": [
        "c02368a9d059322f913a58111eade87a656fefd5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Mar 02 16:13:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 03 00:05:45 2009 +0100"
      },
      "message": "genirq: assert that irq handlers are indeed running in hardirq context\n\nMake sure the genirq layer handlers are indeed running handlers\nin hardirq context. That is the genirq expectation and doing\nanything else is broken.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c1236006812.5330.632.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c02368a9d059322f913a58111eade87a656fefd5",
      "tree": "2f02dbbe69b86535f58d2010d9adfb20a9c16fb9",
      "parents": [
        "f17c75453b2d195eba0a90d9f16a3ba88c85b3b4",
        "778ef1e6cbb049c9bcbf405936ee6f2b6e451892"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 22:08:56 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 22:08:56 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/genirq\n"
    },
    {
      "commit": "b67802ea8061393f7bd2d4db934646e76096027c",
      "tree": "f2caeed0a8c1f5564e12d63d8c50a89bd3cd6b27",
      "parents": [
        "72fd455ba54b5a02b9c74221b9ded8b1845b464a"
      ],
      "author": {
        "name": "Wang Chen",
        "email": "wangchen@cn.fujitsu.com",
        "time": "Mon Mar 02 13:55:26 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 12:02:53 2009 +0100"
      },
      "message": "sched: kill unused parameter of pick_next_task()\n\nImpact: micro-optimization\n\nParameter \"prev\" is not used really.\n\nSigned-off-by: Wang Chen \u003cwangchen@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5512b3ece0cbb5024b83099963222700aa45f59e",
      "tree": "24d60f354652f8b9ed5b0820aeb9da6add7be493",
      "parents": [
        "c40c6f85a7594ad842233885386a0ca4cd40eafe",
        "8325d9c09dedf45476f4d6261d1b6a72e4a7453f",
        "54e991242850edc8c53f71fa5aa3ba7a93ce38f5",
        "778ef1e6cbb049c9bcbf405936ee6f2b6e451892"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 12:02:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 12:02:36 2009 +0100"
      },
      "message": "Merge branches \u0027sched/clock\u0027, \u0027sched/urgent\u0027 and \u0027linus\u0027 into sched/core\n"
    }
  ],
  "next": "aa4abc9bcce0d2a7ec189e897f8f8c58ca04643b"
}
