)]}'
{
  "log": [
    {
      "commit": "59845b1ffd9121e5ef474ea5f27405fd7a83c85b",
      "tree": "9f7c073327138b7c5bb0193229244dbdd5444113",
      "parents": [
        "2aeb3db17fc33443d21b11d7121c5627d55717c6"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@o2.pl",
        "time": "Thu Aug 30 23:56:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Aug 31 01:42:23 2007 -0700"
      },
      "message": "request_irq: fix DEBUG_SHIRQ handling\n\nMariusz Kozlowski reported lockdep\u0027s warning:\n\n\u003e \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e [ INFO: inconsistent lock state ]\n\u003e 2.6.23-rc2-mm1 #7\n\u003e ---------------------------------\n\u003e inconsistent {in-hardirq-W} -\u003e {hardirq-on-W} usage.\n\u003e ifconfig/5492 [HC0[0]:SC0[0]:HE1:SE1] takes:\n\u003e  (\u0026tp-\u003elock){+...}, at: [\u003cde8706e0\u003e] rtl8139_interrupt+0x27/0x46b [8139too]\n\u003e {in-hardirq-W} state was registered at:\n\u003e   [\u003cc0138eeb\u003e] __lock_acquire+0x949/0x11ac\n\u003e   [\u003cc01397e7\u003e] lock_acquire+0x99/0xb2\n\u003e   [\u003cc0452ff3\u003e] _spin_lock+0x35/0x42\n\u003e   [\u003cde8706e0\u003e] rtl8139_interrupt+0x27/0x46b [8139too]\n\u003e   [\u003cc0147a5d\u003e] handle_IRQ_event+0x28/0x59\n\u003e   [\u003cc01493ca\u003e] handle_level_irq+0xad/0x10b\n\u003e   [\u003cc0105a13\u003e] do_IRQ+0x93/0xd0\n\u003e   [\u003cc010441e\u003e] common_interrupt+0x2e/0x34\n...\n\u003e other info that might help us debug this:\n\u003e 1 lock held by ifconfig/5492:\n\u003e  #0:  (rtnl_mutex){--..}, at: [\u003cc0451778\u003e] mutex_lock+0x1c/0x1f\n\u003e\n\u003e stack backtrace:\n...\n\u003e  [\u003cc0452ff3\u003e] _spin_lock+0x35/0x42\n\u003e  [\u003cde8706e0\u003e] rtl8139_interrupt+0x27/0x46b [8139too]\n\u003e  [\u003cc01480fd\u003e] free_irq+0x11b/0x146\n\u003e  [\u003cde871d59\u003e] rtl8139_close+0x8a/0x14a [8139too]\n\u003e  [\u003cc03bde63\u003e] dev_close+0x57/0x74\n...\n\nThis shows that a driver\u0027s irq handler was running both in hard interrupt\nand process contexts with irqs enabled. The latter was done during\nfree_irq() call and was possible only with CONFIG_DEBUG_SHIRQ enabled.\nThis was fixed by another patch.\n\nBut similar problem is possible with request_irq(): any locks taken from\nirq handler could be vulnerable - especially with soft interrupts. This\npatch fixes it by disabling local interrupts during handler\u0027s run. (It\nseems, disabling softirqs should be enough, but it needs more checking\non possible races or other special cases).\n\nReported-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@o2.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b7f07155f8ee1536da2f9590f1aa9383afefb6b",
      "tree": "d4f0fcf4a96734c33ed9e0470fcb28be523070a0",
      "parents": [
        "436bbd431d41e0fd3bfedb0312ab764b291ddf82"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Aug 22 14:01:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Aug 22 19:52:44 2007 -0700"
      },
      "message": "free_irq(): fix DEBUG_SHIRQ handling\n\nIf we\u0027re going to run the handler from free_irq() then we must do it with\nlocal irq\u0027s disabled.  Otherwise lockdep complains that the handler is taking\nirq-safe spinlocks in a non-irq-safe fashion.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f75d222b836f7febfab0954c7612b23059d748cb",
      "tree": "229ff362a000daca8aa4c45c3c7216efdb4bfb94",
      "parents": [
        "3367b994fe4f131ab1240600682a1981de7cad0c"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Tue May 08 00:27:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:06 2007 -0700"
      },
      "message": "IRQ: check for PERCPU flag only when adding first irqaction\n\nAn irqaction structure won\u0027t be added to an IRQ descriptor irqaction list if\nit doesn\u0027t agree with other irqactions on the IRQF_PERCPU flag.  Don\u0027t check\nfor this flag to change IRQ descriptor `status\u0027 for every irqaction added to\nthe list, Doing the check only for the first irqaction added is enough.\n\nSigned-off-by: Ahmed S. Darwish \u003cdarwish.07@gmail.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": "771ee3b04eaac6184312825eb600b4c598f027a5",
      "tree": "f0db1cca6b9849855c1d2fd6a16828084311e03c",
      "parents": [
        "950f4427c2ddc921164088a20f01304cf231437c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 16 01:27:25 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:13:56 2007 -0800"
      },
      "message": "[PATCH] Add a function to handle interrupt affinity setting\n\nProvide funtions to:\n - check, whether an interrupt can set the affinity\n - pin the interrupt to a given cpu\n\nNecessary for the ability to setup clocksources more flexible (e.g.  use the\ndifferent HPET channels per CPU)\n\n[akpm@osdl.org: alpha build fix]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "950f4427c2ddc921164088a20f01304cf231437c",
      "tree": "8fd3fb1ad045a47dbd2c6ac238c6ff1c1c5aa6c6",
      "parents": [
        "b463fc60730bea6cdd73fec6edc6ec4658d47d37"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 16 01:27:24 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:13:56 2007 -0800"
      },
      "message": "[PATCH] Add irq flag to disable balancing for an interrupt\n\nAdd a flag so we can prevent the irq balancing of an interrupt.  Move the\nbits, so we have room for more :)\n\nNecessary for the ability to setup clocksources more flexible (e.g.  use the\ndifferent HPET channels per CPU)\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "38515e908ba3a9c467ad3bf347b9bce69216df94",
      "tree": "3bb0287ad4ea18d61cb3cad74337343ef5034b5d",
      "parents": [
        "3159f06dc2303630c02d1ad2eeaeaf341414c9df"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 14 00:33:16 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] Scheduled removal of SA_xxx interrupt flags fixups\n\nThe obsolete SA_xxx interrupt flags have been used despite the scheduled\nremoval.  Fixup the remaining users.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Wim Van Sebroeck \u003cwim@iguana.be\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3f0504471536a2b6978b9a99ed1c222950fff07a",
      "tree": "173f4554a2bcf2d27dbbe6aeeed562afc8bb6847",
      "parents": [
        "a304e1b82808904c561b7b149b467e338c53fcce"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Feb 12 00:52:04 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] kernel: shut up the IRQ mismatch messages\n\nThe problem is various drivers legally validly and sensibly try to claim\nIRQs but the kernel insists on vomiting forth a giant irrelevant debugging\nspew when the types clash.\n\nEdit kernel/irq/manage.c go down to mismatch: in setup_irq() and ifdef out\nthe if clause that checks for mismatches.  It\u0027ll then just do the right\nthing and work sanely.\n\nFor the current -mm kernel this will do the trick (and moves it into shared\nirq debugging as in debug mode the info spew is useful).  I\u0027ve had a\nvariant of this in my private tree for some time as I got fed up on the\nmess on boxes where old legacy IRQs get reused.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a304e1b82808904c561b7b149b467e338c53fcce",
      "tree": "068b68c37f6f11de116288886eb211f267d790f7",
      "parents": [
        "f9e4acf3befd3b2903e01b3ef1bd344f03299826"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon Feb 12 00:52:00 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:28 2007 -0800"
      },
      "message": "[PATCH] Debug shared irqs\n\nDrivers registering IRQ handlers with SA_SHIRQ really ought to be able to\nhandle an interrupt happening before request_irq() returns.  They also\nought to be able to handle an interrupt happening during the start of their\ncall to free_irq().  Let\u0027s test that hypothesis....\n\n[bunk@stusta.de: Kconfig fixes]\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ea8176994003483a18c8fed580901e2125f8a83",
      "tree": "0712ec9cd3384fbd897eb454ce9c0f907289ab51",
      "parents": [
        "2835fdfa4a7f1400986d76d054237809a9392406"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Feb 11 15:41:31 2007 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:07 2007 -0800"
      },
      "message": "[PATCH] sort the devres mess out\n\n* Split the implementation-agnostic stuff in separate files.\n* Make sure that targets using non-default request_irq() pull\n  kernel/irq/devres.o\n* Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;\n  allow architectures to turn them off (we needed these symbols anyway for\n  dependencies of quite a few drivers).\n* protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ac7849e35f705830f7b016ff272b0ff1f7ff759",
      "tree": "7f17cdff87e154937a15cc2ec8da9b4e6018ce8e",
      "parents": [
        "77a527eadb425b60db3f5f0aae6a4c51c38e35e5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Jan 20 16:00:26 2007 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Feb 09 17:39:36 2007 -0500"
      },
      "message": "devres: device resource management\n\nImplement device resource management, in short, devres.  A device\ndriver can allocate arbirary size of devres data which is associated\nwith a release function.  On driver detach, release function is\ninvoked on the devres data, then, devres data is freed.\n\ndevreses are typed by associated release functions.  Some devreses are\nbetter represented by single instance of the type while others need\nmultiple instances sharing the same release function.  Both usages are\nsupported.\n\ndevreses can be grouped using devres group such that a device driver\ncan easily release acquired resources halfway through initialization\nor selectively release resources (e.g. resources for port 1 out of 4\nports).\n\nThis patch adds devres core including documentation and the following\nmanaged interfaces.\n\n* alloc/free\t: devm_kzalloc(), devm_kzfree()\n* IO region\t: devm_request_region(), devm_release_region()\n* IRQ\t\t: devm_request_irq(), devm_free_irq()\n* DMA\t\t: dmam_alloc_coherent(), dmam_free_coherent(),\n\t\t  dmam_declare_coherent_memory(), dmam_pool_create(),\n\t\t  dmam_pool_destroy()\n* PCI\t\t: pcim_enable_device(), pcim_pin_device(), pci_is_managed()\n* iomap\t\t: devm_ioport_map(), devm_ioport_unmap(), devm_ioremap(),\n\t\t  devm_ioremap_nocache(), devm_iounmap(), pcim_iomap_table(),\n\t\t  pcim_iomap(), pcim_iounmap()\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8528b0f1de1101c6002036fd53638fb21111d0ea",
      "tree": "fd4c21fbf54ae23b2edaf3ccd1d4423a55f2a14f",
      "parents": [
        "d227e87e6c939c6071def92bc7691ad774c733ff"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jan 23 14:16:31 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Jan 23 14:16:31 2007 -0800"
      },
      "message": "Clear spurious irq stat information when adding irq handler\n\nAny newly added irq handler may obviously make any old spurious irq\nstatus invalid, since the new handler may well be the thing that is\nsupposed to handle any interrupts that came in.\n\nSo just clear the statistics when adding handlers.\n\nPointed-out-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b126b77536186eef69d408eb7959ce7f558f251",
      "tree": "09d29a919c92af36151c3d97ba6bf2e182ee6acb",
      "parents": [
        "0579e303553655245e8a6616bd8b4428b07d63a2"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Tue Nov 14 02:03:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Tue Nov 14 09:09:26 2006 -0800"
      },
      "message": "[PATCH] setup_irq(): better mismatch debugging\n\nWhen we get a mismatch between handlers on the same IRQ, all we get is \"IRQ\nhandler type mismatch for IRQ n\".  Let\u0027s print the name of the\npresently-registered handler with which we got the mismatch.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: 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"
    },
    {
      "commit": "da482792a6d1a3fbaaa25fae867b343fb4db3246",
      "tree": "138c187e669bbaf997780a999299fbc977568e1c",
      "parents": [
        "57a58a9435aef3e0342ba4b2c97e0ddfea6f2c7f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 05 13:06:34 2006 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Thu Oct 05 13:28:27 2006 +0100"
      },
      "message": "IRQ: Typedef the IRQ handler function type\n\nTypedef the IRQ handler function type.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n(cherry picked from 1356d1e5fd256997e3d3dce0777ab787d0515c7a commit)\n"
    },
    {
      "commit": "15a647eba94c3da27ccc666bea72e7cca06b2d19",
      "tree": "b4fbc1e78cb298a36d1106847be1433553d217c8",
      "parents": [
        "5e44ef238b7eb607532e89249e7b2523faf77a92"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Sun Jul 30 03:03:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 31 13:28:36 2006 -0700"
      },
      "message": "[PATCH] genirq: {en,dis}able_irq_wake() need refcounting too\n\nIRQs need refcounting and a state flag to track whether the the IRQ should\nbe enabled or disabled as a \"normal IRQ\" source after a series of calls to\n{en,dis}able_irq().  For shared IRQs, the IRQ must be enabled so long as at\nleast one driver needs it active.\n\nLikewise, IRQs need the same support to track whether the IRQ should be\nenabled or disabled as a \"wakeup event\" source after a series of calls to\n{en,dis}able_irq_wake().  For shared IRQs, the IRQ must be enabled as a\nwakeup source during sleep so long as at least one driver needs it.  But\nright now they _don\u0027t have_ that refcounting ...  which means sharing a\nwakeup-capable IRQ can\u0027t work correctly in some configurations.\n\nThis patch adds the refcount and flag mechanisms to set_irq_wake() -- which\nis what {en,dis}able_irq_wake() call -- and minimal documentation of what\nthe irq wake mechanism does.\n\nDrivers relying on the older (broken) \"toggle\" semantics will trigger a\nwarning; that\u0027ll be a handful of drivers on ARM systems.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fbb9ce9530fd9b66096d5187fa6a115d16d9746c",
      "tree": "1151a55e5d56045bac17b9766e6a4696cff0a26f",
      "parents": [
        "cae2ed9aa573415c6e5de9a09b7ff0d74af793bc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 03 00:24:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jul 03 15:27:03 2006 -0700"
      },
      "message": "[PATCH] lockdep: core\n\nDo \u0027make oldconfig\u0027 and accept all the defaults for new config options -\nreboot into the kernel and if everything goes well it should boot up fine and\nyou should have /proc/lockdep and /proc/lockdep_stats files.\n\nTypically if the lock validator finds some problem it will print out\nvoluminous debug output that begins with \"BUG: ...\" and which syslog output\ncan be used by kernel developers to figure out the precise locking scenario.\n\nWhat does the lock validator do?  It \"observes\" and maps all locking rules as\nthey occur dynamically (as triggered by the kernel\u0027s natural use of spinlocks,\nrwlocks, mutexes and rwsems).  Whenever the lock validator subsystem detects a\nnew locking scenario, it validates this new rule against the existing set of\nrules.  If this new rule is consistent with the existing set of rules then the\nnew rule is added transparently and the kernel continues as normal.  If the\nnew rule could create a deadlock scenario then this condition is printed out.\n\nWhen determining validity of locking, all possible \"deadlock scenarios\" are\nconsidered: assuming arbitrary number of CPUs, arbitrary irq context and task\ncontext constellations, running arbitrary combinations of all the existing\nlocking scenarios.  In a typical system this means millions of separate\nscenarios.  This is why we call it a \"locking correctness\" validator - for all\nrules that are observed the lock validator proves it with mathematical\ncertainty that a deadlock could not occur (assuming that the lock validator\nimplementation itself is correct and its internal data structures are not\ncorrupted by some other kernel subsystem).  [see more details and conditionals\nof this statement in include/linux/lockdep.h and\nDocumentation/lockdep-design.txt]\n\nFurthermore, this \"all possible scenarios\" property of the validator also\nenables the finding of complex, highly unlikely multi-CPU multi-context races\nvia single single-context rules, increasing the likelyhood of finding bugs\ndrastically.  In practical terms: the lock validator already found a bug in\nthe upstream kernel that could only occur on systems with 3 or more CPUs, and\nwhich needed 3 very unlikely code sequences to occur at once on the 3 CPUs.\nThat bug was found and reported on a single-CPU system (!).  So in essence a\nrace will be found \"piecemail-wise\", triggering all the necessary components\nfor the race, without having to reproduce the race scenario itself!  In its\nshort existence the lock validator found and reported many bugs before they\nactually caused a real deadlock.\n\nTo further increase the efficiency of the validator, the mapping is not per\n\"lock instance\", but per \"lock-class\".  For example, all struct inode objects\nin the kernel have inode-\u003einotify_mutex.  If there are 10,000 inodes cached,\nthen there are 10,000 lock objects.  But -\u003einotify_mutex is a single \"lock\ntype\", and all locking activities that occur against -\u003einotify_mutex are\n\"unified\" into this single lock-class.  The advantage of the lock-class\napproach is that all historical -\u003einotify_mutex uses are mapped into a single\n(and as narrow as possible) set of locking rules - regardless of how many\ndifferent tasks or inode structures it took to build this set of rules.  The\nset of rules persist during the lifetime of the kernel.\n\nTo see the rough magnitude of checking that the lock validator does, here\u0027s a\nportion of /proc/lockdep_stats, fresh after bootup:\n\n lock-classes:                            694 [max: 2048]\n direct dependencies:                  1598 [max: 8192]\n indirect dependencies:               17896\n all direct dependencies:             16206\n dependency chains:                    1910 [max: 8192]\n in-hardirq chains:                      17\n in-softirq chains:                     105\n in-process chains:                    1065\n stack-trace entries:                 38761 [max: 131072]\n combined max dependencies:         2033928\n hardirq-safe locks:                     24\n hardirq-unsafe locks:                  176\n softirq-safe locks:                     53\n softirq-unsafe locks:                  137\n irq-safe locks:                         59\n irq-unsafe locks:                      176\n\nThe lock validator has observed 1598 actual single-thread locking patterns,\nand has validated all possible 2033928 distinct locking scenarios.\n\nMore details about the design of the lock validator can be found in\nDocumentation/lockdep-design.txt, which can also found at:\n\n   http://redhat.com/~mingo/lockdep-patches/lockdep-design.txt\n\n[bunk@stusta.de: cleanups]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "284c66806eb6df7f5c66d298681f1abe81a5a9ab",
      "tree": "b6573efe262b85a5bd3cf3c2a7964214143125ed",
      "parents": [
        "52e405eaa9806968e88b35d65e57acad954a5ab5"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jul 03 02:20:32 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jul 02 17:29:22 2006 -0700"
      },
      "message": "[PATCH] genirq:fixup missing SA_PERCPU replacement\n\nThe irqflags consolidation converted SA_PERCPU_IRQ to IRQF_PERCPU but\ndid not define the new constant.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\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": "e8c4b9d003e72199a705fb5a40fcd2487fa16933",
      "tree": "e1bad5c0ba134e55c1e22921a96eabf348c305c0",
      "parents": [
        "17311c03c3e2c16d64d9e8cb2a3f45be2e2f8d3b"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sat Jul 01 04:35:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 01 09:55:57 2006 -0700"
      },
      "message": "[PATCH] IRQ: warning message cleanup\n\nMake warnings more consistent.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\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": "17311c03c3e2c16d64d9e8cb2a3f45be2e2f8d3b",
      "tree": "69e3f1f22323f0399c953584439b48ead7d2d5a8",
      "parents": [
        "ed6f7b10e657b98b4ba89385d02852c8bdf3980e"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sat Jul 01 04:35:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 01 09:55:57 2006 -0700"
      },
      "message": "[PATCH] IRQ: Use SA_PERCPU_IRQ, not IRQ_PER_CPU, for irqaction.flags\n\nIRQ_PER_CPU is a bit in the struct irq_desc \"status\" field, not in the\nstruct irqaction \"flags\", so the previous code checked the wrong bit.\n\nSA_PERCPU_IRQ is only used by drivers/char/mmtimer.c for SGI ia64 boxes.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nAcked-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"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "f1c2662cbc6a0a9772655649bdf579803d33470b",
      "tree": "ab6d0cc97527941e038edf0532f3917fca0953f8",
      "parents": [
        "e76de9f8eb67b7acc1cc6f28c4be8583adf0a90c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:25 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: no_irq_type -\u003e no_irq_chip rename\n\nRename no_irq_type to no_irq_chip.\n\nSigned-off-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": "e76de9f8eb67b7acc1cc6f28c4be8583adf0a90c",
      "tree": "b2c1c4f58f11772880a48c63c1138fe3b2787c9c",
      "parents": [
        "ba9a2331bae5da8f65be3722b9e2d210f1987857"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: add SA_TRIGGER support\n\nEnable drivers to request an IRQ with a given irq-flow (trigger/polarity)\nsetting.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "ba9a2331bae5da8f65be3722b9e2d210f1987857",
      "tree": "ca7cf6a1cfcab2fc4423eb38832236cfb627eaf2",
      "parents": [
        "7a55713ab456d267815fd5ca3c3d0fd14301f306"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: add irq-wake (power-management) support\n\nEnable platforms to set the irq-wake (power-management) properties of an IRQ.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "6a6de9ef5850d063c3d3fb50784bfe3a6d0712c6",
      "tree": "d09f1887fd8890c820559b931140afe4c68f2d7f",
      "parents": [
        "a34db9b28a1c63317e1d6f1080a12d711579e7d0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: core\n\nCore genirq support: add the irq-chip and irq-flow abstractions.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "a34db9b28a1c63317e1d6f1080a12d711579e7d0",
      "tree": "5b4f604cb80fff6f662e407042390941cf9182c9",
      "parents": [
        "94d39e1f6e8132ea982a1d61acbe0423d3d14365"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: update copyrights\n\nUpdate/add copyrights in the generic IRQ code.\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"
    },
    {
      "commit": "94d39e1f6e8132ea982a1d61acbe0423d3d14365",
      "tree": "68ba3666c1d2c0805089e8ffdb47da961a760450",
      "parents": [
        "6550c775cb5ee94c132d93d84de3bb23f0abf37b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: add IRQ_NOAUTOEN support\n\nEnable platforms to disable the automatic enabling of freshly set up irqs.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "6550c775cb5ee94c132d93d84de3bb23f0abf37b",
      "tree": "818ae46cfe30265bbecc095262de53e9c8dcb012",
      "parents": [
        "3418d72404e35eb19e7995cbf3e7a76ba8fefbce"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: add IRQ_NOREQUEST support\n\nEnable platforms to disable request_irq() for certain interrupts.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "3418d72404e35eb19e7995cbf3e7a76ba8fefbce",
      "tree": "08e727f94d4ff31410730d5d42119b3520ad10ca",
      "parents": [
        "a4633adcdbc15ac51afcd0e1395de58cee27cf92"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:24 2006 -0700"
      },
      "message": "[PATCH] genirq: add IRQ_NOPROBE support\n\nIntroduce IRQ_NOPROBE: enables platforms to control chip-probing.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "a4633adcdbc15ac51afcd0e1395de58cee27cf92",
      "tree": "5ab714eba77aec7546e862ac6d63a22010819efe",
      "parents": [
        "11c869eaf1a9c97ef273f824a697fac017d68286"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:23 2006 -0700"
      },
      "message": "[PATCH] genirq: add genirq sw IRQ-retrigger\n\nEnable platforms that do not have a hardware-assisted hardirq-resend mechanism\nto resend them via a softirq-driven IRQ emulation mechanism.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "c0ad90a32fb60f4129d0e24dfd5fd7128e2e09f2",
      "tree": "260d99ab74d33a37cbcc3557e2f18a5e96879f4d",
      "parents": [
        "096c8131c573ed37939dc3f1440221c92c87e74b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:23 2006 -0700"
      },
      "message": "[PATCH] genirq: add -\u003eretrigger() irq op to consolidate hw_irq_resend()\n\nAdd -\u003eretrigger() irq op to consolidate hw_irq_resend() implementations.\n(Most architectures had it defined to NOP anyway.)\n\nNOTE: ia64 needs testing. i386 and x86_64 tested.\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"
    },
    {
      "commit": "096c8131c573ed37939dc3f1440221c92c87e74b",
      "tree": "b26b23978a4118e0fae1cf19065e3a23d40159c1",
      "parents": [
        "0d7012a968d006e277eb0fe20edd7a9b5563c2b7"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 29 02:24:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:23 2006 -0700"
      },
      "message": "[PATCH] genirq: debug: better debug printout in enable_irq()\n\nMake enable_irq() debug printouts user-readable.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-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": "0d7012a968d006e277eb0fe20edd7a9b5563c2b7",
      "tree": "1077acc018d78aed6991f8d3913f9a52d431bca1",
      "parents": [
        "cd916d31cc31273eca8a620fae02b7bf7f577559"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:23 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: turn ARCH_HAS_IRQ_PER_CPU into CONFIG_IRQ_PER_CPU\n\nCleanup: change ARCH_HAS_IRQ_PER_CPU into a Kconfig method.\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"
    },
    {
      "commit": "cd916d31cc31273eca8a620fae02b7bf7f577559",
      "tree": "1af0c37c1fd92c90a178ed1a7d1d8b5a90a1ddb8",
      "parents": [
        "4a733ee12618cf3ec25cbc337a5e0ba3ad5d7fb6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:22 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: merge pending_irq_cpumask[] into irq_desc[]\n\nConsolidation: remove the pending_irq_cpumask[NR_IRQS] array and move it into\nthe irq_desc[NR_IRQS].pending_mask field.\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"
    },
    {
      "commit": "34ffdb7233d5847808d2b63ca6761dac3af9c942",
      "tree": "3eb73aae034729eac24f7f2ee809ba913b32a51b",
      "parents": [
        "06fcb0c6fb3aae9570a32ac3b72a8222563baa69"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:22 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: reduce irq_desc_t use, mark it obsolete\n\nCleanup: remove irq_desc_t use from the generic IRQ code, and mark it\nobsolete.\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"
    },
    {
      "commit": "06fcb0c6fb3aae9570a32ac3b72a8222563baa69",
      "tree": "c1f9d750a42031434971b2271882b907fd7838f5",
      "parents": [
        "2e60bbb6d50de654d8e68f115161e27878b5e72d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:22 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: misc code cleanups\n\nAssorted code cleanups to the generic IRQ code.\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"
    },
    {
      "commit": "a53da52fd743fd637637572838c0a7af23a2d038",
      "tree": "b62c205b609356db5bca378c6d04d6d899bfd499",
      "parents": [
        "74ffd553a3a7fbae34be70b751852d5b6fe5acac"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:22 2006 -0700"
      },
      "message": "[PATCH] genirq: cleanup: merge irq_affinity[] into irq_desc[]\n\nConsolidation: remove the irq_affinity[NR_IRQS] array and move it into the\nirq_desc[NR_IRQS].affinity field.\n\n[akpm@osdl.org: sparc64 build fix]\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"
    },
    {
      "commit": "d1bef4ed5faf7d9872337b33c4269e45ae1bf960",
      "tree": "a88c58e3102396382e9137a25a884af14421f6a6",
      "parents": [
        "cfb9e32f2ff32ef5265c1c80fe68dd1a7f03a604"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 29 02:24:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 10:26:21 2006 -0700"
      },
      "message": "[PATCH] genirq: rename desc-\u003ehandler to desc-\u003echip\n\nThis patch-queue improves the generic IRQ layer to be truly generic, by adding\nvarious abstractions and features to it, without impacting existing\nfunctionality.\n\nWhile the queue can be best described as \"fix and improve everything in the\ngeneric IRQ layer that we could think of\", and thus it consists of many\nsmaller features and lots of cleanups, the one feature that stands out most is\nthe new \u0027irq chip\u0027 abstraction.\n\nThe irq-chip abstraction is about describing and coding and IRQ controller\ndriver by mapping its raw hardware capabilities [and quirks, if needed] in a\nstraightforward way, without having to think about \"IRQ flow\"\n(level/edge/etc.) type of details.\n\nThis stands in contrast with the current \u0027irq-type\u0027 model of genirq\narchitectures, which \u0027mixes\u0027 raw hardware capabilities with \u0027flow\u0027 details.\nThe patchset supports both types of irq controller designs at once, and\nconverts i386 and x86_64 to the new irq-chip design.\n\nAs a bonus side-effect of the irq-chip approach, chained interrupt controllers\n(master/slave PIC constructs, etc.) are now supported by design as well.\n\nThe end result of this patchset intends to be simpler architecture-level code\nand more consolidation between architectures.\n\nWe reused many bits of code and many concepts from Russell King\u0027s ARM IRQ\nlayer, the merging of which was one of the motivations for this patchset.\n\nThis patch:\n\nrename desc-\u003ehandler to desc-\u003echip.\n\nOriginally i did not want to do this, because it\u0027s a big patch.  But having\nboth \"desc-\u003ehandler\", \"desc-\u003ehandle_irq\" and \"action-\u003ehandler\" caused a\nlarge degree of confusion and made the code appear alot less clean than it\ntruly is.\n\nI have also attempted a dual approach as well by introducing a\ndesc-\u003echip alias - but that just wasnt robust enough and broke\nfrequently.\n\nSo lets get over with this quickly.  The conversion was done automatically\nvia scripts and converts all the code in the kernel.\n\nThis renaming patch is the first one amongst the patches, so that the\nremaining patches can stay flexible and can be merged and split up\nwithout having some big monolithic patch act as a merge barrier.\n\n[akpm@osdl.org: build fix]\n[akpm@osdl.org: another build fix]\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"
    },
    {
      "commit": "13e87ec68641fd54f3fa04eef3419d034ed2115a",
      "tree": "6779da58d91af198401cc3c1f6f4c81b8d5a7bb6",
      "parents": [
        "47bb789973fed504e4711ec34e63b84e6cbfb4e8"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Apr 27 18:39:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 28 08:33:46 2006 -0700"
      },
      "message": "[PATCH] request_irq(): remove warnings from irq probing\n\n- Add new SA_PROBEIRQ which suppresses the new sharing-mismatch warning.\n  Some drivers like to use request_irq() to find an unused interrupt slot.\n\n- Use it in i82365.c\n\n- Kill unused SA_PROBE.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cd7b24bb1891a10ee25168a912ff2304a9571d23",
      "tree": "c8cc6bf9b7c2d3b527f9c5bb8e7ae2b422ee3ac7",
      "parents": [
        "6dc659d813fdd1789e605d69d0b8762d284e8c60"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 26 01:36:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] warn if free_irq() is called from IRQ context\n\nWarn if free_irq() is called in IRQ context - free_irq() can execute /proc\nVFS work, which must not be done in IRQ context.\n\nSigned-off-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": "f5163427453bc6ca2dd497eeb3e7a30d1c74b487",
      "tree": "6fc334c30d12ee269e58d96e515543de48e9cf53",
      "parents": [
        "6cc6b1226b71132a1d6e95449d78e051f1f3b506"
      ],
      "author": {
        "name": "Dimitri Sivanich",
        "email": "sivanich@sgi.com",
        "time": "Sat Mar 25 03:08:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:01 2006 -0800"
      },
      "message": "[PATCH] Add SA_PERCPU_IRQ flag support\n\nAdd support for SA_PERCPU_IRQ (only mmtimer.c uses this at this stage).\n\nSigned-off-by: Dimitri Sivanich \u003csivanich@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eee45269b0f5979c70bc151c6c2f4e5f4f5ababe",
      "tree": "a8ed14ee532ea8dabc1010d540542eea1d620540",
      "parents": [
        "1fa744e6e91a895750b9980d13fcfc5791a0cd91"
      ],
      "author": {
        "name": "Ivan Kokshaysky",
        "email": "ink@jurassic.park.msu.ru",
        "time": "Fri Jan 06 00:12:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:40 2006 -0800"
      },
      "message": "[PATCH] Alpha: convert to generic irq framework (generic part)\n\nThanks to Christoph for doing most of the work.\n\nThis allows automatic SMP IRQ affinity assignment other than default \"all\ninterrupts on all CPUs\" which is rather expensive.  This might be useful if\nthe hardware can be programmed to distribute interrupts among different\nCPUs, like Alpha does.\n\nSigned-off-by: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c2b5a251b9feca727661f1a3278cafb1de4c80f3",
      "tree": "499369ecd5ef3af4f409df9d86c5e3c5bd4ca2de",
      "parents": [
        "2d0ebb36038c0626cde662a3b06da9787cfb68c3"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Nov 03 07:51:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 23 11:11:28 2005 -0800"
      },
      "message": "[PATCH] Check the irq number is within bounds\n\nMost of the functions already check. Do the ones that didn\u0027t.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e5d533142c1c178a31d4cc81837eb078f9269bc",
      "tree": "7708cc8667035ad7903f3c2c617a54240f2d6e77",
      "parents": [
        "8a0d4900697f2d615a77cd99585e743c1af555a3"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Mon Nov 07 01:01:06 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:53:55 2005 -0800"
      },
      "message": "[PATCH] more kernel-doc cleanups, additions\n\nVarious core kernel-doc cleanups:\n- add missing function parameters in ipc, irq/manage, kernel/sys,\n  kernel/sysctl, and mm/slab;\n- move description to just above function for kernel_restart()\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54d5d42404e7705cf3804593189e963350d470e5",
      "tree": "7cf8a7fce163b19672193d8cf4ef6a7f6c131d9e",
      "parents": [
        "f63ed39c578a2a2d067356a85ce7c28a7c795d8a"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Tue Sep 06 15:16:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:15 2005 -0700"
      },
      "message": "[PATCH] x86/x86_64: deferred handling of writes to /proc/irqxx/smp_affinity\n\nWhen handling writes to /proc/irq, current code is re-programming rte\nentries directly. This is not recommended and could potentially cause\nchipset\u0027s to lockup, or cause missing interrupts.\n\nCONFIG_IRQ_BALANCE does this correctly, where it re-programs only when the\ninterrupt is pending. The same needs to be done for /proc/irq handling as well.\nOtherwise user space irq balancers are really not doing the right thing.\n\n- Changed pending_irq_balance_cpumask to pending_irq_migrate_cpumask for\n  lack of a generic name.\n- added move_irq out of IRQ_BALANCE, and added this same to X86_64\n- Added new proc handler for write, so we can do deferred write at irq\n  handling time.\n- Display of /proc/irq/XX/smp_affinity used to display CPU_MASKALL, instead\n  it now shows only active cpu masks, or exactly what was set.\n- Provided a common move_irq implementation, instead of duplicating\n  when using generic irq framework.\n\nTested on i386/x86_64 and ia64 with CONFIG_PCI_MSI turned on and off.\nTested UP builds as well.\n\nMSI testing: tbd: I have cards, need to look for a x-over cable, although I\ndid test an earlier version of this patch.  Will test in a couple days.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nAcked-by: Zwane Mwaikambo \u003czwane@holomorphy.com\u003e\nGrudgingly-acked-by: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Coywolf Qi Hunt \u003ccoywolf@lovecn.org\u003e\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b77d6adc922b8bbf8b16b67f567958c42962cf88",
      "tree": "6d212543f10d0330b73ec3932d17c97a1da56bdf",
      "parents": [
        "faec1e99ba9ca7371d9aee1656938373133c4b21"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Tue Jun 21 17:16:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:32 2005 -0700"
      },
      "message": "[PATCH] uml: make hw_controller_type-\u003erelease exist only for archs needing it\n\nWith Chris Wedgwood \u003ccw@f00f.org\u003e\n\nAs suggested by Chris, we can make the \"just added\" method -\u003erelease\nconditional to UML only (better: to archs requesting it, i.e.  only UML\ncurrently), so that other archs don\u0027t get this unneeded crud, and if UML\nwon\u0027t need it any more we can kill this.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dbce706e2550253c5ab6043f4f5dfde0cd02470f",
      "tree": "5d96bab350d86e43e32faa80b64e05e7dc514ae8",
      "parents": [
        "5757b284a300e0e5d2173750906625b6470bd9f0"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Tue Jun 21 17:16:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Tue Jun 21 19:07:32 2005 -0700"
      },
      "message": "[PATCH] uml: add and use generic hw_controller_type-\u003erelease\n\nWith Chris Wedgwood \u003ccw@f00f.org\u003e\n\nCurrently UML must explicitly call the UML-specific\nfree_irq_by_irq_and_dev() for each free_irq call it\u0027s done.\n\nThis is needed because -\u003eshutdown and/or -\u003edisable are only called when the\nlast \"action\" for that irq is removed.\n\nInstead, for UML shared IRQs (UML IRQs are very often, if not always,\nshared), for each dev_id some setup is done, which must be cleared on the\nrelease of that fd.  For instance, for each open console a new instance\n(i.e.  new dev_id) of the same IRQ is requested().\n\nExactly, a fd is stored in an array (pollfds), which is after read by a\nhost thread and passed to poll().  Each event registered by poll() triggers\nan interrupt.  So, for each free_irq() we must remove the corresponding\nhost fd from the table, which we do via this -release() method.\n\nIn this patch we add an appropriate hook for this, and remove all uses of\nit by pointing the hook to the said procedure; this is safe to do since the\nsaid procedure.\n\nAlso some cosmetic improvements are included.\n\nThis is heavily based on some work by Chris Wedgwood, which however didn\u0027t\nget the patch merged for something I\u0027d call a \"misunderstanding\" (the need\nfor this patch wasn\u0027t cleanly explained, thus adding the generic hook was\nfelt as undesirable).\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCC: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
