)]}'
{
  "log": [
    {
      "commit": "550acb19269d65f32e9ac4ddb26c2b2070e37f1c",
      "tree": "804925b363142e47a4a26f1afcfb8f9e302bed0e",
      "parents": [
        "b930c26416c4ea6855726fd977145ccea9afbdda"
      ],
      "author": {
        "name": "Ido Yariv",
        "email": "ido@wizery.com",
        "time": "Thu Dec 01 13:55:08 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 11:54:24 2011 +0100"
      },
      "message": "genirq: Fix race condition when stopping the irq thread\n\nIn irq_wait_for_interrupt(), the should_stop member is verified before\nsetting the task\u0027s state to TASK_INTERRUPTIBLE and calling schedule().\nIn case kthread_stop sets should_stop and wakes up the process after\nshould_stop is checked by the irq thread but before the task\u0027s state\nis changed, the irq thread might never exit:\n\nkthread_stop                    irq_wait_for_interrupt\n------------                    ----------------------\n\n                                 ...\n...                              while (!kthread_should_stop()) {\nkthread-\u003eshould_stop \u003d 1;\nwake_up_process(k);\nwait_for_completion(\u0026kthread-\u003eexited);\n...\n                                     set_current_state(TASK_INTERRUPTIBLE);\n\n                                     ...\n\n                                     schedule();\n                                 }\n\nFix this by checking if the thread should stop after modifying the\ntask\u0027s state.\n\n[ tglx: Simplified it a bit ]\n\nSigned-off-by: Ido Yariv \u003cido@wizery.com\u003e\nLink: http://lkml.kernel.org/r/1322740508-22640-1-git-send-email-ido@wizery.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "ce8f55c2a0ff652480c12a4f1f22ff5ce15e3a22",
      "tree": "cba248174b2380106b93bb73bdf5de5368e1dca8",
      "parents": [
        "52553ddffad76ccf192d4dd9ce88d5818f57f62a",
        "2ed0e645f358c26f4f4a7aed56a9488db0020ad1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 28 08:43:32 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 28 08:43:32 2011 -0800"
      },
      "message": "Merge branch \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Don\u0027t allow per cpu interrupts to be suspended\n"
    },
    {
      "commit": "52553ddffad76ccf192d4dd9ce88d5818f57f62a",
      "tree": "c455a00601de4deeb4d9cc759e8b527ca574293a",
      "parents": [
        "401d0069cb344f401bc9d264c31db55876ff78c0"
      ],
      "author": {
        "name": "Edward Donovan",
        "email": "edward.donovan@numble.net",
        "time": "Sun Nov 27 23:07:34 2011 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 28 08:43:09 2011 -0800"
      },
      "message": "genirq: fix regression in irqfixup, irqpoll\n\nCommit fa27271bc8d2(\"genirq: Fixup poll handling\") introduced a\nregression that broke irqfixup/irqpoll for some hardware configurations.\n\nAmidst reorganizing \u0027try_one_irq\u0027, that patch removed a test that\nchecked for \u0027action-\u003ehandler\u0027 returning IRQ_HANDLED, before acting on\nthe interrupt.  Restoring this test back returns the functionality lost\nsince 2.6.39.  In the current set of tests, after \u0027action\u0027 is set, it\nmust precede \u0027!action-\u003enext\u0027 to take effect.\n\nWith this and my previous patch to irq/spurious.c, c75d720fca8a, all\nIRQ regressions that I have encountered are fixed.\n\nSigned-off-by: Edward Donovan \u003cedward.donovan@numble.net\u003e\nReported-and-tested-by: Rogério Brito \u003crbrito@ime.usp.br\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org (2.6.39+)\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ed0e645f358c26f4f4a7aed56a9488db0020ad1",
      "tree": "f8425da7c40d068d532cc53313eebdd3414e5047",
      "parents": [
        "aa1b052a34d7ec85b23f4fba564df24b9477201b"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Wed Nov 16 12:27:39 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Nov 17 17:44:04 2011 +0100"
      },
      "message": "genirq: Don\u0027t allow per cpu interrupts to be suspended\n\nThe power management functions related to interrupts do not know\n(yet) about per-cpu interrupts and end up calling the wrong\nlow-level methods to enable/disable interrupts.\n\nThis leads to all kind of interesting issues (action taken on one\nCPU only, updating a refcount which is not used otherwise...).\n\nThe workaround for the time being is simply to flag these interrupts\nwith IRQF_NO_SUSPEND. At least on ARM, these interrupts are actually\ndealt with at the architecture level.\n\nReported-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nTested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nLink: http://lkml.kernel.org/r/1321446459-31409-1-git-send-email-marc.zyngier@arm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "aa1b052a34d7ec85b23f4fba564df24b9477201b",
      "tree": "904f0ede7a80b9c8e6e341bfb5d72b8731767d24",
      "parents": [
        "bd29e568a4cb6465f6e5ec7c1c1f3ae7d99cbec1",
        "c75d720fca8a91ce99196d33adea383621027bf2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 17 11:46:26 2011 -0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 17 11:46:26 2011 -0200"
      },
      "message": "Merge branch \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Fix irqfixup, irqpoll regression\n"
    },
    {
      "commit": "32aaeffbd4a7457bf2f7448b33b5946ff2a960eb",
      "tree": "faf7ad871d87176423ff9ed1d1ba4d9c688fc23f",
      "parents": [
        "208bca0860406d16398145ddd950036a737c3c9d",
        "67b84999b1a8b1af5625b1eabe92146c5eb42932"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 06 19:44:47 2011 -0800"
      },
      "message": "Merge branch \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\n* \u0027modsplit-Oct31_2011\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)\n  Revert \"tracing: Include module.h in define_trace.h\"\n  irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n  bluetooth: macroize two small inlines to avoid module.h\n  ip_vs.h: fix implicit use of module_get/module_put from module.h\n  nf_conntrack.h: fix up fallout from implicit moduleparam.h presence\n  include: replace linux/module.h with \"struct module\" wherever possible\n  include: convert various register fcns to macros to avoid include chaining\n  crypto.h: remove unused crypto_tfm_alg_modname() inline\n  uwb.h: fix implicit use of asm/page.h for PAGE_SIZE\n  pm_runtime.h: explicitly requires notifier.h\n  linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h\n  miscdevice.h: fix up implicit use of lists and types\n  stop_machine.h: fix implicit use of smp.h for smp_processor_id\n  of: fix implicit use of errno.h in include/linux/of.h\n  of_platform.h: delete needless include \u003clinux/module.h\u003e\n  acpi: remove module.h include from platform/aclinux.h\n  miscdevice.h: delete unnecessary inclusion of module.h\n  device_cgroup.h: delete needless include \u003clinux/module.h\u003e\n  net: sch_generic remove redundant use of \u003clinux/module.h\u003e\n  net: inet_timewait_sock doesnt need \u003clinux/module.h\u003e\n  ...\n\nFix up trivial conflicts (other header files, and  removal of the ab3550 mfd driver) in\n - drivers/media/dvb/frontends/dibx000_common.c\n - drivers/media/video/{mt9m111.c,ov6650.c}\n - drivers/mfd/ab3550-core.c\n - include/linux/dmaengine.h\n"
    },
    {
      "commit": "c75d720fca8a91ce99196d33adea383621027bf2",
      "tree": "8b5f2605c4bbd61f2cc43f37a163b60d073433cd",
      "parents": [
        "c3b92c8787367a8bb53d57d9789b558f1295cc96"
      ],
      "author": {
        "name": "Edward Donovan",
        "email": "edward.donovan@numble.net",
        "time": "Tue Nov 01 15:29:44 2011 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Nov 03 13:12:39 2011 +0100"
      },
      "message": "genirq: Fix irqfixup, irqpoll regression\n\ncommit d05c65fff0 (\"genirq: spurious: Run only one poller at a time\")\nintroduced a regression, leaving the boot options \u0027irqfixup\u0027 and\n\u0027irqpoll\u0027 non-functional. The patch placed tests in each function, to\nexit if the function is already running. The test in \u0027misrouted_irq\u0027\nexited when it should have proceeded, effectively disabling\n\u0027misrouted_irq\u0027 and \u0027poll_spurious_irqs\u0027.\n\nThe check for an already running poller needs to be \"!\u003d 1\" not \"\u003d\u003d 1\"\nas \"1\" is the value when the first poller starts running.\n\nSigned-off-by: Edward Donovan \u003cedward.donovan@numble.net\u003e\nCc: maciej.rutecki@gmail.com\nLink: http://lkml.kernel.org/r/1320175784-6745-1-git-send-email-edward.donovan@numble.net\nCc: stable@vger.kernel.org # \u003e\u003d 2.6.39\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "367069f16e32e188d4687fe2c3e30f2ca583836f",
      "tree": "977f87038b75e53af9d132cba2f7a2aecb2fa005",
      "parents": [
        "81a3c10ce8a7fd5bf9a06bfc38bd417512911831",
        "c72dbae971400e466ad9ff16c920cd6d9d8c55a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 01 21:02:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 01 21:02:35 2011 -0700"
      },
      "message": "Merge branch \u0027next/dt\u0027 of git://git.linaro.org/people/arnd/arm-soc\n\n* \u0027next/dt\u0027 of git://git.linaro.org/people/arnd/arm-soc:\n  ARM: gic: use module.h instead of export.h\n  ARM: gic: fix irq_alloc_descs handling for sparse irq\n  ARM: gic: add OF based initialization\n  ARM: gic: add irq_domain support\n  irq: support domains with non-zero hwirq base\n  of/irq: introduce of_irq_init\n  ARM: at91: add at91sam9g20 and Calao USB A9G20 DT support\n  ARM: at91: dt: at91sam9g45 family and board device tree files\n  arm/mx5: add device tree support for imx51 babbage\n  arm/mx5: add device tree support for imx53 boards\n  ARM: msm: Add devicetree support for msm8660-surf\n  msm_serial: Add devicetree support\n  msm_serial: Use relative resources for iomem\n\nFix up conflicts in arch/arm/mach-at91/{at91sam9260.c,at91sam9g45.c}\n"
    },
    {
      "commit": "ec53cf23c0ddb0c29950b9a4ac46964c4c6c6c2f",
      "tree": "198b2e172c5d9043ee10341092900e584c5f97f6",
      "parents": [
        "1d58996da6a8045c8df2899ce5689a19c721322f"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Sep 19 20:33:19 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:32:35 2011 -0400"
      },
      "message": "irq: don\u0027t put module.h into irq.h for tracking irqgen modules.\n\nRecent commit \"irq: Track the  owner of irq descriptor\" in\ncommit ID b6873807a7143b7 placed module.h into linux/irq.h\nbut we are trying to limit module.h inclusion to just C files\nthat really need it, due to its size and number of children\nincludes.  This targets just reversing that include.\n\nAdd in the basic \"struct module\" since that is all we really need\nto ensure things compile.  In theory, b687380 should have added the\nmodule.h include to the irqdesc.h header as well, but the implicit\nmodule.h everywhere presence masked this from showing up.  So give\nit the \"struct module\" as well.\n\nAs for the C files, irqdesc.c is only using THIS_MODULE, so it\ndoes not need module.h - give it export.h instead.  The C file\nirq/manage.c is now (as of b687380) using try_module_get and\nmodule_put and so it needs module.h (which it already has).\n\nAlso convert the irq_alloc_descs variants to macros, since all\nthey really do is is call the __irq_alloc_descs primitive.\nThis avoids including export.h and no debug info is lost.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "6e5fdeedca610df600aabc393c4b1f44b128fe49",
      "tree": "52a34c30bef1501f19c691a759b81b6f2603cd32",
      "parents": [
        "bdfa97bf7263657b83bc5b68567a3a60dde84c5b"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 26 16:00:52 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:05 2011 -0400"
      },
      "message": "kernel: Fix files explicitly needing EXPORT_SYMBOL infrastructure\n\nThese files were getting \u003clinux/module.h\u003e via an implicit non-obvious\npath, but we want to crush those out of existence since they cost\ntime during compiles of processing thousands of lines of headers\nfor no reason.  Give them the lightweight header that just contains\nthe EXPORT_SYMBOL infrastructure.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "6d274309d0e64bdbdb6c50945ca2964596e8fa5a",
      "tree": "4b4c40a0a75b3e261f08e1525b5cc0e0bd781676",
      "parents": [
        "c71a54b0820179e53483d5220cdef1a0df8d5bd1"
      ],
      "author": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Fri Sep 30 10:48:38 2011 -0500"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Mon Oct 31 14:03:23 2011 +0100"
      },
      "message": "irq: support domains with non-zero hwirq base\n\nInterrupt controllers can have non-zero starting value for h/w irq numbers.\nAdding support in irq_domain allows the domain hwirq numbering to match\nthe interrupt controllers\u0027 numbering.\n\nAs this makes looping over irqs for a domain more complicated, add loop\niterators to iterate over all hwirqs and irqs for a domain.\n\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nReviewed-by: Jamie Iles \u003cjamie@jamieiles.com\u003e\nTested-by: Thomas Abraham \u003cthomas.abraham@linaro.org\u003e\nAcked-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "41684f67af75b04152a1714e1a5375dfb00ee3da",
      "tree": "3b0f51dd8103a4fd40ebb6cefeece7579e348cde",
      "parents": [
        "ec7ae517537ae5c7b0b2cd7f562dfa3e7a05b954",
        "d92ef29a6fa971d9e314e412cd9c09757906411a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 29 07:27:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 29 07:27:45 2011 -0700"
      },
      "message": "Merge branch \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  h8300: Move gpio.h to gpio-internal.h\n  gpio: pl061: add DT binding support\n  gpio: fix build error in include/asm-generic/gpio.h\n  gpiolib: Ensure struct gpio is always defined\n  irq: Add EXPORT_SYMBOL_GPL to function of irq generic-chip\n  gpio-ml-ioh: Use NUMA_NO_NODE not GFP_KERNEL\n  gpio-pch: Use NUMA_NO_NODE not GFP_KERNEL\n  gpio: langwell: ensure alternate function is cleared\n  gpio-pch: Support interrupt function\n  gpio-pch: Save register value in suspend()\n  gpio-pch: modify gpio_nums and mask\n  gpio-pch: support ML7223 IOH n-Bus\n  gpio-pch: add spinlock in suspend/resume processing\n  gpio-pch: Delete invalid \"restore\" code in suspend()\n  gpio-ml-ioh: Fix suspend/resume issue\n  gpio-ml-ioh: Support interrupt function\n  gpio-ml-ioh: Delete unnecessary code\n  gpio/mxc: add chained_irq_enter/exit() to mx3_gpio_irq_handler()\n  gpio/nomadik: use genirq core to track enablement\n  gpio/nomadik: disable clocks when unused\n"
    },
    {
      "commit": "1f6e05171bb5cc32a4d6437ab2269fc21d169ca7",
      "tree": "cf8a99623fe30fde6c5a729f329aa3a4e282886a",
      "parents": [
        "19b4a8d520a6e0176dd52aaa429261ad4fcaa545",
        "9bab0b7fbaceec47d32db51cd9e59c82fb071f5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:44:09 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:44:09 2011 +0200"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  genirq: Add IRQF_RESUME_EARLY and resume such IRQs earlier\n  genirq: Fix fatfinered fixup really\n  genirq: percpu: allow interrupt type to be set at enable time\n  genirq: Add support for per-cpu dev_id interrupts\n  genirq: Add IRQCHIP_SKIP_SET_WAKE flag\n"
    },
    {
      "commit": "3a8254364277fabe01bc0e12b9691722939f5ef3",
      "tree": "0befa43780509144cc840f767859006409e0506d",
      "parents": [
        "976d167615b64e14bc1491ca51d424e2ba9a5e84",
        "34471a9168c8bfd7f0d00989a7b0797ad27d585e"
      ],
      "author": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Mon Oct 24 14:02:37 2011 -0500"
      },
      "committer": {
        "name": "Rob Herring",
        "email": "rob.herring@calxeda.com",
        "time": "Mon Oct 24 14:02:37 2011 -0500"
      },
      "message": "Merge remote-tracking branch \u0027rmk/devel-stable\u0027 into HEAD\n"
    },
    {
      "commit": "825de2e9007439977aed63771db570fc2235e8cd",
      "tree": "261a210e0c075995831efd447b3c81deceea1d2a",
      "parents": [
        "a7aaa4f888968b1261c2701cc66f18a3d4b9777b"
      ],
      "author": {
        "name": "Nobuhiro Iwamatsu",
        "email": "nobuhiro.iwamatsu.yj@renesas.com",
        "time": "Mon Oct 17 11:08:46 2011 +0900"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Oct 24 15:22:33 2011 +0200"
      },
      "message": "irq: Add EXPORT_SYMBOL_GPL to function of irq generic-chip\n\nSome functions of irq generic-chip is undefined, because\nEXPORT_SYMBOL_GPL is not set to these.\n\nERROR: \"irq_setup_generic_chip\" [drivers/gpio/gpio-pch.ko] undefined!\nERROR: \"irq_alloc_generic_chip\" [drivers/gpio/gpio-pch.ko] undefined!\nERROR: \"irq_setup_generic_chip\" [drivers/gpio/gpio-ml-ioh.ko] undefined!\nERROR: \"irq_alloc_generic_chip\" [drivers/gpio/gpio-ml-ioh.ko] undefined!\n\nThis is revised that EXPORT_SYMBOL_GPL can be added and referred\nto in functions.\n\nSigned-off-by: Nobuhiro Iwamatsu \u003cnobuhiro.iwamatsu.yj@renesas.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "9bab0b7fbaceec47d32db51cd9e59c82fb071f5a",
      "tree": "19699e2c8463554c09fc44e3672c402687724d44",
      "parents": [
        "32cffdde4a3ee6c2d9e0f0a94edecf1a9ce7586b"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Mon Oct 03 15:37:00 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 17 11:42:49 2011 +0200"
      },
      "message": "genirq: Add IRQF_RESUME_EARLY and resume such IRQs earlier\n\nThis adds a mechanism to resume selected IRQs during syscore_resume\ninstead of dpm_resume_noirq.\n\nUnder Xen we need to resume IRQs associated with IPIs early enough\nthat the resched IPI is unmasked and we can therefore schedule\nourselves out of the stop_machine where the suspend/resume takes\nplace.\n\nThis issue was introduced by 676dc3cf5bc3 \"xen: Use IRQF_FORCE_RESUME\".\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Jeremy Fitzhardinge \u003cJeremy.Fitzhardinge@citrix.com\u003e\nCc: xen-devel \u003cxen-devel@lists.xensource.com\u003e\nCc: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1318713254.11016.52.camel@dagon.hellion.org.uk\nCc: stable@kernel.org (at least to 2.6.32.y)\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "32cffdde4a3ee6c2d9e0f0a94edecf1a9ce7586b",
      "tree": "ee6e4c52ac19aad88ffc45f201fbbbf4c3dd67dc",
      "parents": [
        "1e7c5fd29487ee88cb3abac945bafa60ae026146"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 04 18:43:57 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 04 18:43:57 2011 +0200"
      },
      "message": "genirq: Fix fatfinered fixup really\n\nPutting the argument inside the quote does not really help.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1e7c5fd29487ee88cb3abac945bafa60ae026146",
      "tree": "7fc04be24400b851a544ca3edde40f84116ddb95",
      "parents": [
        "31d9d9b6d83030f748d013e61502fa5477e2ac0e"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Fri Sep 30 10:48:47 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 03 15:35:27 2011 +0200"
      },
      "message": "genirq: percpu: allow interrupt type to be set at enable time\n\nAs request_percpu_irq() doesn\u0027t allow for a percpu interrupt to have\nits type configured (it is generally impossible to configure it on all\nCPUs at once), add a \u0027type\u0027 argument to enable_percpu_irq().\n\nThis allows some low-level, board specific init code to be switched to\na generic API.\n\n[ tglx: Added WARN_ON argument ]\n\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nCc: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "31d9d9b6d83030f748d013e61502fa5477e2ac0e",
      "tree": "503670b94d594c09daa83c047b426e7b5328aa76",
      "parents": [
        "60f96b41f71d2a13d1c0a457b8b77958f77142d1"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Fri Sep 23 17:03:06 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Oct 03 15:35:26 2011 +0200"
      },
      "message": "genirq: Add support for per-cpu dev_id interrupts\n\nThe ARM GIC interrupt controller offers per CPU interrupts (PPIs),\nwhich are usually used to connect local timers to each core. Each CPU\nhas its own private interface to the GIC, and only sees the PPIs that\nare directly connect to it.\n\nWhile these timers are separate devices and have a separate interrupt\nline to a core, they all use the same IRQ number.\n\nFor these devices, request_irq() is not the right API as it assumes\nthat an IRQ number is visible by a number of CPUs (through the\naffinity setting), but makes it very awkward to express that an IRQ\nnumber can be handled by all CPUs, and yet be a different interrupt\nline on each CPU, requiring a different dev_id cookie to be passed\nback to the handler.\n\nThe *_percpu_irq() functions is designed to overcome these\nlimitations, by providing a per-cpu dev_id vector:\n\nint request_percpu_irq(unsigned int irq, irq_handler_t handler,\n\t\t   const char *devname, void __percpu *percpu_dev_id);\nvoid free_percpu_irq(unsigned int, void __percpu *);\nint setup_percpu_irq(unsigned int irq, struct irqaction *new);\nvoid remove_percpu_irq(unsigned int irq, struct irqaction *act);\nvoid enable_percpu_irq(unsigned int irq);\nvoid disable_percpu_irq(unsigned int irq);\n\nThe API has a number of limitations:\n- no interrupt sharing\n- no threading\n- common handler across all the CPUs\n\nOnce the interrupt is requested using setup_percpu_irq() or\nrequest_percpu_irq(), it must be enabled by each core that wishes its\nlocal interrupt to be delivered.\n\nBased on an initial patch by Thomas Gleixner.\n\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nCc: linux-arm-kernel@lists.infradead.org\nLink: http://lkml.kernel.org/r/1316793788-14500-2-git-send-email-marc.zyngier@arm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "eef24afb28561a5a9f4be8f8da97735b7e6a826f",
      "tree": "0014317465c4aac43d40fe0cc7f1b269a5a5b95d",
      "parents": [
        "5bd078dda4d4fbdb4bd138a6bd5b6e274c019ed2"
      ],
      "author": {
        "name": "Rob Herring",
        "email": "robherring2@gmail.com",
        "time": "Wed Sep 14 11:31:37 2011 -0500"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 20 12:16:22 2011 +0200"
      },
      "message": "irq: Fix check for already initialized irq_domain in irq_domain_add\n\nThe sanity check in irq_domain_add() tests desc-\u003eirq_data !\u003d NULL or\nirq_data-\u003edomain !\u003d NULL. This prevents adding an irq_domain to a irq\ndescriptor when irq_data exists, which true when the irq descriptor\nexists.\n\nThis went unnoticed so far as the simple domain code did not enter\nthis code path because domain-\u003enr_irqs is always 0 for the simple domains.\n\nSplit the check for irq_data \u003d\u003d NULL out and have a separate warning\nfor it.\n\n[ tglx: Made the check for irq_data \u003d\u003d NULL separate ]\n\nSigned-off-by: Rob Herring \u003crob.herring@calxeda.com\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: marc.zyngier@arm.com\nCc: thomas.abraham@linaro.org\nCc: jamie@jamieiles.com\nCc: b-cousson@ti.com\nCc: shawn.guo@linaro.org\nCc: linux-arm-kernel@lists.infradead.org\nCc: devicetree-discuss@lists.ozlabs.org\nLink: http://lkml.kernel.org/r/1316017900-19918-3-git-send-email-robherring2@gmail.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "60f96b41f71d2a13d1c0a457b8b77958f77142d1",
      "tree": "3fdfa3f9a2e762139383938f0199ed2ed9ee5640",
      "parents": [
        "ed585a651681e822089087b426e6ebfb6d3d9873"
      ],
      "author": {
        "name": "Santosh Shilimkar",
        "email": "santosh.shilimkar@ti.com",
        "time": "Fri Sep 09 13:59:35 2011 +0530"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Sep 12 09:52:49 2011 +0200"
      },
      "message": "genirq: Add IRQCHIP_SKIP_SET_WAKE flag\n\nSome irq chips need the irq_set_wake() functionality, but do not\nrequire a irq_set_wake() callback. Instead of forcing an empty\ncallback to be implemented add a flag which notes this fact. Check for\nthe flag in set_irq_wake_real() and return success when set.\n\nSigned-off-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ed585a651681e822089087b426e6ebfb6d3d9873",
      "tree": "d16e78437208dd660e05974506449c5260e479c5",
      "parents": [
        "d0a77454c70d0449a5f87087deb8f0cb15145e90"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Sun Sep 11 13:59:27 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Sep 12 09:38:53 2011 +0200"
      },
      "message": "genirq: Make irq_shutdown() symmetric vs. irq_startup again\n\nIf an irq_chip provides .irq_shutdown(), but neither of .irq_disable() or\n.irq_mask(), free_irq() crashes when jumping to NULL.\nFix this by only trying .irq_disable() and .irq_mask() if there\u0027s no\n.irq_shutdown() provided.\n\nThis revives the symmetry with irq_startup(), which tries .irq_startup(),\n.irq_enable(), and irq_unmask(), and makes it consistent with the comment for\nirq_chip.irq_shutdown() in \u003clinux/irq.h\u003e, which says:\n\n * @irq_shutdown:\tshut down the interrupt (defaults to -\u003edisable if NULL)\n\nThis is also how __free_irq() behaved before the big overhaul, cfr. e.g.\n3b56f0585fd4c02d047dc406668cb40159b2d340 (\"genirq: Remove bogus conditional\"),\nwhere the core interrupt code always overrode .irq_shutdown() to\n.irq_disable() if .irq_shutdown() was NULL.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: linux-m68k@lists.linux-m68k.org\nLink: http://lkml.kernel.org/r/1315742394-16036-2-git-send-email-geert@linux-m68k.org\nCc: stable@kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "69dd3d8e29e294caaf63eb5e8a72d250279f9e5f",
      "tree": "51e4d037b96431f2686ebbcd4e54775eb40b4b85",
      "parents": [
        "fcb8ce5cfe30ca9ca5c9a79cdfe26d1993e65e0c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 23 10:36:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 23 10:36:51 2011 -0700"
      },
      "message": "Revert \"irq: Always set IRQF_ONESHOT if no primary handler is specified\"\n\nThis reverts commit f3637a5f2e2eb391ff5757bc83fb5de8f9726464.\n\nIt turns out that this breaks several drivers, one example being OMAP\nboards which use the on-board OMAP UARTs and the omap-serial driver that\nwill not boot to userspace after the commit.\n\nPaul Walmsley reports that enabling CONFIG_DEBUG_SHIRQ reveals \u0027IRQ\nhandler type mismatch\u0027 errors:\n\n  IRQ handler type mismatch for IRQ 74\n  current handler: serial idle\n  ...\n\nand the reason is that setting IRQF_ONESHOT will now result in those\ninterrupt handlers having different IRQF flags, and thus being\nunsharable.  So the commit log in the reverted commit:\n\n                            \"Since it is required for those users and\n    there is no difference for others it makes sense to add this flag\n    unconditionally.\"\n\nis simply not true: there may not be any difference from a \"actions at\nirq time\", but there is a *big* difference wrt this flag testing irq\nmanagement (see __setup_irq() in kernel/irq/manage.c).\n\nOne solution may be to stop verifying IRQF_ONESHOT in __setup_irq(), but\nright now the safe course of action is to revert the change.  Let\u0027s\nrevisit this in a later merge window.\n\nReported-by: Paul Walmsley \u003cpaul@pwsan.com\u003e\nCc: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nRequested-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d522a0d17963e9c2e556db2cbd60c96d40505b6c",
      "tree": "90391acd50f0fa2b432d9defdb96627e6c1061b7",
      "parents": [
        "8cf2d2399ab60842f55598bc1b00fd15503b9950"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Thu Aug 18 12:19:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Aug 18 14:12:48 2011 -0700"
      },
      "message": "irqdesc: fix new kernel-doc warning\n\nFix kernel-doc warning in irqdesc.c:\n\n  Warning(kernel/irq/irqdesc.c:353): No description found for parameter \u0027owner\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "950d0a10d12578a270f3dfa9fd76fe5c2deb343f",
      "tree": "2467458b05ab13dd8875e43f3701fbc0c38cef0d",
      "parents": [
        "ab7e2dbf9b5da4d4eb4fdb019cc8881fbeb1299b",
        "b6873807a7143b7d6d8b06809295e559d07d7deb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 17 10:23:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 17 10:23:50 2011 -0700"
      },
      "message": "Merge branch \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: Track the owner of irq descriptor\n  irq: Always set IRQF_ONESHOT if no primary handler is specified\n  genirq: Fix wrong bit operation\n"
    },
    {
      "commit": "6124a4e430b64d1577438c8648c59e996d02e73e",
      "tree": "49cfafad785d1c9e403a5b0d755298b9af2c260f",
      "parents": [
        "8e267f3da5f117d2f1316cf6ddf740f93f1c73aa",
        "580975d7f48d7d047e22bb0f42adf7557801d8d4"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 28 15:25:46 2011 +0000"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 28 15:25:46 2011 +0000"
      },
      "message": "Merge branch \u0027imx/dt\u0027 into next/dt\n"
    },
    {
      "commit": "b6873807a7143b7d6d8b06809295e559d07d7deb",
      "tree": "1187413ab85f1a7b7d5da91bf61ae21601da3855",
      "parents": [
        "f3637a5f2e2eb391ff5757bc83fb5de8f9726464"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Mon Jul 11 12:17:31 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jul 28 11:23:21 2011 +0200"
      },
      "message": "irq: Track the owner of irq descriptor\n\nInterrupt descriptors can be allocated from modules. The interrupts\nare used by other modules, but we have no refcount on the module which\nprovides the interrupts and there is no way to establish one on the\ndevice level as the interrupt using module is agnostic to the fact\nthat the interrupt is provided by a module rather than by some builtin\ninterrupt controller.\n\nTo prevent removal of the interrupt providing module, we can track the\nowner of the interrupt descriptor, which also provides the relevant\nirq chip functions in the irq descriptor.\n\nrequest/setup_irq() can now acquire a refcount on the owner module to\nprevent unloading. free_irq() drops the refcount.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nLink: http://lkml.kernel.org/r/20110711101731.GA13804@Chamillionaire.breakpoint.cc\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f3637a5f2e2eb391ff5757bc83fb5de8f9726464",
      "tree": "4573995893bfe66e505b11bf4277cf062e1a7eea",
      "parents": [
        "1dd75f91ae713049eb6baaa640078f3a6549e522"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Thu Jul 07 22:32:17 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jul 28 11:23:21 2011 +0200"
      },
      "message": "irq: Always set IRQF_ONESHOT if no primary handler is specified\n\nIf no primary handler is specified then a default one is assigned\nwhich always returns IRQ_WAKE_THREAD. This handler requires the\nIRQF_ONESHOT flag on LEVEL / EIO typed irqs because the source of\ninterrupt is not disabled. Since it is required for those users and\nthere is no difference for others it makes sense to add this flag\nunconditionally.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1310070737-18514-1-git-send-email-bigeasy@linutronix.de\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7e71330169d8056536b299290544980bccc6b300",
      "tree": "7dab4954a7683e35bbf66adadd89b26971960311",
      "parents": [
        "08a543ad33fc188650801bd36eed4ffe272643e1"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 26 03:19:06 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Jul 28 01:32:04 2011 -0600"
      },
      "message": "dt/irq: add irq_domain_generate_simple() helper\n\nirq_domain_generate_simple() is an easy way to generate an irq translation\ndomain for simple irq controllers.  It assumes a flat 1:1 mapping from\nhardware irq number to an offset of the first linux irq number assigned\nto the controller\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "08a543ad33fc188650801bd36eed4ffe272643e1",
      "tree": "cf2b41b922e77190425f999c2268f1558dd52d18",
      "parents": [
        "5fd1a2ed0ec6fb5449c71a988cc15edb8671b3d0"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Jul 26 03:19:06 2011 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Thu Jul 28 01:32:04 2011 -0600"
      },
      "message": "irq: add irq_domain translation infrastructure\n\nThis patch adds irq_domain infrastructure for translating from\nhardware irq numbers to linux irqs.  This is particularly important\nfor architectures adding device tree support because the current\nimplementation (excluding PowerPC and SPARC) cannot handle\ntranslation for more than a single interrupt controller.  irq_domain\nsupports device tree translation for any number of interrupt\ncontrollers.\n\nThis patch converts x86, Microblaze, ARM and MIPS to use irq_domain\nfor device tree irq translation.  x86 is untested beyond compiling it,\nirq_domain is enabled for MIPS and Microblaze, but the old behaviour is\npreserved until the core code is modified to actually register an\nirq_domain yet.  On ARM it works and is required for much of the new\nARM device tree board support.\n\nPowerPC has /not/ been converted to use this new infrastructure.  It\nis still missing some features before it can replace the virq\ninfrastructure already in powerpc (see documentation on\nirq_domain_map/unmap for details).  Followup patches will add the\nmissing pieces and migrate PowerPC to use irq_domain.\n\nSPARC has its own method of managing interrupts from the device tree\nand is unaffected by this change.\n\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "1dd75f91ae713049eb6baaa640078f3a6549e522",
      "tree": "24ce9355ca74a6fe6a179e61a9ab9418b17f2eae",
      "parents": [
        "02f8c6aee8df3cdc935e9bdd4f2d020306035dbe"
      ],
      "author": {
        "name": "jhbird.choi@samsung.com",
        "email": "jhbird.choi@samsung.com",
        "time": "Thu Jul 21 15:29:14 2011 +0900"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 26 16:24:02 2011 +0200"
      },
      "message": "genirq: Fix wrong bit operation\n\n(!msk \u0026 0x01) should be !(msk \u0026 0x01)\n\nSigned-off-by: Jonghwan Choi \u003cjhbird.choi@samsung.com\u003e\nLink: http://lkml.kernel.org/r/1311229754-6003-1-git-send-email-jhbird.choi@samsung.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "ae891a1b93bf62e9aaa116a7a71312375047fc9f",
      "tree": "83e821e818654da3e3443ecddd757665251db6e0",
      "parents": [
        "5190f0c030f46b3169205f34f6d9ef480fa39ef2"
      ],
      "author": {
        "name": "Maxin B John",
        "email": "maxin.john@gmail.com",
        "time": "Mon Jul 25 17:12:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "devres: fix possible use after free\n\ndevres uses the pointer value as key after it\u0027s freed, which is safe but\ntriggers spurious use-after-free warnings on some static analysis tools.\nRearrange code to avoid such warnings.\n\nSigned-off-by: Maxin B. John \u003cmaxin.john@gmail.com\u003e\nReviewed-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "659fb32d1b67476f4ade25e9ea0e2642a5b9c4b5",
      "tree": "a875904f1c457f321563060491956266a57c6514",
      "parents": [
        "d30e1521b2afb5e6f21ca8bc1a4b6ec2afc93597"
      ],
      "author": {
        "name": "Simon Guinot",
        "email": "sguinot@lacie.com",
        "time": "Wed Jul 06 12:41:31 2011 -0400"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jul 07 16:02:26 2011 +0000"
      },
      "message": "genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd)\n\nThis fixes a regression introduced by e59347a \"arm: orion:\nUse generic irq chip\".\n\nDepending on the device, interrupts acknowledgement is done by setting\nor by clearing a dedicated register. Replace irq_gc_ack() with some\n{set,clr}_bit variants allows to handle both cases.\n\nNote that this patch affects the following SoCs: Davinci, Samsung and\nOrion. Except for this last, the change is minor: irq_gc_ack() is just\nrenamed into irq_gc_ack_set_bit().\n\nFor the Orion SoCs, the edge GPIO interrupts support is currently\nbroken. irq_gc_ack() try to acknowledge a such interrupt by setting\nthe corresponding cause register bit. The Orion GPIO device expect the\nopposite. To fix this issue, the irq_gc_ack_clr_bit() variant is used.\n\nTested on Network Space v2.\n\nReported-by: Joey Oravec \u003cjoravec@drewtech.com\u003e\nSigned-off-by: Simon Guinot \u003csguinot@lacie.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "13863a66c9c8a663665445cf05d68de96ff31830",
      "tree": "cb7864cf23b6f26f3eb11cfe09526eb7110a0e9a",
      "parents": [
        "7f45e5cd1718ed769295033ca214032848a0097d"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Thu Jun 09 23:14:58 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 10 10:53:42 2011 +0200"
      },
      "message": "genirq: Prevent potential NULL dereference in irq_set_irq_wake()\n\nIn kernel/irq/manage.c::irq_set_irq_wake() we call\nirq_get_desc_buslock() which may return NULL, but the code\ndereferences the result unconditionally.\n\nirq_set_irq_wake() has lots of callers - I checked a few and I couldn\u0027t\nfind anything that guarantees that they won\u0027t call it with some input that\nwill cause irq_get_desc_buslock() to return NULL, so I think it\u0027s a good\nthing to test and -EINVAL was the most sane error code in this situation\nthat I could think of.\n\nNot all callers test the return value of irq_set_irq_wake(), but those\nthat do take !\u003d 0 to mean error as far as I can see, so they should be\nfine. I guess those that don\u0027t test actually should, but that\u0027s a\ndifferent issue.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nLink: http://lkml.kernel.org/r/alpine.LNX.2.00.1106092300360.17868@swampdragon.chaosbits.net\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c5182b8867e189e14a8df5dbfcba1c73f286e061",
      "tree": "89ac7169ab5009625770124e8b78549e69009ea1",
      "parents": [
        "e7fbad300a7a6432238f086e3c9a61538a905858"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Jun 02 18:55:13 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 14:53:16 2011 +0200"
      },
      "message": "genirq: Ensure we locate the passed IRQ in irq_alloc_descs()\n\nWhen irq_alloc_descs() is called with no base IRQ specified then it will\nsearch for a range of IRQs starting from a specified base address. In the\ncase where an IRQ is specified it still does this search in order to ensure\nthat none of the requested range is already allocated and it still uses the\nfrom parameter to specify the base for the search. This means that in the\ncase where a base is specified but from is zero (which is reasonable as\nany IRQ number is in the range specified by a zero from) the function will\nget confused and try to allocate the first suitably sized block of free IRQs\nit finds.\n\nInstead use a specified IRQ as the base address for the search, and insist\nthat any from that is specified can support that IRQ.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nLink: http://lkml.kernel.org/r/1307037313-15733-1-git-send-email-broonie@opensource.wolfsonmicro.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e7fbad300a7a6432238f086e3c9a61538a905858",
      "tree": "76841c453717fd32be49d7d2b06e835e15b87c99",
      "parents": [
        "3a43e05f4d0600e906fa09f4a65d749288c44592"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@stericsson.com",
        "time": "Tue May 31 18:14:39 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 14:53:16 2011 +0200"
      },
      "message": "genirq: Fix descriptor init on non-sparse IRQs\n\nThe genirq changes are initializing descriptors for sparse IRQs quite\ndifferently from how non-sparse (stacked?) IRQs are initialized, with\nthe effect that on my platform all IRQs are default-disabled on sparse\nIRQs and default-enabled if non-sparse IRQs are used, crashing some\nGPIO driver.\n\nFix this by refactoring the non-sparse IRQs to use the same descriptor\ninit function as the sparse IRQs.\n\nSigned-off: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nLink: http://lkml.kernel.org/r/1306858479-16622-1-git-send-email-linus.walleij@stericsson.com\nCc: stable@kernel.org # 2.6.39\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3a43e05f4d0600e906fa09f4a65d749288c44592",
      "tree": "b99732c8f459e70078c7dd90f62a5174376e3c62",
      "parents": [
        "ef26f20cd117eb3c185038ed7cbf7b235575751d"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Tue May 31 08:56:11 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 14:53:15 2011 +0200"
      },
      "message": "irq: Handle spurios irq detection for threaded irqs\n\nThe detection of spurios interrupts is currently limited to first level\nhandler. In force-threaded mode we never notice if the threaded irq does\nnot feel responsible.\nThis patch catches the return value of the threaded handler and forwards\nit to the spurious detector. If the primary handler returns only\nIRQ_WAKE_THREAD then the spourious detector ignores it because it gets\ncalled again from the threaded handler.\n\n[ tglx: Report the erroneous return value early and bail out ]\n\nSigned-off-by: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nLink: http://lkml.kernel.org/r/1306824972-27067-2-git-send-email-sebastian@breakpoint.cc\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ef26f20cd117eb3c185038ed7cbf7b235575751d",
      "tree": "630c5b348bb2dc7abbb3bd820a51a6fa8c6e5c5d",
      "parents": [
        "1fa7b6a29c61358cc2ca6f64cef4aa0e1a7ca74c"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Tue May 31 08:56:10 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 14:53:15 2011 +0200"
      },
      "message": "genirq: Print threaded handler in spurious debug output\n\nIn forced threaded mode (or with an explicit threaded handler) we only\nsee the primary handler, but not the threaded handler.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nLink: http://lkml.kernel.org/r/1306824972-27067-1-git-send-email-sebastian@breakpoint.cc\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "def945eeb920b94e710574454043f080831aefe5",
      "tree": "3ab084b62973e172b98ab731b80b19666eac30e7",
      "parents": [
        "4db70f73e56961b9bcdfd0c36c62847a18b7dbb5"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed May 25 22:09:40 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 26 13:15:28 2011 +0200"
      },
      "message": "irq: Remove smp_affinity_list when unregister irq proc\n\ncommit 4b06042(bitmap, irq: add smp_affinity_list interface to\n/proc/irq) causes the following warning:\n\n[  274.239500] WARNING: at fs/proc/generic.c:850 remove_proc_entry+0x24c/0x27a()\n[  274.251761] remove_proc_entry: removing non-empty directory \u0027irq/184\u0027,\n    \t       leaking at least \u0027smp_affinity_list\u0027\n\nRemove the new file in the exit path.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nLink: http://lkml.kernel.org/r/4DDDE094.6050505@kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "4b060420a596095869a6d7849caa798d23839cd1",
      "tree": "ebbbc25555d0358f73527f114f78691ac849ce3e",
      "parents": [
        "e50c1f609c63223adaa38f5a79b18759a00adf72"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Tue May 24 17:13:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 25 08:39:45 2011 -0700"
      },
      "message": "bitmap, irq: add smp_affinity_list interface to /proc/irq\n\nManually adjusting the smp_affinity for IRQ\u0027s becomes unwieldy when the\ncpu count is large.\n\nSetting smp affinity to cpus 256 to 263 would be:\n\n\techo 000000ff,00000000,00000000,00000000,00000000,00000000,00000000,00000000 \u003e smp_affinity\n\ninstead of:\n\n\techo 256-263 \u003e smp_affinity_list\n\nThink about what it looks like for cpus around say, 4088 to 4095.\n\nWe already have many alternate \"list\" interfaces:\n\n/sys/devices/system/cpu/cpuX/indexY/shared_cpu_list\n/sys/devices/system/cpu/cpuX/topology/thread_siblings_list\n/sys/devices/system/cpu/cpuX/topology/core_siblings_list\n/sys/devices/system/node/nodeX/cpulist\n/sys/devices/pci***/***/local_cpulist\n\nAdd a companion interface, smp_affinity_list to use cpu lists instead of\ncpu maps.  This conforms to other companion interfaces where both a map\nand a list interface exists.\n\nThis required adding a bitmap_parselist_user() function in a manner\nsimilar to the bitmap_parse_user() function.\n\n[akpm@linux-foundation.org: make __bitmap_parselist() static]\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Andy Shevchenko \u003candy.shevchenko@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "acd30250d7d0f495685d1c7c6184636a22fcdf7f",
      "tree": "40f4e7e092de434c49a5f67f27ff1d3bf71000f9",
      "parents": [
        "6595b4a940c4c447b619ab5268378ed03e632694",
        "edf76f8307c350bcb81f0c760118a991b3e62956"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:30:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:30:15 2011 -0700"
      },
      "message": "Merge branch \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: Export functions to allow modular irq drivers\n  genirq: Uninline and sanity check generic_handle_irq()\n  genirq: Remove pointless ifdefs\n  genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP\n  genirq: Add chip suspend and resume callbacks\n  genirq: Implement a generic interrupt chip\n  genirq: Support per-IRQ thread disabling.\n  genirq: irq_desc: Document preflow_handler and affinity_hint\n  genirq: Update DocBook comments\n  genirq: Forgotten updates/deletions after removal of compat code\n"
    },
    {
      "commit": "edf76f8307c350bcb81f0c760118a991b3e62956",
      "tree": "35adb6aa29f61f64f5841b1ccb2e6a50eb250529",
      "parents": [
        "fe12bc2c996d3e492b2920e32ac79f7bbae3e15d"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Wed May 18 10:39:04 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:08 2011 +0200"
      },
      "message": "irq: Export functions to allow modular irq drivers\n\nExport handle_simple_irq, irq_modify_status, irq_alloc_descs,\nirq_free_descs and generic_handle_irq to allow their usage in\nmodules. First user is IIO, which wants to be built modular, but needs\nto be able to create irq chips, allocate and configure interrupt\ndescriptors and handle demultiplexing interrupts.\n\n[ tglx: Moved the uninlinig of generic_handle_irq to a separate patch ]\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nLink: http://lkml.kernel.org/r/%3C1305711544-505-1-git-send-email-jic23%40cam.ac.uk%3E\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fe12bc2c996d3e492b2920e32ac79f7bbae3e15d",
      "tree": "05af87563123d909d04c328aead3fe24599633d1",
      "parents": [
        "fe0514348452f5b0ad7e842b0d71b8322b1297de"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 12:48:00 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:08 2011 +0200"
      },
      "message": "genirq: Uninline and sanity check generic_handle_irq()\n\ngeneric_handle_irq() is missing a NULL pointer check for the result of\nirq_to_desc. This was a not a big problem, but we want to expose it to\ndrivers, so we better have sanity checks in place. Add a return value\nas well, which indicates that the irq number was valid and the handler\nwas invoked.\n\nBased on the pure code move from Jonathan Cameron.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\n"
    },
    {
      "commit": "fe0514348452f5b0ad7e842b0d71b8322b1297de",
      "tree": "bdf49e276958303c7b55b362eeffc0a149b1bb2f",
      "parents": [
        "c42321c76b0ef472e3bae4bfcb0f46ab19e038ef"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 12:53:03 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 14:59:07 2011 +0200"
      },
      "message": "genirq: Remove pointless ifdefs\n\nkernel/irq/ is only built when CONFIG_GENERIC_HARDIRQS\u003dy. So making\ncode inside of kernel/irq/ conditional on CONFIG_GENERIC_HARDIRQS is\npointless.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "94b2c363dcf732a4edab4ed66041cb36e7f28fbf",
      "tree": "982f4c1bde2dea0ed7f6fa02d28cfc895b483ca8",
      "parents": [
        "c7bcecbe98fe29e87ac7d01c70c5998806e0989f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Sat Apr 30 22:56:20 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 02 21:16:37 2011 +0200"
      },
      "message": "genirq: Fix typo CONFIG_GENIRC_IRQ_SHOW_LEVEL\n\ncommit ab7798ffcf98b11a9525cf65bacdae3fd58d357f (\"genirq: Expand generic\nshow_interrupts()\") added the Kconfig option GENERIC_IRQ_SHOW_LEVEL to\naccomodate PowerPC, but this doesn\u0027t actually enable the functionality due\nto a typo in the #ifdef check.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Linux/PPC Development \u003clinuxppc-dev@lists.ozlabs.org\u003e\nLink: http://lkml.kernel.org/r/%3Calpine.DEB.2.00.1104302251370.19068%40ayla.of.borg%3E\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c42321c76b0ef472e3bae4bfcb0f46ab19e038ef",
      "tree": "9bfa0ea3a40995438592d05915f01d7ddebc0e5e",
      "parents": [
        "cfefd21e693dca791bf9ecfc9dd3794facad533c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 02 18:16:22 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 02 18:16:22 2011 +0200"
      },
      "message": "genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP\n\nOnly compile it in when there are users.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linux-arm-kernel@lists.infradead.org\n"
    },
    {
      "commit": "cfefd21e693dca791bf9ecfc9dd3794facad533c",
      "tree": "20915250e5c9749eea148cab17534b70c094386f",
      "parents": [
        "7d8280624797bbe2f5170bd3c85c75a8c9c74242"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 15 22:36:08 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Apr 23 15:56:24 2011 +0200"
      },
      "message": "genirq: Add chip suspend and resume callbacks\n\nThese callbacks are only called in the syscore suspend/resume code on\ninterrupt chips which have been registered via the generic irq chip\nmechanism. Calling those callbacks per irq would be rather icky, but\nwith the generic irq chip mechanism we can call this per registered\nchip.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linux-arm-kernel@lists.infradead.org\n"
    },
    {
      "commit": "7d8280624797bbe2f5170bd3c85c75a8c9c74242",
      "tree": "8028581a9a51eeb3c168409b5645c68b7a32e7dd",
      "parents": [
        "7f1b1244e159a8490d7fb13667c6cb7e1e75046b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Apr 03 11:42:53 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Apr 23 15:56:24 2011 +0200"
      },
      "message": "genirq: Implement a generic interrupt chip\n\nImplement a generic interrupt chip, which is configurable and is able\nto handle the most common irq chip implementations.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linux-arm-kernel@lists.infradead.org\nTested-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nTested-by: Tony Lindgren \u003ctony@atomide.com\u003e\nTested-by; Kevin Hilman \u003ckhilman@ti.com\u003e\n"
    },
    {
      "commit": "7f1b1244e159a8490d7fb13667c6cb7e1e75046b",
      "tree": "1d5f5ff0ec14e3ac84d4ec17b0de4d43dacf8118",
      "parents": [
        "770767787c23040dc152e7ae230597ff55b39470"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu Apr 07 06:01:44 2011 +0900"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Apr 23 15:56:24 2011 +0200"
      },
      "message": "genirq: Support per-IRQ thread disabling.\n\nThis adds support for disabling threading on a per-IRQ basis via the IRQ\nstatus instead of the IRQ flow, which is necessary for interrupts that\ndon\u0027t follow the natural IRQ flow channels, such as those that are\nvirtually created.\n\nThe new APIs added are simply:\n\n\tirq_set_thread()\n\tirq_set_nothread()\n\nwhich follow the rest of the IRQ status routines.\n\nChained handlers also have IRQ_NOTHREAD set on them automatically, making\nthe lack of threading explicit rather than implicit. Subsequently, the\nnothread flag can be viewed through the standard genirq debugging\nfacilities.\n\n[ tglx: Fixed cleanup fallout ]\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nLink: http://lkml.kernel.org/r/%3C20110406210135.GF18426%40linux-sh.org%3E\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "8b9686ff4ddfdf45662024edd567920e6db87beb",
      "tree": "1d7e1d735121ea3c44ab72a24506151e4e88a36e",
      "parents": [
        "df9b29d13e043e134e65b9f66b68fa7eae5db8f0",
        "f994d99cf140dbb637e49882891c89b3fd84becd",
        "49c022e657fbe661460d191fbe776a387132e2b3",
        "09552b2696896dbb715be0caf91b23276f9139ba",
        "4f5058c3b71ed5930bb2b478c4d5dbc799dd9ad1",
        "f64fac86f9cd375743ed34385efc8a7732fa8e7b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 07 12:12:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 07 12:12:58 2011 -0700"
      },
      "message": "Merge branches \u0027x86-fixes-for-linus\u0027, \u0027sched-fixes-for-linus\u0027, \u0027timers-fixes-for-linus\u0027, \u0027irq-fixes-for-linus\u0027 and \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86-32, fpu: Fix FPU exception handling on non-SSE systems\n  x86, hibernate: Initialize mmu_cr4_features during boot\n  x86-32, NUMA: Fix ACPI NUMA init broken by recent x86-64 change\n  x86: visws: Fixup irq overhaul fallout\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Clean up rebalance_domains() load-balance interval calculation\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86/mrst/vrtc: Fix boot crash in mrst_rtc_init()\n  rtc, x86/mrst/vrtc: Fix boot crash in rtc_read_alarm()\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: Fix cpumask leak in __setup_irq()\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf probe: Fix listing incorrect line number with inline function\n  perf probe: Fix to find recursively inlined function\n  perf probe: Fix multiple --vars options behavior\n  perf probe: Fix to remove redundant close\n  perf probe: Fix to ensure function declared file\n"
    },
    {
      "commit": "4f5058c3b71ed5930bb2b478c4d5dbc799dd9ad1",
      "tree": "5c756cbcd329d62fb95744185b54c952eed903df",
      "parents": [
        "78fca1b95837a44983608302e89c7258981be9b3"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Sat Apr 02 19:39:35 2011 +0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Apr 02 21:26:20 2011 +0200"
      },
      "message": "genirq: Fix cpumask leak in __setup_irq()\n\nThe allocated cpumask should be freed in __setup_irq().\n\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nLKML-Reference: \u003c1301744375-6812-1-git-send-email-dfeng@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "78c89825649a9a5ed526c507603196f467d781a5",
      "tree": "eb2485baf085f7a6820c6b9030dfa3d733591aa3",
      "parents": [
        "e282326600f31ab38d8814fd6deb277a48850c35"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 30 14:13:23 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 30 14:13:23 2011 +0200"
      },
      "message": "genirq: Remove the now obsolete config options and select statements\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "353c8ed44f8f7414be614685ed29d1e23f5fa76b",
      "tree": "215ed76c15b6d95f7444fc845635253628dc33ba",
      "parents": [
        "0ce790e7d736cedc563e1fb4e998babf5a4dbc3d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 22:18:28 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 22:24:05 2011 +0200"
      },
      "message": "genirq: Fix misnamed label in handle_edge_eoi_irq\n\nReported-by: michael@ellerman.id.au\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linuxppc-dev@lists.ozlabs.org\n"
    },
    {
      "commit": "851d7cf647e0d31668eb5dc496f7698a2f6136b4",
      "tree": "15a292814827ef43cbfa6d28e41c7058bf71ebf7",
      "parents": [
        "0c6f8a8b917ad361319c8ace3e9f28e69bfdb4c1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 02:51:13 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 14:50:32 2011 +0200"
      },
      "message": "genirq: Remove move_*irq leftovers\n\nAll users converted to new interface.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "0c6f8a8b917ad361319c8ace3e9f28e69bfdb4c1",
      "tree": "b4b0cb4b619368bc93ff883f4b667e05a185549b",
      "parents": [
        "dced35aeb0367dda2636ee9ee914bda14510dcc9"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 13:32:20 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 14:48:19 2011 +0200"
      },
      "message": "genirq: Remove compat code\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a6e120ed42004d6051fff7c3233e2554f12ccecb",
      "tree": "dd0210b2f78a5fca1b24fe8211d5dbaac9434a6b",
      "parents": [
        "a9eb076b21425929ce543978db03265d9db210de"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 25 22:20:51 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 14:47:58 2011 +0200"
      },
      "message": "alpha: Use generic show_interrupts()\n\nThe only subtle difference is that alpha uses ACTUAL_NR_IRQS and\nprints the IRQF_DISABLED flag.\n\nChange the generic implementation to deal with ACTUAL_NR_IRQS if\ndefined.\n\nThe IRQF_DISABLED printing is pointless, as we nowadays run all\ninterrupts with irqs disabled.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "cd22c0e44b105aecd78e5f9e77abab3a1b8dc00c",
      "tree": "98be0a3bdb0fcc9ff7f31e774a4c69d655d19041",
      "parents": [
        "89078d572eb9ce8d4c04264b8b0ba86de0d74c8f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 11:36:05 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 11:36:05 2011 +0200"
      },
      "message": "genirq: Fix harmless typo\n\nThe late night fixup missed to convert the data type from irq_desc to\nirq_data, which results in a harmless but annoying warning.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "0ef5ca1e1f0de71300142b8f730f26ded6a0c2f3",
      "tree": "f8eb0e5e63b7d3115c27f110e59a762fd871d693",
      "parents": [
        "a6aeddd1c4e464a2150f97ca2d1c3d68cfbd9296"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 21:59:37 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 29 01:41:22 2011 +0200"
      },
      "message": "genirq; Fix cleanup fallout\n\nI missed the CONFIG_GENERIC_PENDING_IRQ dependency in the affinity\nrelated functions and the IRQ_LEVEL propagation into irq_data\nstate. Did not pop up on my main test platforms. :(\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: David Daney \u003cddaney@caviumnetworks.com\u003e\n"
    },
    {
      "commit": "a6aeddd1c4e464a2150f97ca2d1c3d68cfbd9296",
      "tree": "18350cbcc8aa5619e98e5f56750828da300db537",
      "parents": [
        "30398bf6c684a77274dbdabf7efc1f24e4a99028"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 20:28:56 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 20:28:56 2011 +0200"
      },
      "message": "genirq: Fix typo and remove unused variable\n\nSigh, I\u0027m overworked.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "30398bf6c684a77274dbdabf7efc1f24e4a99028",
      "tree": "d4ee5d514a53fbb8186bdbc726a525bb488c7dcf",
      "parents": [
        "ee38c04b58983a236b43bae71b2415d38bceaf75"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Fri Mar 18 09:33:56 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 20:13:57 2011 +0200"
      },
      "message": "genirq: Fix new kernel-doc warnings\n\nFix new irq-related kernel-doc warnings in 2.6.38:\n\nWarning(kernel/irq/manage.c:149): No description found for parameter \u0027mask\u0027\nWarning(kernel/irq/manage.c:149): Excess function parameter \u0027cpumask\u0027 description in \u0027irq_set_affinity\u0027\nWarning(include/linux/irq.h:161): No description found for parameter \u0027state_use_accessors\u0027\nWarning(include/linux/irq.h:161): Excess struct/union/enum/typedef member \u0027state_use_accessor\u0027 description in \u0027irq_data\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nLKML-Reference: \u003c20110318093356.b939558d.randy.dunlap@oracle.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "33b054b867b84015173a38d9cd9ff513b6498818",
      "tree": "341f935d57af66fe82d384940b577fa9215ce5e6",
      "parents": [
        "6829310548a76d343205029bb41c14e75bf6a7fb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 16:27:31 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 16:55:11 2011 +0200"
      },
      "message": "genirq: Remove handle_IRQ_event\n\nLast user gone.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "0521c8fbb3da45c2a58cd551ca6e9644983f6028",
      "tree": "d2ed3452a75f1d3ff516cd02c86f4371db81e06e",
      "parents": [
        "32f4125ebffee4f3c4dbc6a437fc656129eb9e60"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 16:13:24 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 16:55:11 2011 +0200"
      },
      "message": "genirq: Provide edge_eoi flow handler\n\nThis is a replacment for the cell flow handler which is in the way of\ncleanups. Must be selected to avoid general bloat.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "32f4125ebffee4f3c4dbc6a437fc656129eb9e60",
      "tree": "d64c6bb7ba40c33734896303734416ea5b4f3290",
      "parents": [
        "c2d0c555c22242c3a76e366074c4d83ef9fa3b8c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 14:10:52 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 28 16:55:10 2011 +0200"
      },
      "message": "genirq: Move INPROGRESS, MASKED and DISABLED state flags to irq_data\n\nWe really need these flags for some of the interrupt chips. Move it\nfrom internal state to irq_data and provide proper accessors.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: David Daney \u003cddaney@caviumnetworks.com\u003e\n"
    },
    {
      "commit": "c2d0c555c22242c3a76e366074c4d83ef9fa3b8c",
      "tree": "7426945b566129163639229fa0a5f420cdce13a8",
      "parents": [
        "b3d422329f2e061d66af4f933ef316e50e5edcac"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Fri Mar 25 12:38:50 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 17:45:59 2011 +0200"
      },
      "message": "genirq: Split irq_set_affinity() so it can be called with lock held.\n\nThe .irq_cpu_online() and .irq_cpu_offline() functions may need to\nadjust affinity, but they are called with the descriptor lock held.\nCreate __irq_set_affinity_locked() which is called with the lock held.\nMake irq_set_affinity() just a wrapper that acquires the lock.\n\n[ tglx: Changed the argument to irq_data, added a !desc check and\n        moved the !irq_set_affinity check where it belongs ]\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: linux-mips@linux-mips.org\nCc: ralf@linux-mips.org\nLKML-Reference: \u003c1301081931-11240-4-git-send-email-ddaney@caviumnetworks.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b3d422329f2e061d66af4f933ef316e50e5edcac",
      "tree": "530100dd1733e24a017f4b3df4959c667369d236",
      "parents": [
        "0fdb4b259ed3e91b687ac26848202f5e7c217e62"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 16:05:36 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 17:45:58 2011 +0200"
      },
      "message": "genirq: Add chip flag for restricting cpu_on/offline calls\n\nAdd a flag which indicates that the on/offline callback should only be\ncalled on enabled interrupts.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "0fdb4b259ed3e91b687ac26848202f5e7c217e62",
      "tree": "52503c0c5c35f95ab88a9867fc46c43fc7d9c200",
      "parents": [
        "801a0e9ae36e9b487092e31699d28c0b9a21ad52"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Fri Mar 25 12:38:49 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 17:45:58 2011 +0200"
      },
      "message": "genirq: Add chip hooks for taking CPUs on/off line.\n\n[ tglx: Removed the enabled argument as this is now available in\nirq_data ]\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: linux-mips@linux-mips.org\nCc: ralf@linux-mips.org\nLKML-Reference: \u003c1301081931-11240-3-git-send-email-ddaney@caviumnetworks.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "801a0e9ae36e9b487092e31699d28c0b9a21ad52",
      "tree": "c448d150797272b09417f5410e7570742e59368b",
      "parents": [
        "d72274e5895d11570a0a4a3214a1933c86d5ccb7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 11:02:49 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 17:45:58 2011 +0200"
      },
      "message": "genirq: Add irq disabled flag to irq_data state\n\nSome irq_chip implementation require to know the disabled state of the\ninterrupt in certain callbacks. Add a state flag and accessor to\nirq_data.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d72274e5895d11570a0a4a3214a1933c86d5ccb7",
      "tree": "3925786563e67241cc5798ebbbcf79c0ce738f69",
      "parents": [
        "16c29dafcc86024048f1dbb8349d31cb22c7c55a"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Fri Mar 25 12:38:48 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 27 17:45:58 2011 +0200"
      },
      "message": "genirq: Reserve the irq when calling irq_set_chip()\n\nThe helper macros and functions like for_each_active_irq() don\u0027t work\nunless the irq is in the allocated_irqs set.\n\nIn the case of !CONFIG_SPARSE_IRQ, instead of forcing all users of the\nirq infrastructure to explicitly call irq_reserve_irq(), do it for\nthem.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: linux-mips@linux-mips.org\nCc: ralf@linux-mips.org\nLKML-Reference: \u003c1301081931-11240-2-git-send-email-ddaney@caviumnetworks.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ab7798ffcf98b11a9525cf65bacdae3fd58d357f",
      "tree": "834ed73e8ab309895934bcf8bfe9e531ec10b32b",
      "parents": [
        "08f1b807355c8d355885a71e7fd462fe9d499411"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 25 16:48:50 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 25 17:04:20 2011 +0100"
      },
      "message": "genirq: Expand generic show_interrupts()\n\nSome archs want to print extra information for certain irq_chips which\nis per irq and not per chip. Allow them to provide a chip callback to\nprint the chip name and the extra information.\n\nPowerPC wants to print the LEVEL/EDGE type information. Make it configurable.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3b9038912828384e38d82409c281124631c8533b",
      "tree": "68e41aeda588e7363ad252d108b5fce39a587ec6",
      "parents": [
        "6447f55da90b77faec1697d499ed7986bb4f6de6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 23 00:24:11 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 23 20:22:06 2011 +0100"
      },
      "message": "genirq; Remove the last leftovers of the old sparse irq code\n\nAll users converted. Get rid of it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1c389795c15d349c2c7b23baf927e16e86ca3ae8",
      "tree": "cc06eb6e38ad3cd291e9420ec5203a89c77bf3cc",
      "parents": [
        "15825a5cd4adb199fd76737e8bc846154e315218"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu Mar 17 14:43:07 2011 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 17 15:52:30 2011 +0100"
      },
      "message": "genirq: Fix incorrect unlock in __setup_irq()\n\ngoto out_thread is called before we take the lock. It causes a gcc\nwarning: \"kernel/irq/manage.c:858: warning: ‘flags’ may be used\nuninitialized in this function\"\n\n[ tglx: Moved unlock before free_cpumask_var() ]\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nLKML-Reference: \u003c20110317114307.GJ2008@bicker\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ee0401ec11bb7b83b7fa9476d0aaeabd59216062",
      "tree": "a723475dc3d36994a1e43397cbe55e7fcf308a9f",
      "parents": [
        "6d05c80dd2115d69599368b150c3df0cf5a54c51"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 17 13:36:57 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 17 15:52:19 2011 +0100"
      },
      "message": "genirq: show_interrupts: Check desc-\u003ename before printing it blindly\n\ndesc-\u003ename is not required and not used by all architectures.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d209a699a0b975ad47f399d70ddc3791f1b84496",
      "tree": "225ee2dd5e51acc769cd272ce86d36405e933ed2",
      "parents": [
        "d9936bb3952a08d701f7b03f8f62d158f94d8085"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 21:22:14 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 12 11:12:58 2011 +0100"
      },
      "message": "genirq: Add chip flag to force mask on suspend\n\nOn suspend we disable all interrupts in the core code, but this does\nnot mask the interrupt line in the default implementation as we use a\nlazy disable approach. That means we mark the interrupt disabled, but\nleave the hardware unmasked. That\u0027s an optimization because we avoid\nthe hardware access for the common case where no interrupt happens\nafter we marked it disabled. If an interrupt happens, then the\ninterrupt flow handler masks the line at the hardware level and marks\nit pending.\n\nSuspend makes use of this delayed disable as it \"disables\" all\ninterrupts when preparing the suspend transition. Right before the\nsystem goes into hardware suspend state it checks whether one of the\ninterrupts which is marked as a wakeup interrupt came in after\ndisabling it.\n\nMost interrupt chips have a separate register which selects the\ninterrupts which can wake up the system from suspend, so we don\u0027t have\nto mask any on the non wakeup interrupts.\n\nBut now we have to deal with brilliant designed hardware which lacks\nsuch a wakeup configuration facility. For such hardware it\u0027s necessary\nto mask all non wakeup interrupts before going into suspend in order\nto avoid the wakeup from random interrupts.\n\nRather than working around this in the affected interrupt chip\nimplementations we can solve this elegant in the core code itself.\n\nAdd a flag IRQCHIP_MASK_ON_SUSPEND which can be set by the irq chip\nimplementation to indicate, that the interrupts which are not selected\nas wakeup sources must be masked in the suspend path. Mask them in the\nloop which checks the wakeup interrupts pending flag.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Abhijeet Dharmapurikar \u003cadharmap@codeaurora.org\u003e\nLKML-Reference: \u003calpine.LFD.2.00.1103112112310.2787@localhost6.localdomain6\u003e\n\n"
    },
    {
      "commit": "c68fd4f3ca90de7d18c567e70b2c164078aefadf",
      "tree": "eaa80d187b308a9a21af433e890b58fb22552612",
      "parents": [
        "c69e3758ff56d03e161187355791ec992c574276"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 08 19:52:55 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 08 19:52:55 2011 +0100"
      },
      "message": "genirq: Add comments to Kconfig switches\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "c69e3758ff56d03e161187355791ec992c574276",
      "tree": "d423ff265f61d84d43c29b7e72c428ea2a3f68bc",
      "parents": [
        "8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 11:49:21 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Mar 02 11:49:21 2011 +0100"
      },
      "message": "genirq: Fixup fasteoi handler for oneshot mode\n\nThe fasteoi handler must mask the interrupt line in oneshot mode\notherwise we end up with an irq storm.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3",
      "tree": "50141928db9f0ac1377dd8bb355d600232d6b38c",
      "parents": [
        "8eb90c30e0e815a1308828352eabd03ca04229dd"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:23 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 26 11:57:18 2011 +0100"
      },
      "message": "genirq: Provide forced interrupt threading\n\nAdd a commandline parameter \"threadirqs\" which forces all interrupts except\nthose marked IRQF_NO_THREAD to run threaded. That\u0027s mostly a debug option to\nallow retrieving better debug data from crashing interrupt handlers. If\n\"threadirqs\" is not enabled on the kernel command line, then there is no\nimpact in the interrupt hotpath.\n\nArchitecture code needs to select CONFIG_IRQ_FORCED_THREADING after\nmarking the interrupts which cant be threaded IRQF_NO_THREAD. All\ninterrupts which have IRQF_TIMER set are implict marked\nIRQF_NO_THREAD. Also all PER_CPU interrupts are excluded.\n\nForced threading hard interrupts also forces all soft interrupt\nhandling into thread context.\n\nWhen enabled it might slow down things a bit, but for debugging problems in\ninterrupt code it\u0027s a reasonable penalty as it does not immediately\ncrash and burn the machine when an interrupt handler is buggy.\n\nSome test results on a Core2Duo machine:\n\nCache cold run of:\n # time git grep irq_desc\n\n      non-threaded       threaded\n real 1m18.741s          1m19.061s\n user 0m1.874s           0m1.757s\n sys  0m5.843s           0m5.427s\n\n # iperf -c server\nnon-threaded\n[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec\nthreaded\n[  3]  0.0-10.0 sec  1.09 GBytes   939 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec\n[  3]  0.0-10.0 sec  1.09 GBytes   937 Mbits/sec\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.772668648@linutronix.de\u003e\n"
    },
    {
      "commit": "9d591edd02a245305b1b9379e4c5571bad4d2774",
      "tree": "1fdd608db6096afaf2696ff9878cb4b7096047f3",
      "parents": [
        "b5faba21a6805c33b40e258d36f57997ee1de131"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:16 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 20:24:21 2011 +0100"
      },
      "message": "genirq: Allow shared oneshot interrupts\n\nSupport ONESHOT on shared interrupts, if all drivers agree on it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.483640430@linutronix.de\u003e\n"
    },
    {
      "commit": "b5faba21a6805c33b40e258d36f57997ee1de131",
      "tree": "c84ef3357ecd6e1b1cfda623136529db0e5fab6f",
      "parents": [
        "1204e95689f9fbd245a4ce5c1b0cd0a9b77f8d25"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 23 23:52:13 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 20:24:21 2011 +0100"
      },
      "message": "genirq: Prepare the handling of shared oneshot interrupts\n\nFor level type interrupts we need to track how many threads are on\nflight to avoid useless interrupt storms when not all thread handlers\nhave finished yet. Keep track of the woken threads and only unmask\nwhen there are no more threads in flight.\n\nYes, I\u0027m lazy and using a bitfield. But not only because I\u0027m lazy, the\nmain reason is that it\u0027s way simpler than using a refcount. A refcount\nbased solution would need to keep track of various things like\ncrashing the irq thread, spurious interrupts coming in,\ndisables/enables, free_irq() and some more. The bitfield keeps the\ntracking simple and makes things just work. It\u0027s also nicely confined\nto the thread code pathes and does not require additional checks all\nover the place.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c20110223234956.388095876@linutronix.de\u003e\n"
    },
    {
      "commit": "1204e95689f9fbd245a4ce5c1b0cd0a9b77f8d25",
      "tree": "7dafda97ffb9156853904873c1397ac2d2b5b9d7",
      "parents": [
        "fd4afaf33313d94f548cb09129ecba3dbab62931"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 17:17:18 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 25 17:17:18 2011 +0100"
      },
      "message": "genirq: Make warning in handle_percpu_event useful\n\nThe WARN_ON_ONCE in handle_percpu_event() which emits a warning when\nan action handler returns with interrupts enabled is not really\nuseful. It does not reveal the interrupt number and handler function\nwhich caused it. Make it WARN_ONCE() and add the information.\n\nReported-by: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fd4afaf33313d94f548cb09129ecba3dbab62931",
      "tree": "00c5816ace93c8b53df60c0fd675d9a46f03b500",
      "parents": [
        "70433c01613c2a44756c7b25f7bdd6c1c77b119f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Thu Feb 17 13:39:05 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 22:33:10 2011 +0100"
      },
      "message": "genirq: Streamline kernel/irq/Kconfig\n\n\"def_bool n\" without prompt is pointless, these should be just \"bool\".\n\n[ tglx: Adapted to latest changes ]\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nLKML-Reference: \u003c4D5D3309020000780003264A@vpn.id2.novell.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "70433c01613c2a44756c7b25f7bdd6c1c77b119f",
      "tree": "27fb95b4ccaa498a7bbae135835b8a0472147d1b",
      "parents": [
        "8fff39e06987492da3d4a0b9ec7cdbd245b6762b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 12:50:12 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 22 13:02:03 2011 +0100"
      },
      "message": "genirq: Use the correct variable for note_interrupt\n\nnote_interrupt wants to be called with the combined result of all\nhandlers called, not with the last one. If it\u0027s a shared interrupt\nthen the last handler might return IRQ_NONE often enough to trigger\nthe spurious dectector which turns off a perfectly fine working\ninterrupt line. Bug was introduced in commit 1277a532(genirq: Simplify\nhandle_irq_event()).\n\nYes, I really messed up there. First the variable ret should not have\nbeen named differently to avoid similarity with retval. Second it\nshould have been declared in the do {} loop.\n\nRename it to res and move it into the do {} loop and vanish under a\nhuge brown paperbag.\n\nReported-bisected-tested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8fff39e06987492da3d4a0b9ec7cdbd245b6762b",
      "tree": "751d1930d88def0238e927ac4e03f23703656a4d",
      "parents": [
        "ed4dea6e0e33a3e58d8b77b775a8f0e433e7a005"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 14:19:42 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:20:00 2011 +0100"
      },
      "message": "genirq: Add missing break in __irq_set_trigger()\n\nThe switch case in __irq_set_trigger() lacks a break, which emits a\npr_err unconditionally on success.\n\nReported-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ed4dea6e0e33a3e58d8b77b775a8f0e433e7a005",
      "tree": "99f3168f5307545e6107603431e877b5369f767f",
      "parents": [
        "a61d825808a0ce9935afebc225dcd602d5339e14"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sat Feb 19 11:07:37 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:20:00 2011 +0100"
      },
      "message": "genirq: Use IRQ_BITMAP_BITS as search size in irq_alloc_descs()\n\nThe runtime expansion of nr_irqs does not take into account that\nbitmap_find_next_zero_area() returns \"start\" + size in case the search\nfor an matching zero area fails. That results in a start value which\ncan be completely off and is not covered by the following\nexpand_nr_irqs() and possibly outside of the absolute limit. But we\nuse it without further checking.\n\nUse IRQ_BITMAP_BITS as the limit for the bitmap search and expand\nnr_irqs when the start bit is beyond nr_irqs. So start is always\npointing to the correct area in the bitmap. nr_irqs is just the limit\nfor irq enumerations, not the real limit for the irq space.\n\n[ tglx: Let irq_expand_nr_irqs() take the new upper end so we do not\n  \texpand nr_irqs more than necessary. Made changelog readable ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c4D6014F9.8040605@kernel.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a61d825808a0ce9935afebc225dcd602d5339e14",
      "tree": "136d068ca3a58c9d6d3d28786a246c1204452c8c",
      "parents": [
        "a439520f8b18917b322f576be04c54aba84bb044"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 12:54:34 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 21 21:19:59 2011 +0100"
      },
      "message": "genirq: Fix misplaced status update in irq_disable()\n\nWe lazy disable interrupt lines, so only mark the line masked, when\nthe chip provides an irq_disable callback.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a439520f8b18917b322f576be04c54aba84bb044",
      "tree": "b835a4b32c057408ed35292c02ad214341e317ed",
      "parents": [
        "77694b408abb8f92195ad5ed6ce5492f1d794c77"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 04 18:46:16 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:25 2011 +0100"
      },
      "message": "genirq: Implement irq_data based move_*_irq() versions\n\nNo need to lookup the irq descriptor when calling from a chip callback\nfunction which has irq_data already handy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "77694b408abb8f92195ad5ed6ce5492f1d794c77",
      "tree": "a0f7e81a0a155523f69146cd560cc2f49543a99e",
      "parents": [
        "781295762defc709a609efc01d8bb065276cd9a2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 15 10:33:57 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:24 2011 +0100"
      },
      "message": "genirq; Add fasteoi irq_chip quirk\n\nSome chips want irq_eoi() only called when an interrupt is actually\nhandled. So they have checks for INPROGRESS and DISABLED in their\nirq_eoi callbacks. Add a chip flag, which allows to handle that in the\ngeneric code. No impact on the fastpath.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "781295762defc709a609efc01d8bb065276cd9a2",
      "tree": "21f035b5f92571c8c3559b5e94eb0e1aa4113a36",
      "parents": [
        "3836ca08aad4575c120ccf328652f3873eea9063"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 15:14:20 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:24 2011 +0100"
      },
      "message": "genirq: Add preflow handler support\n\nsparc64 needs to call a preflow handler on certain interrupts befor\ncalling the action chain. Integrate it into handle_fasteoi_irq. Must\nbe enabled via CONFIG_IRQ_FASTEOI_PREFLOW. No impact when disabled.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3836ca08aad4575c120ccf328652f3873eea9063",
      "tree": "d5aa92880d2a44836cb7f3decdae761d0a780068",
      "parents": [
        "02725e7471b8dd58fa96f6604bdb5dde45405a2e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 14 20:09:19 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Consolidate set_chip_handler functions\n\nNo need to have separate functions if we have one plus inline wrappers.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "02725e7471b8dd58fa96f6604bdb5dde45405a2e",
      "tree": "7c5243d0a2e33f2165d1531febbe9752fad389c7",
      "parents": [
        "d5eb4ad2dfb2dfae43fd51bc8630b4fc3ef00e92"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 12 10:37:36 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Use irq_get/put functions\n\nConvert the management functions to use the common irq_get/put\nfunction.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d5eb4ad2dfb2dfae43fd51bc8630b4fc3ef00e92",
      "tree": "ec164ed62dd55d14e0f73e1ba6f894433f70394e",
      "parents": [
        "091738a266fc74329ae186f22ff2b3f01319112d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 12 12:16:16 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Implement irq_get/put_desc_[bus]locked/unlock()\n\nMost of the managing functions get the irq descriptor and lock it -\neither with or without buslock. Instead of open coding this over and\nover provide a common function to do that.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "091738a266fc74329ae186f22ff2b3f01319112d",
      "tree": "75190438b74ad345753a2a8c239724995cee40ea",
      "parents": [
        "a6967caf00ebbb2d4acdebcb72a25f2e9ba43fd2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 14 20:16:43 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:23 2011 +0100"
      },
      "message": "genirq: Remove real old transition functions\n\nThese transition helpers are stale for years now. Remove them.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a6967caf00ebbb2d4acdebcb72a25f2e9ba43fd2",
      "tree": "fbc957bb2e34d644164d3b0df874da88fa01ec3e",
      "parents": [
        "e1ef824146131709d7466e37f889f2dab24ca98e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 22:01:25 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Remove desc-\u003estatus when GENERIC_HARDIRQS_NO_COMPAT\u003dy\n\nIf everything uses the right accessors, then enabling\nGENERIC_HARDIRQS_NO_COMPAT should just work. If not it will tell you.\n\nDon\u0027t be lazy and use the trick which I use in the core code!\n\ngit grep status_use_accessors\n\nwill unearth it in a split second. Offenders are tracked down and not\nslapped with stinking trouts. This time we use frozen shark for a\nbetter educational value.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e1ef824146131709d7466e37f889f2dab24ca98e",
      "tree": "d66f8423fce8e4d04aa509e1cbbaea2fb99a812c",
      "parents": [
        "7f94226f03299f1ca32f118f02f2a0295e0e5e93"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 22:25:31 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Reflect IRQ_MOVE_PCNTXT in irq_data state\n\nRequired by x86.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7f94226f03299f1ca32f118f02f2a0295e0e5e93",
      "tree": "049a83a3c264d4378f341991800c345bf4eeb5a5",
      "parents": [
        "d4d5e08960844a062da8387ee5f16ca7a33200d0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 19:46:26 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Move wakeup state to irq_data\n\nSome irq_chips need to know the state of wakeup mode for\nsetting the trigger type etc. Reflect it in irq_data state.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d4d5e08960844a062da8387ee5f16ca7a33200d0",
      "tree": "1154fd87e25595ae9391740a1d9a3d60f69770de",
      "parents": [
        "2bff17ad2107c66fc8ca96501a7128dd7fa7a390"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 10 13:16:14 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:22 2011 +0100"
      },
      "message": "genirq: Add IRQCHIP_SET_TYPE_MASKED flag\n\nirq_chips, which require to mask the chip before changing the trigger\ntype should set this flag. So the core takes care of it and the\nrequirement for looking into desc-\u003estatus in the chip goes away.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Linus Walleij \u003clinus.walleij@stericsson.com\u003e\nCc: Lars-Peter Clausen \u003clars@metafoo.de\u003e\n"
    },
    {
      "commit": "5d4d8fc9ac3e9a90bbdf90bae6864cb2c01f2208",
      "tree": "5ec451adff8792ed345bac22c91d8565b11ba61a",
      "parents": [
        "f9e4989eb8183a1f33581fa1b99274287b0639d2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 08 17:27:18 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:21 2011 +0100"
      },
      "message": "genirq: Cleanup irq.h\n\nPut the constants into an enum and document them.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f9e4989eb8183a1f33581fa1b99274287b0639d2",
      "tree": "3b69372623761448a044a24627ceba973e25c4f1",
      "parents": [
        "1ccb4e612f68ceefb888c2c6c1def6294ea8666d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 09 14:54:49 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:21 2011 +0100"
      },
      "message": "genirq: Force wrapped access to desc-\u003estatus in core code\n\nForce the usage of wrappers by another nasty CPP substitution.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1ccb4e612f68ceefb888c2c6c1def6294ea8666d",
      "tree": "f3cae56489a56ebc54e06871abdf63193dc5a4bb",
      "parents": [
        "876dbd4cc1b35c1a4cb96a2be1d43ea0eabce3b4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 09 14:44:17 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:21 2011 +0100"
      },
      "message": "genirq: Wrap the remaning IRQ_* flags\n\nUse wrappers to keep them away from the core code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "876dbd4cc1b35c1a4cb96a2be1d43ea0eabce3b4",
      "tree": "9be1e7e4cd4a4c9fadd98a9ac637020417215521",
      "parents": [
        "2bdd10558c8d93009cb6c32ce9e30800fbb08add"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 08 17:28:12 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 19 12:58:20 2011 +0100"
      },
      "message": "genirq: Mirror irq trigger type bits in irq_data.state\n\nThat\u0027s the data structure chip functions get provided. Also allow them\nto signal the core code that they updated the flags in irq_data.state\nby returning IRQ_SET_MASK_OK_NOCOPY. The default is unchanged.\n\nThe type bits should be accessed via:\n\nval \u003d irqd_get_trigger_type(irqdata);\nand\nirqd_set_trigger_type(irqdata, val);\n\nCoders who access them directly will be tracked down and slapped with\nstinking trouts.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    }
  ],
  "next": "2bdd10558c8d93009cb6c32ce9e30800fbb08add"
}
