)]}'
{
  "log": [
    {
      "commit": "e58aa3d2d0cc01ad8d6f7f640a0670433f794922",
      "tree": "6ed92d753a48e1fe9978f0958d1c09c8aae92fae",
      "parents": [
        "ae731f8d0785ccd3380f511bae888933b6562e45"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 26 00:06:51 2010 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 13 16:36:40 2010 +0200"
      },
      "message": "genirq: Run irq handlers with interrupts disabled\n\nRunning interrupt handlers with interrupts enabled can cause stack\noverflows. That has been observed with multiqueue NICs delivering all\ntheir interrupts to a single core. We might band aid that somehow by\nchecking the interrupt stacks, but the real safe fix is to run the irq\nhandlers with interrupts disabled.\n\nDrivers for whacky hardware still can reenable them in the handler\nitself, if the need arises. (They do already due to lockdep)\n\nThe risk of doing this is rather low:\n\n - lockdep already enforces this\n - CONFIG_NOHZ has shaken out the drivers which relied on jiffies updates\n - time keeping is not longer sensitive to the timer interrupt being delayed\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Linus Torvalds \u003ctorvalds@osdl.org\u003e\nLKML-Reference: \u003c20100326000405.758579387@linutronix.de\u003e\n\n"
    },
    {
      "commit": "b5eb78f76ddfa7caf4340cf6893b032f45d8114a",
      "tree": "490349138af4f4e01f1373a947aec090eb733b2a",
      "parents": [
        "99558f0bbe68cb09799ec38adbaa3f3b2dc7ba63"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:35 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 17 17:27:20 2010 -0800"
      },
      "message": "sparseirq: Use radix_tree instead of ptrs array\n\nUse radix_tree irq_desc_tree instead of irq_desc_ptrs.\n\n-v2: according to Eric and cyrill to use radix_tree_lookup_slot and\n     radix_tree_replace_slot\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-32-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "99558f0bbe68cb09799ec38adbaa3f3b2dc7ba63",
      "tree": "03a0393cae76ac3d0249fc53128974433d94e802",
      "parents": [
        "773e3eb7b81e5ba13b5155dfb3bb75b8ce37f8f9"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:34 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 17 17:27:03 2010 -0800"
      },
      "message": "sparseirq: Change irq_desc_ptrs to static\n\nAdd replace_irq_desc() instead of poking at the array directly.\n\n-v2: remove unneeded boundary check in replace_irq_desc\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-31-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "febcb0c59ac19fef2081a30e371e7af3619b5e91",
      "tree": "b920a26f537df2ee736cd2690eff75baf781e7db",
      "parents": [
        "5619c28061ff9d2559a93eaba492935530f2a513"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Feb 10 01:20:32 2010 -0800"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Wed Feb 17 17:23:59 2010 -0800"
      },
      "message": "irq: Remove unnecessary bootmem code\n\nmem_init is moved early already.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nLKML-Reference: \u003c1265793639-15071-29-git-send-email-yinghai@kernel.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "239007b8440abff689632f50cdf0f2b9e895b534",
      "tree": "569cab843af4a999d6d868ec9a824530d2bfa733",
      "parents": [
        "9f5a5621e78cf48d86682a71ceb3fcdbde38b222"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Nov 17 16:46:45 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 14 23:55:33 2009 +0100"
      },
      "message": "genirq: Convert irq_desc.lock to raw_spinlock\n\nConvert locks which cannot be sleeping locks in preempt-rt to\nraw_spinlocks.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d43c36dc6b357fa1806800f18aa30123c747a6d1",
      "tree": "339ce510073ecbe9b3592008f7dece7b277035ef",
      "parents": [
        "69585dd69e663a40729492c7b52eb82477a2027a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 07 17:09:06 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 11 11:20:58 2009 -0700"
      },
      "message": "headers: remove sched.h from interrupt.h\n\nAfter m68k\u0027s task_thread_info() doesn\u0027t refer to current,\nit\u0027s possible to remove sched.h from interrupt.h and not break m68k!\nMany thanks to Heiko Carstens for allowing this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "372e24b0cb764ec55b4cf3408a95ae40a29e5b96",
      "tree": "ee8b1e26ec723e509f6478898f4cfbd826aac5f2",
      "parents": [
        "31b47cf7609288893a10706c648faa932c7aef90"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Aug 26 16:20:13 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Aug 29 15:53:00 2009 +0200"
      },
      "message": "irq: Make sure irq_desc for legacy irq get correct node setting\n\nwhen there is no ram on node 0.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nLKML-Reference: \u003c4A95C32D.5040605@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "28be225b23b115573e0ecc8ef9996f42a1652f74",
      "tree": "01cc74b96307caa3abbda36baf268c2541a3a8e1",
      "parents": [
        "ca371c0d7e23d0d0afae65fc83a0e91cf7399573"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Jun 12 11:33:02 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri Jun 12 13:50:23 2009 +0300"
      },
      "message": "irq: slab alloc for default irq_affinity\n\nIngo had\n\n[    0.000000] ------------[ cut here ]------------\n[    0.000000] WARNING: at mm/bootmem.c:537 alloc_arch_preferred_bootmem+0x2b/0x71()\n[    0.000000] Hardware name: System Product Name\n[    0.000000] Modules linked in:\n[    0.000000] Pid: 0, comm: swapper Tainted: G        W  2.6.30-tip-03087-g0bb2618-dirty #52506\n[    0.000000] Call Trace:\n[    0.000000]  [\u003c81032588\u003e] warn_slowpath_common+0x60/0x90\n[    0.000000]  [\u003c810325c5\u003e] warn_slowpath_null+0xd/0x10\n[    0.000000]  [\u003c819d1bc0\u003e] alloc_arch_preferred_bootmem+0x2b/0x71\n[    0.000000]  [\u003c819d1c31\u003e] ___alloc_bootmem_nopanic+0x2b/0x9a\n[    0.000000]  [\u003c81050a0a\u003e] ? lock_release+0xac/0xb2\n[    0.000000]  [\u003c819d1d4c\u003e] ___alloc_bootmem+0xe/0x2d\n[    0.000000]  [\u003c819d1e9f\u003e] __alloc_bootmem+0xa/0xc\n[    0.000000]  [\u003c819d7c63\u003e] alloc_bootmem_cpumask_var+0x21/0x26\n[    0.000000]  [\u003c819d0cc8\u003e] early_irq_init+0x15/0x10d\n[    0.000000]  [\u003c819bb75a\u003e] start_kernel+0x167/0x326\n[    0.000000]  [\u003c819bb06b\u003e] __init_begin+0x6b/0x70\n[    0.000000] ---[ end trace 4eaa2a86a8e2da23 ]---\n[    0.000000] NR_IRQS:2304 nr_irqs:424\n[    0.000000] CPU 0 irqstacks, hard\u003d821e6000 soft\u003d821e7000\n\nwe need to update init_irq_default_affinity\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "22fb4e71e646695c7e0f379ada66b372c2d1aa1a",
      "tree": "f4af9544ae6c0f6c6e9f52965ce387d5b529a3b5",
      "parents": [
        "0fb530291621c8b8a1b16abeeab05d9262489f71"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 14:46:49 2009 +0300"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:27:13 2009 +0300"
      },
      "message": "irq: use kcalloc() instead of the bootmem allocator\n\nFixes the following problem:\n\n[    0.000000] Experimental hierarchical RCU init done.\n[    0.000000] NR_IRQS:4352 nr_irqs:256\n[    0.000000] ------------[ cut here ]------------\n[    0.000000] WARNING: at mm/bootmem.c:537 alloc_arch_preferred_bootmem+0x40/0x7e()\n[    0.000000] Hardware name: To Be Filled By O.E.M.\n[    0.000000] Pid: 0, comm: swapper Not tainted 2.6.30-tip-02161-g7a74539-dirty #59709\n[    0.000000] Call Trace:\n[    0.000000]  [\u003cffffffff823f8c8e\u003e] ? alloc_arch_preferred_bootmem+0x40/0x7e\n[    0.000000]  [\u003cffffffff81067168\u003e] warn_slowpath_common+0x88/0xcb\n[    0.000000]  [\u003cffffffff810671d2\u003e] warn_slowpath_null+0x27/0x3d\n[    0.000000]  [\u003cffffffff823f8c8e\u003e] alloc_arch_preferred_bootmem+0x40/0x7e\n[    0.000000]  [\u003cffffffff823f9307\u003e] ___alloc_bootmem_nopanic+0x4e/0xec\n[    0.000000]  [\u003cffffffff823f93c5\u003e] ___alloc_bootmem+0x20/0x61\n[    0.000000]  [\u003cffffffff823f962e\u003e] __alloc_bootmem+0x1e/0x34\n[    0.000000]  [\u003cffffffff823f757c\u003e] early_irq_init+0x6d/0x118\n[    0.000000]  [\u003cffffffff823e0140\u003e] ? early_idt_handler+0x0/0x71\n[    0.000000]  [\u003cffffffff823e0cf7\u003e] start_kernel+0x192/0x394\n[    0.000000]  [\u003cffffffff823e0140\u003e] ? early_idt_handler+0x0/0x71\n[    0.000000]  [\u003cffffffff823e02ad\u003e] x86_64_start_reservations+0xb4/0xcf\n[    0.000000]  [\u003cffffffff823e0000\u003e] ? __init_begin+0x0/0x140\n[    0.000000]  [\u003cffffffff823e0420\u003e] x86_64_start_kernel+0x158/0x17b\n[    0.000000] ---[ end trace a7919e7f17c0a725 ]---\n[    0.000000] Fast TSC calibration using PIT\n[    0.000000] Detected 2002.510 MHz processor.\n[    0.004000] Console: colour VGA+ 80x25\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "dad213aeb59718623fc59defeff95fe8c3feb8a0",
      "tree": "3b43b199f0c8a03f010f03087428b0d6c67cd75c",
      "parents": [
        "38c7fed2f5ffee17e1fa3e0f78b0e1bf43d52d13"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu May 28 18:14:40 2009 -0700"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Jun 11 19:27:08 2009 +0300"
      },
      "message": "irq/cpumask: make memoryless node zero happy\n\nDon\u0027t hardcode to node zero for early boot IRQ setup memory allocations.\n\n[ penberg@cs.helsinki.fi: minor cleanups ]\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "862366118026a358882eefc70238dbcc3db37aac",
      "tree": "4eb62bc10327a5afac064a95a091ea05ecd2acc1",
      "parents": [
        "57eee9ae7bbcfb692dc96c739a5184adb6349733",
        "511b01bdf64ad8a38414096eab283c7784aebfc4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 19:53:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 10 19:53:40 2009 -0700"
      },
      "message": "Merge branch \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (244 commits)\n  Revert \"x86, bts: reenable ptrace branch trace support\"\n  tracing: do not translate event helper macros in print format\n  ftrace/documentation: fix typo in function grapher name\n  tracing/events: convert block trace points to TRACE_EVENT(), fix !CONFIG_BLOCK\n  tracing: add protection around module events unload\n  tracing: add trace_seq_vprint interface\n  tracing: fix the block trace points print size\n  tracing/events: convert block trace points to TRACE_EVENT()\n  ring-buffer: fix ret in rb_add_time_stamp\n  ring-buffer: pass in lockdep class key for reader_lock\n  tracing: add annotation to what type of stack trace is recorded\n  tracing: fix multiple use of __print_flags and __print_symbolic\n  tracing/events: fix output format of user stack\n  tracing/events: fix output format of kernel stack\n  tracing/trace_stack: fix the number of entries in the header\n  ring-buffer: discard timestamps that are at the start of the buffer\n  ring-buffer: try to discard unneeded timestamps\n  ring-buffer: fix bug in ring_buffer_discard_commit\n  ftrace: do not profile functions when disabled\n  tracing: make trace pipe recognize latency format flag\n  ...\n"
    },
    {
      "commit": "948cd52906baf1f92aeea2f9b5c515db1b2e592a",
      "tree": "a03482aebb7f8ed0b1706db8d6cd105f79ea53cc",
      "parents": [
        "4c6f18fc81565967da20f2d4a3922cdba33f8e2b"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri May 22 10:40:09 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat May 23 14:55:24 2009 +0200"
      },
      "message": "sparseirq: Allow early irq_desc allocation\n\nPresently non-legacy IRQs have their irq_desc allocated with\nkzalloc_node(). This assumes that all callers of irq_to_desc_node_alloc()\nwill be sufficiently late in the boot process that kmalloc is available.\n\nWhile porting sparseirq support to sh this blew up immediately, as at the\ntime that we register the CPU\u0027s interrupt vector map only bootmem is\navailable. Check slab_is_available() to work out which path to use.\n\n[ Impact: fix SH early boot crash with sparseirq enabled ]\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nLKML-Reference: \u003c20090522014008.GA2806@linux-sh.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6cda3eb62ef42aa5acd649bf99c8db544e0f4051",
      "tree": "93f74ca002f5756c8e157611174f9540b5cf41c0",
      "parents": [
        "b9c61b70075c87a8612624736faf4a2de5b1ed30",
        "cec6be6d1069d697beb490bbb40a290d5ff554a2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 12 12:17:30 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 12 12:17:36 2009 +0200"
      },
      "message": "Merge branch \u0027x86/apic\u0027 into irq/numa\n\nMerge reason: both topics modify the APIC code but were able to do it in\n              parallel so far. An upcoming patch generates a conflict so\n              merge them to avoid the conflict.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44347d947f628060b92449702071bfe1d31dfb75",
      "tree": "c6ed74610d5b3295df4296659f80f5feb94b28cc",
      "parents": [
        "d94fc523f3c35bd8013f04827e94756cbc0212f4",
        "413f81eba35d6ede9289b0c8a920c013a84fac71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:13 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:34 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: tracing/core was on a .30-rc1 base and was missing out on\n              on a handful of tracing fixes present in .30-rc5-almost.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d7226fb6ec5d4f325e4e7fd905894e2ea3eb3ae0",
      "tree": "aa5601ffd1103f5ba8662722a0c88cfe1990a301",
      "parents": [
        "091438dd5668396328a3419abcbc6591159eb8d1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 01 15:16:04 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 01 15:16:04 2009 +0200"
      },
      "message": "Revert \"genirq: assert that irq handlers are indeed running in hardirq context\"\n\nThis reverts commit 044d408409cc4e1bc75c886e27ca85c270db104c.\n\nThe commit added a warning when handle_IRQ_event() is called outside\nof hard interrupt context. This breaks the generic tasklet based\ninterrupt resend mechanism which is used when the hardware has no way\nto retrigger the interrupt. So we get a warning for a use case which\nis correct and worked for years. Remove it.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a0e39ed378fb6ba916522764cd508fa7d42ad495",
      "tree": "e696fef3ec7daebb8861e002b3e7432a209baae4",
      "parents": [
        "8b3725621074040d380664964ffbc40610aef8c6"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Apr 29 13:51:39 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 29 14:06:21 2009 +0200"
      },
      "message": "tracing: fix build failure on s390\n\n\"tracing: create automated trace defines\" causes this compile error on s390,\nas reported by Sachin Sant against linux-next:\n\n kernel/built-in.o: In function `__do_softirq\u0027:\n (.text+0x1c680): undefined reference to `__tracepoint_softirq_entry\u0027\n\nThis happens because the definitions of the softirq tracepoints were moved\nfrom kernel/softirq.c to kernel/irq/handle.c. Since s390 doesn\u0027t support\ngeneric hardirqs handle.c doesn\u0027t get compiled and the definitions are\nmissing.\n\nSo move the tracepoints to softirq.c again.\n\n[ Impact: fix build failure on s390 ]\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c20090429135139.5fac79b8@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85ac16d033370caf6f48d743c8dc8103700f5cc5",
      "tree": "04a73af31c07a8ad29780b777b3f9d041fa236fa",
      "parents": [
        "57b150cce8e004ddd36330490a68bfb59b7271e9"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Apr 27 18:00:38 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 28 12:21:17 2009 +0200"
      },
      "message": "x86/irq: change irq_desc_alloc() to take node instead of cpu\n\nThis simplifies the node awareness of the code. All our allocators\nonly deal with a NUMA node ID locality not with CPU ids anyway - so\nthere\u0027s no need to maintain (and transform) a CPU id all across the\nIRq layer.\n\nv2: keep move_irq_desc related\n\n[ Impact: cleanup, prepare IRQ code to be NUMA-aware ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nLKML-Reference: \u003c49F65536.2020300@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fcef5911c7ea89b80d5bfc727f402f37c9eefd57",
      "tree": "e37ad2cda662933b01b2ba6e28e570a18ef1edc2",
      "parents": [
        "9ec4fa271faf2db3b8e1419c998da1ca6b094eb6"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Apr 27 17:58:23 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 28 12:21:15 2009 +0200"
      },
      "message": "x86/irq: remove leftover code from NUMA_MIGRATE_IRQ_DESC\n\nThe original feature of migrating irq_desc dynamic was too fragile\nand was causing problems: it caused crashes on systems with lots of\ncards with MSI-X when user-space irq-balancer was enabled.\n\nWe now have new patches that create irq_desc according to device\nnuma node. This patch removes the leftover bits of the dynamic balancer.\n\n[ Impact: remove dead code ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nLKML-Reference: \u003c49F654AF.8000808@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ec4fa271faf2db3b8e1419c998da1ca6b094eb6",
      "tree": "2dd817bd41526fc1d1252e50b0b1a0714ae34a7f",
      "parents": [
        "e25c2c873f59c57cf1c2b1979cc8fb01958305ef"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Apr 27 17:57:18 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 28 12:21:14 2009 +0200"
      },
      "message": "irq, cpumask: correct CPUMASKS_OFFSTACK typo and fix fallout\n\nCPUMASKS_OFFSTACK is not defined anywhere (it is CPUMASK_OFFSTACK).\nIt is a typo and init_allocate_desc_masks() is called before it set\naffinity to all cpus...\n\nSplit init_alloc_desc_masks() into all_desc_masks() and init_desc_masks().\n\nAlso use CPUMASK_OFFSTACK in alloc_desc_masks().\n\n[ Impact: fix smp_affinity copying/setup when moving irq_desc between CPUs ]\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nLKML-Reference: \u003c49F6546E.3040406@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ad8d75fff811a6a230f7f43b05a6483099349533",
      "tree": "764f75c0785b29067b141719b6e8000f005da7fd",
      "parents": [
        "ecda8ae02a08ef065ff387f5cb2a2d4999da2408"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Apr 14 19:39:12 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 22:05:43 2009 -0400"
      },
      "message": "tracing/events: move trace point headers into include/trace/events\n\nImpact: clean up\n\nCreate a sub directory in include/trace called events to keep the\ntrace point headers in their own separate directory. Only headers that\ndeclare trace points should be defined in this directory.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a8d154b009168337494fbf345671bab74d3e4b8b",
      "tree": "4097612e1a5cc8bf7658542f7d0f51b815113eaf",
      "parents": [
        "ea20d9293ce423a39717ed4375393129a2e701f9"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Apr 10 09:36:00 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Apr 14 12:57:28 2009 -0400"
      },
      "message": "tracing: create automated trace defines\n\nThis patch lowers the number of places a developer must modify to add\nnew tracepoints. The current method to add a new tracepoint\ninto an existing system is to write the trace point macro in the\ntrace header with one of the macros TRACE_EVENT, TRACE_FORMAT or\nDECLARE_TRACE, then they must add the same named item into the C file\nwith the macro DEFINE_TRACE(name) and then add the trace point.\n\nThis change cuts out the needing to add the DEFINE_TRACE(name).\nEvery file that uses the tracepoint must still include the trace/\u003ctype\u003e.h\nfile, but the one C file must also add a define before the including\nof that file.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/mytrace.h\u003e\n\nThis will cause the trace/mytrace.h file to also produce the C code\nnecessary to implement the trace point.\n\nNote, if more than one trace/\u003ctype\u003e.h is used to create the C code\nit is best to list them all together.\n\n #define CREATE_TRACE_POINTS\n #include \u003ctrace/foo.h\u003e\n #include \u003ctrace/bar.h\u003e\n #include \u003ctrace/fido.h\u003e\n\nThanks to Mathieu Desnoyers and Christoph Hellwig for coming up with\nthe cleaner solution of the define above the includes over my first\ndesign to have the C code include a \"special\" header.\n\nThis patch converts sched, irq and lockdep and skb to use this new\nmethod.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95",
      "tree": "7ff8833745d2f268f897f6fa4a27263b4a572245",
      "parents": [
        "de18836e447c2dc30120c0919b8db8ddc0401cc4",
        "0221c81b1b8eb0cbb6b30a0ced52ead32d2b4e4c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 06 01:41:22 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 06 01:41:22 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into irq/threaded\n\nConflicts:\n\tinclude/linux/irq.h\n\tkernel/irq/handle.c\n"
    },
    {
      "commit": "8302294f43250dc337108c51882a6007f2b1e2e0",
      "tree": "85acd4440799c46a372df9cad170fa0c21e59096",
      "parents": [
        "4fe70410d9a219dabb47328effccae7e7f2a6e26",
        "2e572895bf3203e881356a4039ab0fa428ed2639"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 21:54:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:49:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core-v2\u0027 into tracing-for-linus\n\nConflicts:\n\tinclude/linux/slub_def.h\n\tlib/Kconfig.debug\n\tmm/slob.c\n\tmm/slub.c\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f48fe81e5b032914183e9a17052313720c2cac56",
      "tree": "9404047368387a6f8b39b4a822ef28e18eba45e9",
      "parents": [
        "935bd5b971f0df7c06d214d022cf8392e2f37952"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 24 11:46:22 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 24 12:15:23 2009 +0100"
      },
      "message": "genirq: threaded irq handlers review fixups\n\nDelta patch to address the review comments.\n\n      - Implement warning when IRQ_WAKE_THREAD is requested and no\n        thread handler installed\n      - coding style fixes\n\nPointed-out-by: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "3aa551c9b4c40018f0e261a178e3d25478dc04a9",
      "tree": "2a696109273fcc421d774cc8fefa4180331a85ad",
      "parents": [
        "80c5520811d3805adcb15c570ea5e2d489fa5d0b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 23 18:28:15 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Mar 24 12:15:23 2009 +0100"
      },
      "message": "genirq: add threaded interrupt handler support\n\nAdd support for threaded interrupt handlers:\n\nA device driver can request that its main interrupt handler runs in a\nthread. To achive this the device driver requests the interrupt with\nrequest_threaded_irq() and provides additionally to the handler a\nthread function. The handler function is called in hard interrupt\ncontext and needs to check whether the interrupt originated from the\ndevice. If the interrupt originated from the device then the handler\ncan either return IRQ_HANDLED or IRQ_WAKE_THREAD. IRQ_HANDLED is\nreturned when no further action is required. IRQ_WAKE_THREAD causes\nthe genirq code to invoke the threaded (main) handler. When\nIRQ_WAKE_THREAD is returned handler must have disabled the interrupt\non the device level. This is mandatory for shared interrupt handlers,\nbut we need to do it as well for obscure x86 hardware where disabling\nan interrupt on the IO_APIC level redirects the interrupt to the\nlegacy PIC interrupt lines.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n\n"
    },
    {
      "commit": "80c5520811d3805adcb15c570ea5e2d489fa5d0b",
      "tree": "ae797a7f4af39f80e77526533d06ac23b439f0ab",
      "parents": [
        "b3e3b302cf6dc8d60b67f0e84d1fa5648889c038",
        "8c083f081d0014057901c68a0a3e0f8ca7ac8d23"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 23 14:50:03 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Mar 23 21:20:20 2009 +0100"
      },
      "message": "Merge branch \u0027cpus4096\u0027 into irq/threaded\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tkernel/irq/handle.c\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "edb35028e40515beb2f94808aff8b3e71fb9f35a",
      "tree": "153da9f8ca1934b30474bb15478feb14a7bd5b75",
      "parents": [
        "8f8573ae9f5deefada6f5d64d0a52c9b39c730c7",
        "cb065c06b6cc615a58860d619d7fa7952cd6a18b",
        "5bee17f18b595937e6beafeee5197868a3f74a06"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:20:13 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 16 09:20:13 2009 +0100"
      },
      "message": "Merge branches \u0027irq/genirq\u0027 and \u0027linus\u0027 into irq/core\n"
    },
    {
      "commit": "0e57aa11abb15b70db53d1f95ae70b3c980ac885",
      "tree": "9e4c9fabfcaa095eba1e50252e341aa749c6e607",
      "parents": [
        "a9d0a1a38352c4fb8946e73b3e42ba4ada29e733"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 14:34:05 2009 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 13 16:34:02 2009 +0100"
      },
      "message": "genirq: deprecate __do_IRQ\n\nTwo years migration time is enough. Remove the compability cruft.\n\nAdd the deprecated warning in kernel/irq/handle.c because marking\n__do_IRQ itself is way too noisy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f0ef03985130287c6c84ebe69416cf790e6cc00e",
      "tree": "3ecb04cc4d82e5fc3ae5f1747e6da172ae8cbcb7",
      "parents": [
        "16097439703bcd38e9fe5608c12add6dacb825ea",
        "31bbed527e7039203920c51c9fb48c27aed0820c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:44:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:45:01 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into tracing/textedit\n\nConflicts:\n\tarch/x86/Kconfig\n\tblock/blktrace.c\n\tkernel/irq/handle.c\n\nSemantic conflict:\n\tkernel/trace/blktrace.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "044d408409cc4e1bc75c886e27ca85c270db104c",
      "tree": "c2286707e9d4983a4828b0a4133181031de36964",
      "parents": [
        "c02368a9d059322f913a58111eade87a656fefd5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Mar 02 16:13:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 03 00:05:45 2009 +0100"
      },
      "message": "genirq: assert that irq handlers are indeed running in hardirq context\n\nMake sure the genirq layer handlers are indeed running handlers\nin hardirq context. That is the genirq expectation and doing\nanything else is broken.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c1236006812.5330.632.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "af39241b90a345556b8884adff87096afe71b050",
      "tree": "a913e3f15b1fb91555b5cb5899270274ce4c2c46",
      "parents": [
        "8656e7a2fa6afcd8682990f804a2a9674568738f"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 26 10:11:05 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:43:50 2009 +0100"
      },
      "message": "tracing, genirq: add irq enter and exit trace events\n\nImpact: add new tracepoints\n\nAdd them to the generic IRQ code, that way every architecture\ngets these new tracepoints, not just x86.\n\nUsing Steve\u0027s new \u0027TRACE_FORMAT\u0027, I can get function graph\ntrace as follows using the original two IRQ tracepoints:\n\n 3)               |    handle_IRQ_event() {\n 3)               |    /* (irq_handler_entry) irq\u003d28 handler\u003deth0 */\n 3)               |    e1000_intr_msi() {\n 3)   2.460 us    |      __napi_schedule();\n 3)   9.416 us    |    }\n 3)               |    /* (irq_handler_exit) irq\u003d28 handler\u003deth0 return\u003dhandled */\n 3) + 22.935 us   |  }\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mathieu Desnoyers \u003ccompudj@krystal.dyndns.org\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8f8573ae9f5deefada6f5d64d0a52c9b39c730c7",
      "tree": "444d55bfb8a048ad3b13051cd55a64b688915a58",
      "parents": [
        "37bed90094fdb1eea6e4afec6a200d4e60143e55",
        "0e43785c57fee50fbc00ea0378e941efb61fa0c2",
        "005bf0e6fa0e9543933fe2e36322af649df7cacb",
        "548c8933801c9ee347b6f1bad2491e4286a4f3a2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 11:57:18 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 13 11:57:18 2009 +0100"
      },
      "message": "Merge branches \u0027irq/genirq\u0027, \u0027irq/sparseirq\u0027 and \u0027irq/urgent\u0027 into irq/core\n"
    },
    {
      "commit": "005bf0e6fa0e9543933fe2e36322af649df7cacb",
      "tree": "b14afa63f043d8c1fcf705b2d60262d873ec8f3f",
      "parents": [
        "0f3c2a89c1451cdf6328f99977bd9decd4f708e1"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sun Feb 08 16:18:03 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 09:02:34 2009 +0100"
      },
      "message": "irq: optimize init_kstat_irqs/init_copy_kstat_irqs\n\nSimplify and make init_kstat_irqs etc more type proof, suggested by\nAndrew.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0f3c2a89c1451cdf6328f99977bd9decd4f708e1",
      "tree": "5f06396e409410e5d506f72fe6abebc376a5e689",
      "parents": [
        "4d87c5bec5389625d80b71108795aecf82cd670d"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Sun Feb 08 16:18:03 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 09 08:55:08 2009 +0100"
      },
      "message": "irq: clear kstat_irqs\n\nImpact: get correct kstat_irqs [/proc/interrupts] for msi/msi-x etc\n\nneed to call clear_kstat_irqs(), so when we reuse that irq_desc,\nwe get correct kstat in /proc/interrupts.\n\nThis makes /proc/interrupts not have \u003cNULL\u003e entries.\n\nDon\u0027t need to worry about arch that doesn\u0027t support genirq, because they\nwill not call dynamic_irq_cleanup().\n\nv2: simplify and make clear_kstat_irqs more robust\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c43e0e46adf79c321ed3fbf0351e1005fb8a2413",
      "tree": "35b9ab361651f649d3c9aa69f159812eba50d154",
      "parents": [
        "dba3d36b2f0842ed7f25c33cd3a2ccdb3d0df9db",
        "f2257b70b0f9b2fe8f2afd83fc6798dca75930b8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 30 18:23:30 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 30 18:23:30 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into core/percpu\n\nConflicts:\n\tkernel/irq/handle.c\n"
    },
    {
      "commit": "6a385db5ce7f1fd2c68ec511e44587b67dab8fca",
      "tree": "9324c8ae6f7be54b9fdbd6b60f759292aa727b1f",
      "parents": [
        "18e352e4a73465349711a9324767e1b2453383e2",
        "4369f1fb7cd4cf777312f43e1cb9aa5504fc4125"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:12:55 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 28 23:12:55 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into x86/core\n\nConflicts:\n\tkernel/irq/handle.c\n"
    },
    {
      "commit": "97179fd46da7ddedd18e95388130ed3e06c5a0c7",
      "tree": "8d1a56e41345244d36a9d943a69c5ecf76942816",
      "parents": [
        "1267a8df209c7453d65acbdd56e3588954bf890b"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Tue Jan 27 09:53:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 27 16:06:55 2009 -0800"
      },
      "message": "cpumask fallout: Initialize irq_default_affinity earlier\n\nMove the initialization of irq_default_affinity to early_irq_init as\ncore_initcall is too late.\n\nirq_default_affinity can be used in init_IRQ and potentially timer and\nSMP init as well.  All of these happen before core_initcall.  Moving\nthe initialization to early_irq_init ensures that it is initialized\nbefore it is used.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nAcked-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a046d1754ee6ebb6f399696805ed61ea0444d4c",
      "tree": "9b9e8e63d9490aea4c2f06263ad541cb8115eb63",
      "parents": [
        "e65e49d0f3714f4a6a42f6f6a19926ba33fcda75"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Jan 12 17:39:24 2009 -0800"
      },
      "committer": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Mon Jan 12 17:39:24 2009 -0800"
      },
      "message": "x86: arch_probe_nr_irqs\n\nImpact: save RAM with large NR_CPUS, get smaller nr_irqs\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "92296c6d6e908c35fca287a21af27be814af9c75",
      "tree": "ba4a85a77b5bb3b609348dafafb710d567d1810a",
      "parents": [
        "542d865bbed4ce1f050f586e53cf1cfadda93766"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sun Jan 11 09:22:58 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:45 2009 +0100"
      },
      "message": "cpumask, irq: non-x86 build failures\n\nIngo Molnar wrote:\n\n\u003e All non-x86 architectures fail to build:\n\u003e\n\u003e In file included from /home/mingo/tip/include/linux/random.h:11,\n\u003e                  from /home/mingo/tip/include/linux/stackprotector.h:6,\n\u003e                  from /home/mingo/tip/init/main.c:17:\n\u003e /home/mingo/tip/include/linux/irqnr.h:26:63: error: asm/irq_vectors.h: No such file or directory\n\nDo not include asm/irq_vectors.h in generic code - it\u0027s not available\non all architectures.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "542d865bbed4ce1f050f586e53cf1cfadda93766",
      "tree": "73ed6c9ef7cf7defbcc50a210aafbf1d7d914f7a",
      "parents": [
        "9332fccdedf8e09448f3b69b624211ae879f6c45"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 22:24:07 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:42 2009 +0100"
      },
      "message": "kstat: modify kstat_irqs_legacy to be variable sized\n\nImpact: reduce memory usage.\n\nAllocate kstat_irqs_legacy based on nr_cpu_ids to deal with this\nmemory usage bump when NR_CPUS bumped from 128 to 4096:\n\n     8192   +253952    262144 +3100%  kstat_irqs_legacy(.bss)\n\nThis is only when CONFIG_SPARSE_IRQS\u003dy.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "9332fccdedf8e09448f3b69b624211ae879f6c45",
      "tree": "81f74838f7c5388dc83a3cfd8009a22e223b4888",
      "parents": [
        "0fa0ebbf15addc1be8f73325d809c8547a9de304"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 22:24:07 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:38 2009 +0100"
      },
      "message": "irq: initialize nr_irqs based on nr_cpu_ids\n\nImpact: Reduce memory usage.\n\nThis is the second half of the changes to make the irq_desc_ptrs be\nvariable sized based on nr_cpu_ids.  This is done by adding a new\n\"max_nr_irqs\" macro to irq_vectors.h (and a dummy in irqnr.h) to\nreturn a max NR_IRQS value based on NR_CPUS or nr_cpu_ids.\n\nThis necessitated moving the define of MAX_IO_APICS to a separate\nfile (asm/apicnum.h) so it could be included without the baggage\nof the other asm/apicdef.h declarations.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "0fa0ebbf15addc1be8f73325d809c8547a9de304",
      "tree": "cd995419a3eb84d3e18e92ff205af86a7a4ed66d",
      "parents": [
        "e2f4d06545ec1f29b0e838ee34cbf3500ea5b9a4"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 22:24:06 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:35 2009 +0100"
      },
      "message": "irq: allocate irq_desc_ptrs array based on nr_irqs\n\nImpact: allocate irq_desc_ptrs in preparation for making it variable-sized.\n\nThis addresses this memory usage bump when NR_CPUS bumped from 128 to 4096:\n\n    34816   +229376    264192  +658%  irq_desc_ptrs(.data.read_mostly)\n\nThe patch is split into two parts, the first simply allocates the\nirq_desc_ptrs array.  Then next will deal with making it variable.\nThis is only when CONFIG_SPARSE_IRQS\u003dy.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "e2f4d06545ec1f29b0e838ee34cbf3500ea5b9a4",
      "tree": "867881517120191e988dc9e711aa3c92fbc8757b",
      "parents": [
        "9594949b060efe86ecaa1a66839232a3b9800bc9"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 22:24:06 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:32 2009 +0100"
      },
      "message": "irq: use WARN() instead of WARN_ON().\n\nImpact: cleanup WARN msg.\n\nIngo requested:\n\u003e While at it, could you please also convert this to a WARN() construct\n\u003e instead? (in a separate commit)\n\n... and it shall be done.  ;-)\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "9594949b060efe86ecaa1a66839232a3b9800bc9",
      "tree": "5d0a450fd271c23c838e22f5e6998d24f6921e3c",
      "parents": [
        "c7a3589e7a1f8fdbd2536fe1bfa60b37f5121c69"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 22:24:06 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:29 2009 +0100"
      },
      "message": "irq: change references from NR_IRQS to nr_irqs\n\nImpact: preparation, cleanup, add KERN_INFO printk\n\nModify references from NR_IRQS to nr_irqs as the later will become\nvariable-sized based on nr_cpu_ids when CONFIG_SPARSE_IRQS\u003dy.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\n"
    },
    {
      "commit": "802bf931f2688ad125b73db597ce63cc842fb27a",
      "tree": "e3715fce62ffeaac7f06f352dc538dccac215216",
      "parents": [
        "651f8118cf0a5724f23fe1de4a3d9d36b2e01c2e"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 21:58:09 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:13:02 2009 +0100"
      },
      "message": "cpumask: fix bug in use cpumask_var_t in irq_desc\n\nImpact: fix bug where new irq_desc uses old cpumask pointers which are freed.\n\nAs Yinghai pointed out, init_copy_one_irq_desc() copies the old desc to\nthe new desc overwriting the cpumask pointers.  Since the old_desc and\nthe cpumask pointers are freed, then memory corruption will occur if\nthese old pointers are used.\n\nMove the allocation of these pointers to after the copy.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\n"
    },
    {
      "commit": "7f7ace0cda64c99599c23785f8979a072e118058",
      "tree": "13f2826e64e09ebaef94a3e7fd9c21cfbd31ec3f",
      "parents": [
        "c59765042f53a79a7a65585042ff463b69cb248c"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Sat Jan 10 21:58:08 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 19:12:46 2009 +0100"
      },
      "message": "cpumask: update irq_desc to use cpumask_var_t\n\nImpact: reduce memory usage, use new cpumask API.\n\nReplace the affinity and pending_masks with cpumask_var_t\u0027s.  This adds\nto the significant size reduction done with the SPARSE_IRQS changes.\n\nThe added functions (init_alloc_desc_masks \u0026 init_copy_desc_masks) are\nin the include file so they can be inlined (and optimized out for the\n!CONFIG_CPUMASKS_OFFSTACK case.)  [Naming chosen to be consistent with\nthe other init*irq functions, as well as the backwards arg declaration\nof \"from, to\" instead of the more common \"to, from\" standard.]\n\nIncludes a slight change to the declaration of struct irq_desc to embed\nthe pending_mask within ifdef(CONFIG_SMP) to be consistent with other\nreferences, and some small changes to Xen.\n\nTested: sparse/non-sparse/cpumask_offstack/non-cpumask_offstack/nonuma/nosmp on x86_64\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: virtualization@lists.osdl.org\nCc: xen-devel@lists.xensource.com\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\n"
    },
    {
      "commit": "d7e51e66899f95dabc89b4d4c6674a6e50fa37fc",
      "tree": "5b4cc72a4e411d6962ce9ce7258abf2bac0204d4",
      "parents": [
        "e8b722f487589a1f60ca27adc695494f188d404e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Jan 07 15:03:13 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jan 11 04:46:26 2009 +0100"
      },
      "message": "sparseirq: make some func to be used with genirq\n\nImpact: clean up sparseirq fallout on random.c\n\nIngo suggested to change some ifdef from SPARSE_IRQ to GENERIC_HARDIRQS\nso we could some #ifdef later if all arch support genirq\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b2e2fe99628c4f944c3075258e536197b5a4f3f8",
      "tree": "ad56d4853efc86c2c86e897b843a6438550d039c",
      "parents": [
        "12026ea16a618b289fcf457661aed24f57323a20"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 29 00:16:45 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 29 00:19:55 2008 +0100"
      },
      "message": "sparseirq: work around __weak alias bug\n\nImpact: fix boot crash if the kernel is built with certain GCC versions\n\nGCC has a bug with __weak alias functions: if the functions are in\nthe same compilation unit as their call site, GCC can decide to\ninline them - and thus rob the linker of the opportunity to override\nthe weak alias with the real thing.\n\nThis can lead to the boot crash reported by Kamalesh Babulal:\n\n ACPI: Core revision 20080926\n Setting APIC routing to flat\n BUG: unable to handle kernel NULL pointer dereference at\n 0000000000000000\n IP: [\u003cffffffff8021f9a8\u003e] add_pin_to_irq_cpu+0x14/0x74\n PGD 0\n Oops: 0000 [#1] SMP\n [...]\n\nSo move the arch_init_chip_data() function from handle.c to manage.c.\n\nReported-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "12026ea16a618b289fcf457661aed24f57323a20",
      "tree": "69375cb891e5d9593fc7bc9fdd87be952e4325e7",
      "parents": [
        "fa6beb37b0d9bc00f90f11154eeed9502d8b0a37"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 26 22:38:15 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 27 17:52:07 2008 +0100"
      },
      "message": "sparseirq: fix hang with !SPARSE_IRQ\n\nImpact: fix hang\n\nSuresh report his two sockets system only works with SPARSE_IRQ enable\nit turns out we miss the setting desc-\u003eirq\n\nso provide early_irq_init() even !SPARSE_IRQ to set desc-\u003eirq\n\nReported-by: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa6beb37b0d9bc00f90f11154eeed9502d8b0a37",
      "tree": "7b8f240a031300d2e2f833848e957840efeb085b",
      "parents": [
        "13a0c3c269b223f60abfac8a9811d77111a8b4ba"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Mon Dec 22 20:24:09 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 27 17:51:45 2008 +0100"
      },
      "message": "sparseirq: set lock_class for legacy irq when sparse_irq is selected\n\nImpact: add lockdep annotation to legacy IRQ descs\n\nWarnings resulting out of this were not seen in practice, but it\u0027s prudent\nto initialize the legacy descriptors to the lock class as well, symmetric\nto how we do it with other descriptors.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13a0c3c269b223f60abfac8a9811d77111a8b4ba",
      "tree": "b57a92eb9eb7c8c1de30bbe29b6a461289e75c62",
      "parents": [
        "793f7b12a0c95e7bfec1badf9628043fb78fd440"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 26 02:05:47 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 27 13:24:00 2008 +0100"
      },
      "message": "sparseirq: work around compiler optimizing away __weak functions\n\nImpact: fix panic on null pointer with sparseirq\n\nSome GCC versions seem to inline the weak global function,\nwhen that function is empty.\n\nWork it around, by making the functions return a (dummy) integer.\n\nSigned-off-by: Yinghai \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "793f7b12a0c95e7bfec1badf9628043fb78fd440",
      "tree": "1ace93d9f2bbed43b4594e6bacf75c51ffebf417",
      "parents": [
        "8b07cd44511f3aa78dd912cca6493275a6787dc5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 26 19:02:20 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Dec 27 09:29:22 2008 +0100"
      },
      "message": "sparseirq: fix desc-\u003elock init\n\nImpact: cleanup\n\ninit_one_irq_desc() does not initialize the desc-\u003elock properly -\nyou cannot init a lock by memcpying some other lock on it.\n\nThis happens to work right now (because irq_desc_init is never in use),\nbut it\u0027s a dangerous construct nevertheless, so fix it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "00c23634879062d1c38d60128bf150c394a359e8",
      "tree": "87e96a16ba921c05960d7a97e3956477a6c84be6",
      "parents": [
        "18eefedfe8ad33e8fc7614c13359e29a9fab4644"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Tue Dec 23 17:29:00 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 26 10:43:30 2008 +0100"
      },
      "message": "sparseirq: remove duplicated arch_early_irq_init()\n\nImpact: clean up\n\nWe already have a weak copy of this function in init/main.c\n\nSigned-off-by: Yinghai \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "18eefedfe8ad33e8fc7614c13359e29a9fab4644",
      "tree": "e0b7c801c27a3933137e7e4056a3bca3c3244744",
      "parents": [
        "26ddd8d5cac8a563953d5febe8c6e40909f7bce1"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Dec 26 12:29:48 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 26 09:48:18 2008 +0100"
      },
      "message": "irq: simplify for_each_irq_desc() usage\n\nImpact: cleanup\n\nall for_each_irq_desc() usage point have !desc check.\nthen its check can move into for_each_irq_desc() macro.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "26ddd8d5cac8a563953d5febe8c6e40909f7bce1",
      "tree": "1e13087c68aeb1fc7da6126a4452869c368e2a93",
      "parents": [
        "f9af0e70911e9d6cc9a68f784dca86415486084d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Dec 26 14:24:10 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 26 09:48:18 2008 +0100"
      },
      "message": "proc: remove ifdef CONFIG_SPARSE_IRQ from stat.c\n\nImpact: cleanup\n\nirq_desc can be NULL when CONFIG_SPARSE_IRQ\u003dy only.\ntherefore, NULL checking can move into kstat_irqs_cpu() of SPARSE_IRQ version.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: \"Yinghai Lu\" \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9af0e70911e9d6cc9a68f784dca86415486084d",
      "tree": "58a83c34cc8a511b5e05d48425251621e9b471a1",
      "parents": [
        "51bc39f4ba35bae153b32145077fb1109bcae14c"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Fri Dec 26 12:24:24 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 26 09:48:17 2008 +0100"
      },
      "message": "irq: for_each_irq_desc() move to irqnr.h\n\nImpact: cleanup\n\nbefore CONFIG_SPARSE_IRQ age, for_each_irq_desc() sat in irqnr.h and\ncould be called from generic code.\n\nCONFIG_SPARSE_IRQ breaks this assumption, but SPARSE_IRQ version\nfor_each_irq_desc() also can move into irqnr.h easily.\n\nAlso, this patch unifies CONFIG_SPARSE_IRQ and !CONFIG_SPARSE_IRQ\nfor_each_irq_desc().\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "74c8a6130486bed224e960790f4aa72dd09c061e",
      "tree": "0d6da9737c66ca2f4b2a20b7eb34e6c2d04ba4cc",
      "parents": [
        "6f8a0ed4e5d86c01db5e7e3f95d9003b7cf9cb87"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Wed Dec 17 19:40:33 2008 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 18 14:35:53 2008 +0100"
      },
      "message": "locking, irq: enclose irq_desc_lock_class in CONFIG_LOCKDEP\n\nImpact: simplify code\n\ncommit \"08678b0: generic: sparse irqs: use irq_desc() [...]\" introduced\nthe irq_desc_lock_class variable.\n\nBut it is used only if CONFIG_SPARSE_IRQ\u003dY or CONFIG_TRACE_IRQFLAGS\u003dY.\nOtherwise, following warnings happen:\n\n\tCC      kernel/irq/handle.o\n\tkernel/irq/handle.c:26: warning: \u0027irq_desc_lock_class\u0027 defined but not used\n\nActually, current early_init_irq_lock_class has a bit strange and messy ifdef.\nIn addition, it is not valueable.\n\n1. this function is protected by !CONFIG_SPARSE_IRQ, but that is not necessary.\n   if CONFIG_SPARSE_IRQ\u003dY, desc of all irq number are initialized by NULL\n   at first - then this function calling is safe.\n\n2. this function protected by CONFIG_TRACE_IRQFLAGS too. but it is not\n   necessary either, because lockdep_set_class() doesn\u0027t have bad side\n   effect even if CONFIG_TRACE_IRQFLAGS\u003dn.\n\nThis patch bloat kernel size a bit on CONFIG_TRACE_IRQFLAGS\u003dn and\nCONFIG_SPARSE_IRQ\u003dY - but that\u0027s ok. early_init_irq_lock_class() is not\na fastpatch at all.\n\nTo avoid messy ifdefs is more important than a few bytes diet.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "48a1b10aff588833b73994704c47bbd0deb73e9c",
      "tree": "deb3c7b486346c3afa54014b3c3516344c2708f2",
      "parents": [
        "13bd41bc227a48d6cf8992a3286bf6eba3c71a0c"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Thu Dec 11 00:15:01 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 17 00:14:01 2008 +0100"
      },
      "message": "x86, sparseirq: move irq_desc according to smp_affinity, v7\n\nImpact: improve NUMA handling by migrating irq_desc on smp_affinity changes\n\nif CONFIG_NUMA_MIGRATE_IRQ_DESC is set:\n\n-  make irq_desc to go with affinity aka irq_desc moving etc\n-  call move_irq_desc in irq_complete_move()\n-  legacy irq_desc is not moved, because they are allocated via static array\n\nfor logical apic mode, need to add move_desc_in_progress_in_same_domain,\notherwise it will not be moved \u003d\u003d\u003e also could need two phases to get\nirq_desc moved.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "99d093d12897562a253540a902bbf65ec16042ac",
      "tree": "34e8ca60b1d47944c7c85b66f84df51526db5f80",
      "parents": [
        "0b8f1efad30bd58f89961b82dfe68b9edf8fd2ac"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 05 18:58:32 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 08 14:31:52 2008 +0100"
      },
      "message": "x86: use NR_IRQS_LEGACY\n\nImpact: cleanup\n\nIntroduce NR_IRQS_LEGACY instead of hard coded number.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b8f1efad30bd58f89961b82dfe68b9edf8fd2ac",
      "tree": "239251bad791fd60af8c0f2ba365b7188395c83f",
      "parents": [
        "218d11a8b071b23b76c484fd5f72a4fe3306801e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Fri Dec 05 18:58:31 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 08 14:31:51 2008 +0100"
      },
      "message": "sparse irq_desc[] array: core kernel and x86 changes\n\nImpact: new feature\n\nProblem on distro kernels: irq_desc[NR_IRQS] takes megabytes of RAM with\nNR_CPUS set to large values. The goal is to be able to scale up to much\nlarger NR_IRQS value without impacting the (important) common case.\n\nTo solve this, we generalize irq_desc[NR_IRQS] to an (optional) array of\nirq_desc pointers.\n\nWhen CONFIG_SPARSE_IRQ\u003dy is used, we use kzalloc_node to get irq_desc,\nthis also makes the IRQ descriptors NUMA-local (to the site that calls\nrequest_irq()).\n\nThis gets rid of the irq_cfg[] static array on x86 as well: irq_cfg now\nuses desc-\u003echip_data for x86 to store irq_cfg.\n\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "10e580842ec8e53dddf62e1ab1871f4906477376",
      "tree": "5793b45755f21f578ff4b06a3a3546b3de5eb8f4",
      "parents": [
        "2be3b52a5785a6a5c5349fbd315f57595f7074be"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 16 14:19:04 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:30 2008 +0200"
      },
      "message": "genirq: use iterators for irq_desc loops\n\nUse for_each_irq_desc[_reverse] for all the iteration loops.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d3c60047bdb03199b93497ac40bd531315d43a86",
      "tree": "858b74f422b1c79be54d2050d23c51999d312566",
      "parents": [
        "a1aca5de08a0cb840a90fb3f729a5940f8d21185"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 16 09:55:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:29 2008 +0200"
      },
      "message": "genirq: cleanup the sparseirq modifications\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d6c88a507ef0b6afdb013cba4e7804ba7324d99a",
      "tree": "cdc4041acc212585e3920ad50bf2574cec04076d",
      "parents": [
        "ee32c9732244bde4b9b59eeac2814c23e2b71f8d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 15 15:27:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:15 2008 +0200"
      },
      "message": "genirq: revert dynarray\n\nRevert the dynarray changes. They need more thought and polishing.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2cc21ef843d4fb7da122239b644a1f6f0aca60a6",
      "tree": "5d08e110164176c4011e42d4700ecd0050ad0ce9",
      "parents": [
        "c6b7674f323622d86316bf7951ad9cae1ce24642"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 15 14:16:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:15 2008 +0200"
      },
      "message": "genirq: remove sparse irq code\n\nThis code is not ready, but we need to rip it out instead of rebasing\nas we would lose the APIC/IO_APIC unification otherwise.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c6b7674f323622d86316bf7951ad9cae1ce24642",
      "tree": "00ff8c061f9c0822c56e46bc59c46dced278f9a9",
      "parents": [
        "70dd4d992ab324a59cdcd6bedc3f4e729863d514"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Oct 15 14:31:29 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:14 2008 +0200"
      },
      "message": "genirq: use inline function for irq_to_desc\n\nFor the non sparse irq case an inline function is perfectly fine.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "aac3f2b6f6e88827432c4050ac73552f24b19de1",
      "tree": "b8af73f39900767513b0e2237a3a8cac6b574719",
      "parents": [
        "8da077d6f31da291ee3a7dd559671cb8ca48cbe2"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Wed Sep 24 19:04:35 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:11 2008 +0200"
      },
      "message": "x86: fix typo in irq_desc array\n\nwhen SPARSE_IRQ is not used, should still use irq_desc-\u003elock\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2976fe20125587c944c8df48d991c38f0891fb28",
      "tree": "bc19b9b74476b2e268bf0c5b6983999c22096744",
      "parents": [
        "9d98598d2fc286c8dbcd0b681168639528428db0"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Sep 18 16:10:48 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:11 2008 +0200"
      },
      "message": "fix warning: \"x86: sparse_irq needs spin_lock in allocations\"\n\ncaused by\n\ncommit a532e19680ada3b8579b81e67e76d3ebd19c340f\nAuthor: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nDate:   Wed Aug 20 20:46:25 2008 -0700\n\n    x86: sparse_irq needs spin_lock in allocations\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9d98598d2fc286c8dbcd0b681168639528428db0",
      "tree": "4fecfe8ec04bd71e52af1a822aba0bd187e60c63",
      "parents": [
        "e00585bb7fc3d0b601181b765a254df7ff4ea59b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Fri Sep 19 00:12:26 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:11 2008 +0200"
      },
      "message": "sparseirq: remove some debug print out\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8c464a4b23ca283b414022ebc77787f3c7040fa7",
      "tree": "1d62a78b0af21492289d015c81270683f6bbe0bd",
      "parents": [
        "e492c5ae85428d4a3815d06bf308c590120b928b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Mon Aug 25 12:41:19 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:53:04 2008 +0200"
      },
      "message": "sparseirq: move kstat_irqs from kstat to irq_desc - fix\n\nfix non-sparseirq architectures.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e89eb43863c2d9f11a3bbe766766fe646e6c50d9",
      "tree": "3d45bdf7efb5a37edb99f62cbea1d500b3003468",
      "parents": [
        "7ddfb650c7ef7a33a5ef11c0fdf5b3d837a47dba"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Wed Aug 20 20:46:25 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:59 2008 +0200"
      },
      "message": "x86: sparse_irq needs spin_lock in allocations\n\nSuresh Siddha noticed that we should have a spinlock around it.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e955b5398b660a204854bdff059d050b44090879",
      "tree": "6c12159e98d47166541d00daff0ab07382a2c2de",
      "parents": [
        "efa2559f65167989f1893cb065e3126d4f13ba60"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 20:50:37 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:54 2008 +0200"
      },
      "message": "sparseirq: fix lockdep\n\n-tip testing found this lockdep splat:\n\n[    0.000000] Initializing CPU#0\n[    0.000000] found new irq_desc for irq 0\n[    0.000000] INFO: trying to register non-static key.\n[    0.000000] the code is fine but needs lockdep annotation.\n[    0.000000] turning off the locking correctness validator.\n[    0.000000] Pid: 0, comm: swapper Not tainted 2.6.27-rc3-tip-00191-g98ccb89-dirty #1\n[    0.000000]  [\u003cc0153c22\u003e] register_lock_class+0x3d2/0x400\n[    0.000000]  [\u003cc0104d87\u003e] ? mcount_call+0x5/0xa\n[    0.000000]  [\u003cc0154f3a\u003e] __lock_acquire+0x22a/0x5d0\n[    0.000000]  [\u003cc0104d87\u003e] ? mcount_call+0x5/0xa\n[    0.000000]  [\u003cc0155351\u003e] lock_acquire+0x71/0xa0\n[    0.000000]  [\u003cc016d61f\u003e] ? set_irq_chip+0x3f/0x90\n[    0.000000]  [\u003cc070f148\u003e] _spin_lock_irqsave+0x58/0x90\n[    0.000000]  [\u003cc016d61f\u003e] ? set_irq_chip+0x3f/0x90\n[    0.000000]  [\u003cc016d61f\u003e] set_irq_chip+0x3f/0x90\n[    0.000000]  [\u003cc016d7e0\u003e] ? handle_level_irq+0x0/0xe0\n[    0.000000]  [\u003cc016da1a\u003e] set_irq_chip_and_handler_name+0x1a/0x40\n[    0.000000]  [\u003cc0a396c1\u003e] init_ISA_irqs+0x51/0xa0\n[    0.000000]  [\u003cc0a4a365\u003e] pre_intr_init_hook+0x25/0x30\n[    0.000000]  [\u003cc0a39723\u003e] native_init_IRQ+0x13/0x370\n[    0.000000]  [\u003cc015569c\u003e] ? lock_release+0xcc/0x1d0\n[    0.000000]  [\u003cc0104d87\u003e] ? mcount_call+0x5/0xa\n[    0.000000]  [\u003cc070dc22\u003e] ? __mutex_unlock_slowpath+0x92/0x110\n[    0.000000]  [\u003cc070dcad\u003e] ? mutex_unlock+0xd/0x10\n[    0.000000]  [\u003cc0135f62\u003e] ? cpu_maps_update_done+0x12/0x20\n[    0.000000]  [\u003cc06c6743\u003e] ? register_cpu_notifier+0x23/0x30\n[    0.000000]  [\u003cc011e8ae\u003e] init_IRQ+0xe/0x10\n[    0.000000]  [\u003cc0a357a5\u003e] start_kernel+0x1c5/0x340\n[    0.000000]  [\u003cc0a35280\u003e] ? unknown_bootoption+0x0/0x210\n[    0.000000]  [\u003cc0a3506b\u003e] i386_start_kernel+0x6b/0x80\n[    0.000000]  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[    0.000000] found new irq_desc for irq 1\n[    0.000000] found new irq_desc for irq 2\n[    0.000000] found new irq_desc for irq 3\n\nthis:\n\n static void init_one_irq_desc(struct irq_desc *desc)\n {\n         memcpy(desc, \u0026irq_desc_init, sizeof(struct irq_desc));\n #ifdef CONFIG_TRACE_IRQFLAGS\n         lockdep_set_class(\u0026desc-\u003elock, \u0026irq_desc_lock_class);\n #endif\n }\n\nshould be unconditional.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "67fb283e148e9bd761f73691d3173b6eab9ba8db",
      "tree": "88ba8337dc5bc90e5f95d84d981f750bb7173dd2",
      "parents": [
        "cb5bc83225a86ca53bbb889ed8439e4fd6cf44ac"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:18 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:51 2008 +0200"
      },
      "message": "irq: separate sparse_irqs from sparse_irqs_free\n\nso later don\u0027t need compare with -1U\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb5bc83225a86ca53bbb889ed8439e4fd6cf44ac",
      "tree": "d2c43413adbc86562ab63498e3ce14e36ba253ed",
      "parents": [
        "1d5f6b36c4736af1dac396d6267eb53dcc8c0021"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:17 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:51 2008 +0200"
      },
      "message": "x86_64: rename irq_desc/irq_desc_alloc\n\nchange names:\n\n          irq_desc() \u003d\u003d\u003e irq_desc_alloc\n\t__irq_desc() \u003d\u003d\u003e irq_desc\n\nAlso split a few of the uses in lowlevel x86 code.\n\nv2: need to check if desc is null in smp_irq_move_cleanup\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "46926b67fc663d357a1a8174328998a9e49da0b8",
      "tree": "33870a6c416bbc4d246ecfbf015a78c61943a36d",
      "parents": [
        "7d94f7ca401dd7f445fda9a971a48aa5427b3e55"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:15 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:50 2008 +0200"
      },
      "message": "generic: add irq_desc in function in parameter\n\nSo we could remove some duplicated calling to irq_desc\n\nv2: make sure irq_desc in  init/main.c is not used without generic_hardirqs\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9059d8fa4a3a9153da53da890039f7f956cc9d19",
      "tree": "142f12d7843a4000eb9be7dd8a4a933ce2955f72",
      "parents": [
        "7f95ec9e4c12fd067febfd57532da1166d75d858"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:10 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:32 2008 +0200"
      },
      "message": "irq: add irq_desc_without_new\n\nadd an irq_desc accessor that will not allocate any sparse entry\nbut returns failure if there\u0027s no entry present.\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7f95ec9e4c12fd067febfd57532da1166d75d858",
      "tree": "b395b6776485f60e3f5d9d820ad665161ef76771",
      "parents": [
        "3060d6fe28570640c2d7d66d38b9eaa848c3b9e3"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:09 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:32 2008 +0200"
      },
      "message": "x86: move kstat_irqs from kstat to irq_desc\n\nbased on Eric\u0027s patch ...\n\ntogether mold it with dyn_array for irq_desc, will allcate kstat_irqs for\nnr_irq_desc alltogether if needed. -- at that point nr_cpus is known already.\n\nv2: make sure system without generic_hardirqs works they don\u0027t have irq_desc\nv3: fix merging\nv4: [mingo@elte.hu] fix typo\n\n[ mingo@elte.hu ] irq: build fix\n\nfix:\n\n arch/x86/xen/spinlock.c: In function \u0027xen_spin_lock_slow\u0027:\n arch/x86/xen/spinlock.c:90: error: \u0027struct kernel_stat\u0027 has no member named \u0027irqs\u0027\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "08678b0841267c1d00d771fe01548d86043d065e",
      "tree": "7debb21f9e9a768ced43077f7376797a0c46f8c0",
      "parents": [
        "bfea1238beac9d306eeac081c67de5ca6aec4c7a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:05 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:29 2008 +0200"
      },
      "message": "generic: sparse irqs: use irq_desc() together with dyn_array, instead of irq_desc[]\n\nadd CONFIG_HAVE_SPARSE_IRQ to for use condensed array.\nGet rid of irq_desc[] array assumptions.\n\nPreallocate 32 irq_desc, and irq_desc() will try to get more.\n\n( No change in functionality is expected anywhere, except the odd build\n  failure where we missed a code site or where a crossing commit itroduces\n  new irq_desc[] usage. )\n\nv2: according to Eric, change get_irq_desc() to irq_desc()\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa42d10dd5e1ff373061c0526f272106512301f9",
      "tree": "17bea35293b743cbc1a9f97fde3d81dd9e054170",
      "parents": [
        "d60458b224d6b997a582a05cb8c4b9bed9e17a1d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Aug 19 20:50:30 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:08 2008 +0200"
      },
      "message": "irq: sparse irqs, export nr_irqs\n\nfix:\n\n  Building modules, stage 2.\n  MODPOST 458 modules\n  ERROR: \"nr_irqs\" [drivers/serial/8250.ko] undefined!\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d60458b224d6b997a582a05cb8c4b9bed9e17a1d",
      "tree": "122710312c443069cb8e25a27032f09572550c45",
      "parents": [
        "5aeecaf4908499b1fd006d313ccbacde6a6bac43"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:50:00 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:07 2008 +0200"
      },
      "message": "irq: make irq_desc to use dyn_array\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85c0f90978bf50596dbd23854648020f1f9b5bfd",
      "tree": "f66c598bb37b925dd6c74e4ce1fb06345c742c01",
      "parents": [
        "6da55c3e8da88e8a7cb6452160776ad6706798ad"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yhlu.kernel@gmail.com",
        "time": "Tue Aug 19 20:49:47 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Oct 16 16:52:05 2008 +0200"
      },
      "message": "irq: introduce nr_irqs\n\nat this point nr_irqs is equal NR_IRQS\n\nconvert a few easy users from NR_IRQS to dynamic nr_irqs.\n\nv2: according to Eric, we need to take care of arch without generic_hardirqs\n\nSigned-off-by: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8d00a6c8f6b08e7167bc03bf955cdc7e47c5132e",
      "tree": "afce128afbd4e8c669204476912df9e1a26699b4",
      "parents": [
        "f84dbb912f344270f31d5cce974f12908a47798d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 22 08:39:57 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jul 22 08:39:57 2008 +0200"
      },
      "message": "genirq: remove last NO_IDLE_HZ leftovers\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7ad5b3a505e68cfdc342933d6e0fc0eaa5e0a4f7",
      "tree": "6715ffd8df509d3d53dea581bb97418a21bc7cbc",
      "parents": [
        "fc9b52cd8f5f459b88adcf67c47668425ae31a78"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Feb 08 04:19:53 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:31 2008 -0800"
      },
      "message": "kernel: remove fastcall in kernel/*\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c642b8391cf8efc3622cc97329a0f46e7cbb70b8",
      "tree": "34a8892a55563c3885cfed1500f9933b49f04abe",
      "parents": [
        "57d5f66b86079efac5c9a7843cce2a9bcbe58fb8"
      ],
      "author": {
        "name": "Russ Anderson",
        "email": "rja@sgi.com",
        "time": "Wed Nov 14 17:00:15 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Nov 14 18:45:43 2007 -0800"
      },
      "message": "__do_IRQ does not check IRQ_DISABLED when IRQ_PER_CPU is set\n\nIn __do_IRQ(), the normal case is that IRQ_DISABLED is checked and if set\nthe handler (handle_IRQ_event()) is not called.\n\nEarlier in __do_IRQ(), if IRQ_PER_CPU is set the code does not check\nIRQ_DISABLED and calls the handler even though IRQ_DISABLED is set.  This\nbehavior seems unintentional.\n\nOne user encountering this behavior is the CPE handler (in\narch/ia64/kernel/mca.c).  When the CPE handler encounters too many CPEs\n(such as a solid single bit error), it sets up a polling timer and disables\nthe CPE interrupt (to avoid excessive overhead logging the stream of single\nbit errors).  disable_irq_nosync() is called which sets IRQ_DISABLED.  The\nIRQ_PER_CPU flag was previously set (in ia64_mca_late_init()).  The net\nresult is the CPE handler gets called even though it is marked disabled.\n\nIf the behavior of not checking IRQ_DISABLED when IRQ_PER_CPU is set is\nintentional, it would be worthy of a comment describing the intended\nbehavior.  disable_irq_nosync() does call chip-\u003edisable() to provide a\nchipset specifiec interface for disabling the interrupt, which avoids this\nissue when used.\n\nSigned-off-by: Russ Anderson \u003crja@sgi.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb0c78cc94a63871cad051674516b38e4a8aef95",
      "tree": "2f90ad36bcfebf29caa3bc38cc5775e53ac58a54",
      "parents": [
        "231f7e9d029a710c14352bff3b8d3753cb9bfde8"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed May 09 02:33:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:48 2007 -0700"
      },
      "message": "Fix Linuxdoc comment\n\nA linuxdoc comment had fallen out of date - it refers to an argument which no\nlonger exists.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d85a60d85ea5b7c597508c1510c88e657773d378",
      "tree": "2b5d1a5311074de8c12811e7ddf26e3cda4a41a0",
      "parents": [
        "951744fea0aea9adbd7c8cacb3605f2d69a66f96"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bwalle@suse.de",
        "time": "Tue May 08 00:35:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:22 2007 -0700"
      },
      "message": "Add IRQF_IRQPOLL flag (common code)\n\nirqpoll is broken on some architectures that don\u0027t use the IRQ 0 for the timer\ninterrupt like IA64.  This patch adds a IRQF_IRQPOLL flag.\n\nEach architecture is handled in a separate pach.  As I left the irq \u003d\u003d 0 as\ncondition, this should not break existing architectures that use timer_irq \u003d\u003d\n0 and that I did\u0027t address with that patch (because I don\u0027t know).\n\nThis patch:\n\nThis patch adds a IRQF_IRQPOLL flag that the interrupt registration code could\nuse for the interrupt it wants to use for IRQ polling.\n\nBecause this must not be the timer interrupt, an additional flag was added\ninstead of re-using the IRQF_TIMER constant.  Until all architectures will\nhave an IRQF_IRQPOLL interrupt, irq \u003d\u003d 0 will stay as alternative as it should\nnot break anything.\n\nAlso, note_interrupt() is called on CPU-specific interrupts to be used as\ninterrupt source for IRQ polling.\n\nSigned-off-by: Bernhard Walle \u003cbwalle@suse.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nCc: Grant Grundler \u003cgrundler@google.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e729aa16b168fb202d1a20f936028cb7c2a0278d",
      "tree": "d0267225ebfadbaa4f55f55c3025597d86ff1c5f",
      "parents": [
        "428e6ce023c5890cfecc8ad10335da3f28dbf893"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue May 08 00:29:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:09 2007 -0700"
      },
      "message": "Pad irq_desc to internode cacheline size\n\nWe noticed a drop in n/w performance due to the irq_desc being cacheline\naligned rather than internode aligned.  We see 50% of expected performance\nwhen two e1000 nics local to two different nodes have consecutive irq\ndescriptors allocated, due to false sharing.\n\nNote that this patch does away with cacheline padding for the UP case, as\nit does not seem useful for UP configurations.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6cfd76a26d9fe2ba54b9d496a48c1d9285e5c5ed",
      "tree": "1114a0630c5045d0650c6d78a8097fdea6f94d8e",
      "parents": [
        "a4c410f00f7ca4bd448b0d63f6f882fd244dc991"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:37:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:36 2006 -0800"
      },
      "message": "[PATCH] lockdep: name some old style locks\n\nName some of the remaning \u0027old_style_spin_init\u0027 locks\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b42172fc7b569a0ef2b0fa38d71382969074c0e2",
      "tree": "2fe6141c936421d339a9443a6ad6af4dd4d2386b",
      "parents": [
        "0f9005a6f7a82f4aacbd72f7b92322a8ca1c3f97"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Nov 22 09:32:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Nov 22 09:32:06 2006 -0800"
      },
      "message": "Don\u0027t call \"note_interrupt()\" with irq descriptor lock held\n\nThis reverts commit f72fa707604c015a6625e80f269506032d5430dc, and solves\nthe problem that it tried to fix by simply making \"__do_IRQ()\" call the\nnote_interrupt() function without the lock held, the way everybody else\ndoes.\n\nIt should be noted that all interrupt handling code must never allow the\ndescriptor actors to be entered \"recursively\" (that\u0027s why we do all the\nmagic IRQ_PENDING stuff in the first place), so there actually is\nexclusion at that much higher level, even in the absense of locking.\n\nAcked-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nAcked-by:Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d12e780e003f93433d49ce78cfedf4b4c52adc5",
      "tree": "6748550400445c11a306b132009f3001e3525df8",
      "parents": [
        "da482792a6d1a3fbaaa25fae867b343fb4db3246"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 14:55:46 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 15:10:12 2006 +0100"
      },
      "message": "IRQ: Maintain regs pointer globally rather than passing to IRQ handlers\n\nMaintain a per-CPU global \"struct pt_regs *\" variable which can be used instead\nof passing regs around manually through all ~1800 interrupt handlers in the\nLinux kernel.\n\nThe regs pointer is used in few places, but it potentially costs both stack\nspace and code to pass it around.  On the FRV arch, removing the regs parameter\nfrom all the genirq function results in a 20% speed up of the IRQ exit path\n(ie: from leaving timer_interrupt() to leaving do_IRQ()).\n\nWhere appropriate, an arch may override the generic storage facility and do\nsomething different with the variable.  On FRV, for instance, the address is\nmaintained in GR28 at all times inside the kernel as part of general exception\nhandling.\n\nHaving looked over the code, it appears that the parameter may be handed down\nthrough up to twenty or so layers of functions.  Consider a USB character\ndevice attached to a USB hub, attached to a USB controller that posts its\ninterrupts through a cascaded auxiliary interrupt controller.  A character\ndevice driver may want to pass regs to the sysrq handler through the input\nlayer which adds another few layers of parameter passing.\n\nI\u0027ve build this code with allyesconfig for x86_64 and i386.  I\u0027ve runtested the\nmain part of the code on FRV and i386, though I can\u0027t test most of the drivers.\nI\u0027ve also done partial conversion for powerpc and MIPS - these at least compile\nwith minimal configurations.\n\nThis will affect all archs.  Mostly the changes should be relatively easy.\nTake do_IRQ(), store the regs pointer at the beginning, saving the old one:\n\n\tstruct pt_regs *old_regs \u003d set_irq_regs(regs);\n\nAnd put the old one back at the end:\n\n\tset_irq_regs(old_regs);\n\nDon\u0027t pass regs through to generic_handle_irq() or __do_IRQ().\n\nIn timer_interrupt(), this sort of change will be necessary:\n\n\t-\tupdate_process_times(user_mode(regs));\n\t-\tprofile_tick(CPU_PROFILING, regs);\n\t+\tupdate_process_times(user_mode(get_irq_regs()));\n\t+\tprofile_tick(CPU_PROFILING);\n\nI\u0027d like to move update_process_times()\u0027s use of get_irq_regs() into itself,\nexcept that i386, alone of the archs, uses something other than user_mode().\n\nSome notes on the interrupt handling in the drivers:\n\n (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in\n     the input_dev struct.\n\n (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does\n     something different depending on whether it\u0027s been supplied with a regs\n     pointer or not.\n\n (*) Various IRQ handler function pointers have been moved to type\n     irq_handler_t.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)\n"
    },
    {
      "commit": "af8c65b57aaa4ae321af34dbfc5ca7f5625263fe",
      "tree": "404b7054e52f8cd0a4347649cae8b5ab82fec357",
      "parents": [
        "88d6e19900366781739df033e9c0e2532e715fa5"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Sep 25 23:32:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:53 2006 -0700"
      },
      "message": "[PATCH] FRV: permit __do_IRQ() to be dispensed with\n\nPermit __do_IRQ() to be dispensed with based on a configuration option.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "43a1dd502f40fdb644402f64cd06cf8016cd9780",
      "tree": "24b6b285e528b0f48c9d70d11a3ba9a15cc47aba",
      "parents": [
        "290995fc3c06c0548ae303dd0b1371a8727f4fad"
      ],
      "author": {
        "name": "Henrik Kretzschmar",
        "email": "henne@nachtwindheim.de",
        "time": "Thu Aug 31 21:27:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 01 11:39:09 2006 -0700"
      },
      "message": "[PATCH] kerneldoc for handle_bad_irq()\n\nAdds the description of the parameters from handle_bad_irq().\n\nSigned-off-by: Henrik Kretzschmar \u003chenne@nachtwindheim.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "366c7f554e888e51b8395f9b07b273fe775c7ff3",
      "tree": "324fab660758f1c5be4585ca2fcdb313feb53cef",
      "parents": [
        "0a9da4bd8eb30fb3f36e841c2cc72e426a17bbe2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:09 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate enable_in_hardirq()\n\nMake use of local_irq_enable_in_hardirq() API to annotate places that enable\nhardirqs in hardirq context.\n\nHas no effect on non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "243c7621aac4ed1aa79524c9a1cecf7c05a28124",
      "tree": "d8f7a1fce57c9349183bfd9ab6738a763078db85",
      "parents": [
        "8b8f319fc7f4ab59f567d6a401a62659b3d37007"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:25:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:06 2006 -0700"
      },
      "message": "[PATCH] lockdep: annotate genirq\n\nTeach special (recursive) locking code to the lock validator.  Has no effect\non non-lockdep kernels.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d061daa0e3abdddc28e21a37c8ac4536dedbf239",
      "tree": "6c08e7b8ed988053f421e38578fa11db538b0747",
      "parents": [
        "f82bc1762e0e74b7e0040a4d83be06d32c37fc2e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jul 03 02:18:48 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 17:29:21 2006 -0700"
      },
      "message": "[PATCH] genirq: ARM dyntick cleanup\n\nLinus: \"The hacks in kernel/irq/handle.c are really horrid. REALLY\nhorrid.\"\n\nThey are indeed. Move the dyntick quirks to ARM where they belong.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b4b9034132c7e1e4474999e688dd7d03b7d97a99",
      "tree": "c02c571b9e0e59b9ffa18baae23c83f09ff07adb",
      "parents": [
        "a8c4c20dfa8b28a3c99e33c639d9c2ea5657741e",
        "07d265dd59456f702b7d2a1ac471f06ee4adc9ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 15:07:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 15:07:45 2006 -0700"
      },
      "message": "Merge branch \u0027genirq\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027genirq\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm: (24 commits)\n  [ARM] 3683/2:  ARM: Convert at91rm9200 to generic irq handling\n  [ARM] 3682/2:  ARM: Convert ixp4xx to generic irq handling\n  [ARM] 3702/1: ARM: Convert ixp23xx to generic irq handling\n  [ARM] 3701/1: ARM: Convert plat-omap to generic irq handling\n  [ARM] 3700/1: ARM: Convert lh7a40x to generic irq handling\n  [ARM] 3699/1: ARM: Convert s3c2410 to generic irq handling\n  [ARM] 3698/1: ARM: Convert sa1100 to generic irq handling\n  [ARM] 3697/1: ARM: Convert shark to generic irq handling\n  [ARM] 3696/1: ARM: Convert clps711x to generic irq handling\n  [ARM] 3694/1: ARM: Convert ecard driver to generic irq handling\n  [ARM] 3693/1: ARM: Convert omap1 to generic irq handling\n  [ARM] 3691/1: ARM: Convert imx to generic irq handling\n  [ARM] 3688/1: ARM: Convert clps7500 to generic irq handling\n  [ARM] 3687/1: ARM: Convert integrator to generic irq handling\n  [ARM] 3685/1: ARM: Convert pxa to generic irq handling\n  [ARM] 3684/1: ARM: Convert l7200 to generic irq handling\n  [ARM] 3681/1: ARM: Convert ixp2000 to generic irq handling\n  [ARM] 3680/1: ARM: Convert footbridge to generic irq handling\n  [ARM] 3695/1: ARM drivers/pcmcia: Fixup includes\n  [ARM] 3689/1: ARM drivers/input/touchscreen: Fixup includes\n  ...\n\nManual conflict resolved in kernel/irq/handle.c (butt-ugly ARM tickless\ncode).\n"
    },
    {
      "commit": "3cca53b02a5bab0f407b1add2f84c22c20243a79",
      "tree": "06d375432c8c5c8895378e0b5049920e73211b2d",
      "parents": [
        "85ac3ab254405edcc7bef7d61b03930247882efc"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 19:29:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 13:58:49 2006 -0700"
      },
      "message": "[PATCH] irq-flags: generic irq: Use the new IRQF_ constants\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8b5473fcbddbfde827ecf82aa0e81fa2a878220",
      "tree": "0d6d504f95830610cb2c2fb1e6e9e1ebf932762b",
      "parents": [
        "a2166abd06e7a9fd34eb18b7b27da18c6146e6ef"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 22:30:08 2006 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Jul 01 22:30:08 2006 +0100"
      },
      "message": "[ARM] 3690/1: genirq: Introduce and make use of dummy irq chip\n\nPatch from Thomas Gleixner\n\nFrom: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\nARM has a couple of really dumb interrupt controllers.\nImplement a generic one and fixup the ARM migration. ARM reused\nthe no_irq_chip for this purpose, but this does not work out\nfor platforms which are not converted to the new interrupt\ntype handling model.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "a2166abd06e7a9fd34eb18b7b27da18c6146e6ef",
      "tree": "42071bca4f8e53295c2c5ce50db43e86a3d4fc37",
      "parents": [
        "9262e9149f346a5443300f8c451b8e7631e81a42"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Jul 01 22:30:07 2006 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Jul 01 22:30:07 2006 +0100"
      },
      "message": "[ARM] 3679/1: ARM: Make ARM dyntick implementation work with genirq\n\nPatch from Thomas Gleixner\n\nFrom: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\nMake the ARM dyntick implementation work with the generic\nirq code. This hopefully goes away once we consolidated the\ndyntick implementations.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "43f7775944e40221827e4b3aec43824aa4c4e4a9",
      "tree": "842490e2fe78b8676741d1b012a4256c2224685c",
      "parents": [
        "f1c2662cbc6a0a9772655649bdf579803d33470b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:25 2006 -0700"
      },
      "message": "[PATCH] genirq: more verbose debugging on unexpected IRQ vectors\n\nOne frequent sign of IRQ handling bugs is the appearance of unexpected\nvectors.  Print out all the IRQ state in that case.  We dont want this patch\nupstream, but it is useful during initial testing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "f1c2662cbc6a0a9772655649bdf579803d33470b"
}
