)]}'
{
  "log": [
    {
      "commit": "c5cf9101fefae32df654da5f0e736ffbe28aefdc",
      "tree": "0591d2a2b9f3a71dd0a7bece85d74505a25af5ec",
      "parents": [
        "7e680c22c0579f1db7b84a7b155755a2754f9557"
      ],
      "author": {
        "name": "Ayaz Abdulla",
        "email": "aabdulla@nvidia.com",
        "time": "Mon Oct 30 17:32:01 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "[PATCH] forcedeth: add recoverable error support\n\nThis patch adds support to recover from a previously fatal MAC error. In\nthe past the MAC would be hung on an internal fatal error. On new\nchipsets, the MAC has the ability to enter a non-fatal state and allow\nthe driver to re-init it.\n\nSigned-Off-By: Ayaz Abdulla \u003caabdulla@nvidia.com\u003e\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "7e680c22c0579f1db7b84a7b155755a2754f9557",
      "tree": "713d8b13aeae3f43932a571476c824e2a312fe68",
      "parents": [
        "b2e68aa337f950e4a8c893a82b95b1755309bc56"
      ],
      "author": {
        "name": "Ayaz Abdulla",
        "email": "aabdulla@nvidia.com",
        "time": "Mon Oct 30 17:31:51 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "[PATCH] forcedeth: add mgmt unit support\n\nThis patch adds support for the mgmt unit in certain chipsets. The MAC\nand the mgmt unit share the PHY and therefore proper intialization\nprocedures are needed for them to maintain coexistense.\n\nSigned-Off-By: Ayaz Abdulla \u003caabdulla@nvidia.com\u003e\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b2e68aa337f950e4a8c893a82b95b1755309bc56",
      "tree": "4f7696e09d08cb173306e68bfdc4dc98aa97ef0b",
      "parents": [
        "c3a9392e4f3b9d97803b067871d66bc143369dbf"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Mon Oct 23 13:53:17 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "[PATCH] defxx: Big-endian hosts support\n\n The PDQ DMA engine requires a different byte-swapping mode for big-endian\nhosts; also the MAC address which is read from a register through PIO has\nto be byte-swapped.  These changes have been verified with DEFPA-DC (PCI)\nboards and a Broadcom BCM91250A (MIPS CPU based) host.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c3a9392e4f3b9d97803b067871d66bc143369dbf",
      "tree": "1558190c7a9c0325f5be90f4b9dd375cd74e5b51",
      "parents": [
        "bf793295e1090af84972750898bf8470df5e5419"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Mon Oct 23 22:20:15 2006 +0200"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "[PATCH] kmemdup() cleanup in drivers/net\n\nhi,\n\nreplace open coded kmemdup() to save some screen space,\nand allow inlining/not inlining to be triggered by gcc.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "bf793295e1090af84972750898bf8470df5e5419",
      "tree": "900158abf33dd5fa98dca6506fb82dd15f59353b",
      "parents": [
        "de3edab4276c3c789f64dc3d78eea027709fef0e"
      ],
      "author": {
        "name": "Francois Romieu",
        "email": "romieu@fr.zoreil.com",
        "time": "Wed Nov 01 00:53:05 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "r8169: perform a PHY reset before any other operation at boot time\n\nRealtek\u0027s 8139/810x (0x8136) PCI-E comes with a touchy PHY.\nA big heavy reset seems to calm it down.\n\nFix for http://bugzilla.kernel.org/show_bug.cgi?id\u003d7378.\n\nSigned-off-by: Francois Romieu \u003cromieu@fr.zoreil.com\u003e\nSigned-off-by: Darren Salt \u003clinux@youmustbejoking.demon.co.uk\u003e\n"
    },
    {
      "commit": "25006ac61e514628b9d0f78fce0bed155f4f109c",
      "tree": "8a8a0e959fe2c9506b4d23ed9f696da1faa89ef5",
      "parents": [
        "835bb1298311f372a3387fb40b952b18d90aa9f8"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:48:15 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:01 2006 -0500"
      },
      "message": "e1000: increment version to 7.3.15-k2\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "835bb1298311f372a3387fb40b952b18d90aa9f8",
      "tree": "1a58003158f03397212979727c2f5cfa37ebc4f2",
      "parents": [
        "9ac98284428961bd5be285a6cc1f5e6f5b6644aa"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:48:13 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: add dynamic itr modes\n\nAdd a new dynamic itr algorithm, with 2 modes, and make it the default\noperation mode. This greatly reduces latency and increases small packet\nperformance, at the \"cost\" of some CPU utilization. Bulk traffic\nthroughput is unaffected.\n\nThe driver can limit the amount of interrupts per second that the\nadapter will generate for incoming packets. It does this by writing a\nvalue to the adapter that is based on the maximum amount of interrupts\nthat the adapter will generate per second.\n\nSetting InterruptThrottleRate to a value greater or equal to 100 will\nprogram the adapter to send out a maximum of that many interrupts per\nsecond, even if more packets have come in. This reduces interrupt\nload on the system and can lower CPU utilization under heavy load,\nbut will increase latency as packets are not processed as quickly.\n\nThe default behaviour of the driver previously assumed a static\nInterruptThrottleRate value of 8000, providing a good fallback value\nfor all traffic types,but lacking in small packet performance and\nlatency. The hardware can handle many more small packets per second\nhowever, and for this reason an adaptive interrupt moderation algorithm\nwas implemented.\n\nSince 7.3.x, the driver has two adaptive modes (setting 1 or 3) in\nwhich it dynamically adjusts the InterruptThrottleRate value based on\nthe traffic that it receives. After determining the type of incoming\ntraffic in the last timeframe, it will adjust the InterruptThrottleRate\nto an appropriate value for that traffic.\n\nThe algorithm classifies the incoming traffic every interval into\nclasses.  Once the class is determined, the InterruptThrottleRate\nvalue is adjusted to suit that traffic type the best. There are\nthree classes defined: \"Bulk traffic\", for large amounts of packets\nof normal size; \"Low latency\", for small amounts of traffic and/or\na significant percentage of small packets; and \"Lowest latency\",\nfor almost completely small packets or minimal traffic.\n\nIn dynamic conservative mode, the InterruptThrottleRate value is\nset to 4000 for traffic that falls in class \"Bulk traffic\". If\ntraffic falls in the \"Low latency\" or \"Lowest latency\" class, the\nInterruptThrottleRate is increased stepwise to 20000. This default\nmode is suitable for most applications.\n\nFor situations where low latency is vital such as cluster or\ngrid computing, the algorithm can reduce latency even more when\nInterruptThrottleRate is set to mode 1. In this mode, which operates\nthe same as mode 3, the InterruptThrottleRate will be increased\nstepwise to 70000 for traffic in class \"Lowest latency\".\n\nSetting InterruptThrottleRate to 0 turns off any interrupt moderation\nand may improve small packet latency, but is generally not suitable\nfor bulk throughput traffic.\n\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nCc: Rick Jones \u003crick.jones2@hp.com\u003e\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "9ac98284428961bd5be285a6cc1f5e6f5b6644aa",
      "tree": "e32ace513de471df3e552a3dc53fc64510b5f07c",
      "parents": [
        "04fedbfbc3dac1158519f8ef8cc8aca4fe79695b"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:48:10 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: add dynamic generic MSI interrupt routine\n\nAdd a generic MSI interrupt routine that is IO read-free, speeding up\nMSI interrupt handling.\n\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "04fedbfbc3dac1158519f8ef8cc8aca4fe79695b",
      "tree": "8f75db752d79ed4c9efbe590d945915426bd238b",
      "parents": [
        "6a042dab19567fc888d5b87ce6ab68ac02aea1dc"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:48:07 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: reorder e1000_param.c\n\nThis file needs some cleanups and reordering - logically order it\nso that relevant defines and code are together with properly quoted\ndefaults.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "6a042dab19567fc888d5b87ce6ab68ac02aea1dc",
      "tree": "ec035c4a40ab27524addb3c247dc58eae423d460",
      "parents": [
        "2df7d59f287236a636fb2d7e05879e65c8c56492"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:48:04 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: Only set IDE for tx when we are using TIDV/TADV\n\nSpec fix: don\u0027t set IDE unless we are actually setting the tx\nint delay time.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\n"
    },
    {
      "commit": "2df7d59f287236a636fb2d7e05879e65c8c56492",
      "tree": "bee33ba966c6a961799494dc655adb1b36e3d6b6",
      "parents": [
        "fcfb1224250d7877b6a6c6a947986e08b2160fb6"
      ],
      "author": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Wed Nov 01 08:48:02 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: rename ICH8 flash macros\n\nICH8 will soon be followed by newer chipsets bearing the same acronym,\nthus we remove the \u00278\u0027 and make it independent of the version number in\nthe platform name.\n\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "fcfb1224250d7877b6a6c6a947986e08b2160fb6",
      "tree": "b87742a5b484dcbba418b055337a7f14b2e272dc",
      "parents": [
        "fc2307d00c15385fbdbb5928a8517e5f63c3d068"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:47:59 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: add queue restart counter\n\nAdd a netif_wake/start_queue counter to the ethtool statistics to indicated\nto the user that their transmit ring could be too small for their workload.\n\nSigned-off-by: Jesse brandeburg \u003cjesse.brandeburg@intel.com\u003e\nCc: Jamal Hadi \u003chadi@cyberus.ca\u003e\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "fc2307d00c15385fbdbb5928a8517e5f63c3d068",
      "tree": "2636883b950a2ae492f8302773001189dfdd6bfa",
      "parents": [
        "a9ebadd640927ac6529d904b4131b17e8019d199"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:56 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: New hardware support\n\nAdd support for a Low Profile quad-port PCI-E adapter and 2 variants\nof the ICH8 systems\u0027 onboard NIC\u0027s.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "a9ebadd640927ac6529d904b4131b17e8019d199",
      "tree": "0e818b591ac79057a4155a6814bd2cc29a866807",
      "parents": [
        "996695de21b9b301ebb32379e2950fc2142df3a7"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:47:53 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:12:00 2006 -0500"
      },
      "message": "e1000: Remove unneeded and unwanted memsets\n\nThis memsetting was added in a paranoid rage debugging TX hangs, but\nare no longer of importance. We can beef up the performance quite a\nbit removing them. Make sure to fill in next_to_watch to allow this.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\n"
    },
    {
      "commit": "996695de21b9b301ebb32379e2950fc2142df3a7",
      "tree": "3980cbc4d45a4cd551d0c10ba9779cfa57b1552c",
      "parents": [
        "2bc35c1078fdfe7bb2a849c2d1bee8d9d5fea4a7"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:50 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:59 2006 -0500"
      },
      "message": "e1000: simplify skb_put call.\n\nSimplify two calls to skb_put by removing one call to it.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "2bc35c1078fdfe7bb2a849c2d1bee8d9d5fea4a7",
      "tree": "2caf5df880de7901adac44b92afe2e1663c90116",
      "parents": [
        "070f6ffbb8ed5c398e84f1508752b8fd15b05cf2"
      ],
      "author": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Wed Nov 01 08:47:47 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:59 2006 -0500"
      },
      "message": "e1000: reorder pci-e infor struct\n\nOrder pci-e capability struct according to bus/pci bus width ordering\npreserving the hard pci spec numbers.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "070f6ffbb8ed5c398e84f1508752b8fd15b05cf2",
      "tree": "54ed16c4c1ab85e166c5245f1fcbdca5693e9c48",
      "parents": [
        "2ce9047f5d8464039da8ff986e71be5546e229c0"
      ],
      "author": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Wed Nov 01 08:47:44 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:59 2006 -0500"
      },
      "message": "e1000: fix VR powerdown code\n\nOn ich systems during PHY power down to D3, the voltage regulators\nwere left on.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "2ce9047f5d8464039da8ff986e71be5546e229c0",
      "tree": "4e888a376bb97c9688d8ebb70d1ffef144b5529f",
      "parents": [
        "21c4d5e07859a6fc0f62be37da15b161e142c8d1"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Wed Nov 01 08:47:42 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:59 2006 -0500"
      },
      "message": "e1000: add mmiowb() for IA64 to sync tail writes\n\nIA64 SMP systems were seeing TX issues with multiple cpu\u0027s attempting\nto write tail registers unordered. This mmiowb() fixes the issue.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\n"
    },
    {
      "commit": "21c4d5e07859a6fc0f62be37da15b161e142c8d1",
      "tree": "bf4c3810c1c7a458f4c912c7b6da42bf843616c8",
      "parents": [
        "87ca4e5b8d729fc157a0a599d78ccab245fc0602"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:39 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:59 2006 -0500"
      },
      "message": "e1000: Enble early receive (ERT) on 82573\n\nEnable early receives on 82573 for jumbo frame performance. Jumbo\u0027s\nare only supported on 82573L with ASPM disabled.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "87ca4e5b8d729fc157a0a599d78ccab245fc0602",
      "tree": "69bec3c1d367d26253678e6fbd9eff184c68e7ee",
      "parents": [
        "b00dae7cce465323850c3e1fd3ac8b2d9229735c"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:36 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "e1000: FIX: enable hw TSO for IPV6\n\nEnable TSO for IPV6. All e1000 hardware supports it. This reduces CPU\nutilizations by 50% when transmitting IPv6 frames.\n\nFix symbol naming enabling ipv6 TSO. Turn off TSO6 for 10/100.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "b00dae7cce465323850c3e1fd3ac8b2d9229735c",
      "tree": "ac478985ba0f65a85371095a5628c8b8e60dabb0",
      "parents": [
        "90fb51358a264f2f7e0cabdca6fc229bbc40cd91"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:33 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "e1000: Remove DISABLE_MULR debug code\n\nRemove debugging code disabling MULR (multiple reads). It\u0027s not usable\nfor a wide audience and there are no known problems with MULR right\nnow.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "90fb51358a264f2f7e0cabdca6fc229bbc40cd91",
      "tree": "d473bdee8cc4588eb610c596e14effd329e86fe4",
      "parents": [
        "a362bf57aa12835e4fa6af6960e5135b5626bc5b"
      ],
      "author": {
        "name": "Auke Kok",
        "email": "auke\\-jan.h.kok@intel.com",
        "time": "Wed Nov 01 08:47:30 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "e1000: whitespace changes, comments, typos\n\nSmall whitespace changes, comment changes, typo fixes.\n\nSigned-off-by: Auke Kok \u003cauke-jan.h.kok@intel.com\u003e\n"
    },
    {
      "commit": "a362bf57aa12835e4fa6af6960e5135b5626bc5b",
      "tree": "bebc7d5d4dc0ca027108c223b2e05da0ac6c8a9c",
      "parents": [
        "fe75f7471ba5604fe65435f717e3612a482c28cb"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@gentoo.org",
        "time": "Wed Oct 18 00:17:02 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "[PATCH] zd1211rw: Add ID for ZyXEL G-220\n\nTested by Newsome on IRC\n\nzd1211 chip 0586:3401 v4330 high 00-13-49 AL2230_RF  pa0 g---\n\nSigned-off-by: Daniel Drake \u003cdsd@gentoo.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3d396eb17e9f8c5f59314078b45b88647591378d",
      "tree": "d0c54e4555c1bee13d403f6dad36b40ae26d74a2",
      "parents": [
        "f3d1fca3eb05cf6ff3879a385a15d24fbf556c57"
      ],
      "author": {
        "name": "Amit S. Kale",
        "email": "amitkale@netxen.com",
        "time": "Sat Oct 21 15:33:03 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "Add NetXen 1G/10G ethernet driver.\n\nSigned-off-by: Amit S. Kale \u003camitkale@netxen.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f3d1fca3eb05cf6ff3879a385a15d24fbf556c57",
      "tree": "f8625cb837369a8ee7755f4d0639a9abe36fd860",
      "parents": [
        "995cdaa45b1faf8f4472e4b4c6027dc685ae1b54"
      ],
      "author": {
        "name": "Stefano Brivio",
        "email": "stefano.brivio@polimi.it",
        "time": "Sun Oct 15 23:18:11 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:58 2006 -0500"
      },
      "message": "[PATCH] bcm43xx: add PCI-E code\n\nThe current bcm43xx driver does not contain code to handle PCI-E interfaces\nsuch as the BCM4311 and BCM4312. This patch, originally written by Stefano\nBrivio adds the necessary code to enable these interfaces.\n\nSigned-off-by: Stefano Brivio \u003cstefano.brivio@polimi.it\u003e\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "995cdaa45b1faf8f4472e4b4c6027dc685ae1b54",
      "tree": "e8dde012ae80d8ae69d4c478cc96cbcbe26d80a6",
      "parents": [
        "3b31dc327f07a2df06da931ffb0bb1627711bd86"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Oct 10 14:45:47 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] prism54: use BUILD_BUG_ON\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3b31dc327f07a2df06da931ffb0bb1627711bd86",
      "tree": "10034ffc0cb5f006410a307439d416780087c9d9",
      "parents": [
        "93b2dd12049d1adb0d76fb918fcd4c1030445433"
      ],
      "author": {
        "name": "Holden Karau",
        "email": "holden@pigscanfly.ca",
        "time": "Tue Oct 10 14:45:33 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] atmel: output signal strength information\n\nOutput signal strength information as part of iwlist scan - before it did\nnot output any signal strength related information.\n\nSigned-off-by: Holden Karau \u003cholden@pigscanfly.ca\u003e\nCc: Jean Tourrilhes \u003cjt@hpl.hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "93b2dd12049d1adb0d76fb918fcd4c1030445433",
      "tree": "1116c50dbe9cdc16c36e541eb17cc5cdc97dc773",
      "parents": [
        "d18e0c4a5434f02586b5fdcbcc72f1fe61ab49e6"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Sun Oct 08 00:38:15 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] prism54: whitespace cleanup\n\nNET: prism54 - whitespace cleanup\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d18e0c4a5434f02586b5fdcbcc72f1fe61ab49e6",
      "tree": "813592f56a6f090c7732aa7da675276b722da6ab",
      "parents": [
        "5c877fe58c5df19646204b144b978b99c2ef074f"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Sun Oct 08 00:38:14 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] prism54: fix potential race in reset scheduling\n\nNET: prism54 - fix potential race in reset scheduling\n\nThere appears to be a race in reset scheduling logic - thread\nresponsible for reseting the interface should clear \"reset\npending\" flag before restarting the queue, otherwise timeout\nhandler might not schedule another reset even if it is needed.\n\nThis race is mostly theoretical as far as I can see but a race\nnonetheless.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5c877fe58c5df19646204b144b978b99c2ef074f",
      "tree": "266adc98dd8a3feebba558817259bd87dfa2d1d3",
      "parents": [
        "b4341135794fdad85f995a378da424e4f4128e4d"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Sun Oct 08 00:14:30 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] atmel: whitespace cleanup\n\nNET: atmel: whitespace cleanup\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b4341135794fdad85f995a378da424e4f4128e4d",
      "tree": "d990a52885f7a87ad0e121e981c112ac41193fb1",
      "parents": [
        "00a5ebf8621e8098305ca5e7b319937eed430184"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Sun Oct 08 00:14:29 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] atmel: use ARRAY_SIZE()\n\nNET: atmel - switch to using ARRAY_SIZE()\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "00a5ebf8621e8098305ca5e7b319937eed430184",
      "tree": "c7f78eb042c104b5d21b9aa6f7181d6c00109767",
      "parents": [
        "837925df022a667c302b24aad9d6a58f94efd959"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@insightbb.com",
        "time": "Sun Oct 08 00:14:28 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:57 2006 -0500"
      },
      "message": "[PATCH] atmel: save on array initialization\n\nNET: atmel - do not initialize array over and over again\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c9308b06c049a107edfbd4e5271771564eb6024d",
      "tree": "a065438a0f279a96988c3730a4d644ce2b94061d",
      "parents": [
        "f2423723d70298e04179f934ff17346c3e06f408"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@gentoo.org",
        "time": "Wed Sep 27 03:50:31 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] ieee80211: Move IV/ICV stripping into ieee80211_rx\n\nThis patch adds a host_strip_iv_icv flag to ieee80211 which indicates that\nieee80211_rx should strip the IV/ICV/other security features from the payload.\nThis saves on some memmove() calls in the driver and seems like something that\nbelongs in the stack as it can be used by bcm43xx, ipw2200, and zd1211rw\n\nI will submit the ipw2200 patch separately as it needs testing.\n\nThis patch also adds some sensible variable reuse (idx vs keyidx) in\nieee80211_rx\n\nSigned-off-by: Daniel Drake \u003cdsd@gentoo.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f2423723d70298e04179f934ff17346c3e06f408",
      "tree": "8a8edd04377d1905b56559ec1c151853df447a93",
      "parents": [
        "f04e2be7d9b73a1da7be99a08b3695074e14970c"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@gentoo.org",
        "time": "Tue Sep 26 04:04:38 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] zd1211rw: Add 3 more device IDs\n\niNexQ UR055g: Tested by Todor T Zviskov\nzd1211 chip 1435:0711 v4330 high 00-10-a7 AL2230_RF pa0 g--\n\nZyXEL AG-225, FCC ID SI5WUB410: Tested by Nathan\nzd1211 chip 0586:3409 v4810 full 00-13-49 AL7230B_RF pa0 g---\n\nYakumo QuickWLAN USB: Tested by EdB\nzd1211 chip 0b3b:1630 v4330 high 00-01-36 RF2959_RF pa0 ---\n\nSigned-off-by: Daniel Drake \u003cdsd@gentoo.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f04e2be7d9b73a1da7be99a08b3695074e14970c",
      "tree": "8b0d85daac4b3c157dc9d9556ee508f4a2bf04b9",
      "parents": [
        "3470cb1d4fb27572273079e7095734ac4f9caa43"
      ],
      "author": {
        "name": "Larry Finger",
        "email": "Larry.Finger@lwfinger.net",
        "time": "Mon Sep 25 15:33:20 2006 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] bcm43xx: output proper link quality with scans\n\nThe bcm43xx-softmac driver fails to set two quantities needed for\niwlist to compute wireless quality when scanning. As a result, userland\nprograms using the quality to determine the best connection fail.\n\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3470cb1d4fb27572273079e7095734ac4f9caa43",
      "tree": "c3b080832a2a6144b6ccfe269656499aecf0b480",
      "parents": [
        "b936889c8f95b601d3ef6caac6ac653a8adb4fec"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Oct 10 00:19:36 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] 8390 fixes - the final chunk (h8300)\n\nThe rest of 8390 conversions; ifdef cascade in 8390.h is gone now.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "b936889c8f95b601d3ef6caac6ac653a8adb4fec",
      "tree": "66eabef54a8406d5ec4776cdd4213b6634fe700e",
      "parents": [
        "8c6270f957f0eaa343e4a609159c4b85038468d6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Oct 10 00:19:36 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] 8390 cleanup - etherh iomem annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "8c6270f957f0eaa343e4a609159c4b85038468d6",
      "tree": "7ee4305f931fefe2c80196b55395e522f59032f4",
      "parents": [
        "6c3561b0c1b64c8f0d1419f3909ab29f0eb98906"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Oct 10 00:19:36 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] 8390 fixes - m68k oddballs\n\nmore 8390 conversions - mac8390, zorro8390 and hydra got the same treatment\nas arm etherh; one more case in 8390.h ifdef cascade is gone.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6c3561b0c1b64c8f0d1419f3909ab29f0eb98906",
      "tree": "b39e7aa75e9a9a9a6e7c394451a3ad52eb0d2444",
      "parents": [
        "865f3b2b6ac578a061c823bec5baf00ad04cbd8c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Tue Oct 10 00:19:36 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] beginning of 8390 fixes - generic and arm/etherh\n\netherh and a handful of other odd drivers use different macros when building\n8390.c.  Since we generate a single 8390.o and then link with it, in any\nconfig with both oddball and normal 8390-based driver we will end up with\nbreakage in at least one of them.  Solution: take most of 8390.c into\nlib8390.c and have 8390.c, etherh.c and the rest of oddballs #include it.\nHelper macros are taken from 8390.h to whoever includes lib8390.c.  That\nway odd drivers get separate instances of compiled 8390 stuff and stop\nstepping on each other\u0027s toes.  8390.h gets cleaned up - we don\u0027t have\nthe cascade of ifdefs in there and are left with the stuff that can be\nused by any 8390-based driver.  Current problems are exactly because of\nthat cascade - we attempt to choose the set of helpers by looking at config\nand that, of course, doesn\u0027t work well when we have several sets needed\nby various drivers in our config.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "865f3b2b6ac578a061c823bec5baf00ad04cbd8c",
      "tree": "3e15b8da467749ced236e2c12d99ae3c862caad0",
      "parents": [
        "24b46a0f0a9a736f125141f271102f70c2612a9f"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 05 10:21:26 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] sk98lin: MII ioctl support\n\nAdd MII ioctl support to the deprecated sk98lin driver.\nThis allows comparison with skge driver\u0027s PHY settings.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "24b46a0f0a9a736f125141f271102f70c2612a9f",
      "tree": "f3a2e9f93648722f4a846acb4e8b2a07c87a17a5",
      "parents": [
        "83717cf054214d144165c576cba6362d07fc6656"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Oct 05 10:16:23 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:56 2006 -0500"
      },
      "message": "[PATCH] sk98lin: ethtool register dump\n\nAdd support for dumping the registers in the deprecated\nsk98lin driver. This is allows for easier comparison with\nsettings in new skge driver.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "83717cf054214d144165c576cba6362d07fc6656",
      "tree": "5953232b8936eeaf7961454176eaa0445deadd05",
      "parents": [
        "107ce6d21b746f33f85f4385b9802b3ae928f876"
      ],
      "author": {
        "name": "Henrik Kretzschmar",
        "email": "henne@nachtwindheim.de",
        "time": "Tue Oct 10 14:33:29 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:55 2006 -0500"
      },
      "message": "[PATCH] pci_module_init() convertion in olympic.c\n\npci_module_init() convertion in olympic.c\n\nSigned-off-by: Henrik Kretzschmar \u003chenne@nachtwindheim.de\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "107ce6d21b746f33f85f4385b9802b3ae928f876",
      "tree": "309accadd55d13fe706cadc9368aa5402381343f",
      "parents": [
        "a189317fa0e9d425cd3a4c248b06f96d876cf7fd"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Tue Oct 10 14:33:28 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:55 2006 -0500"
      },
      "message": "[PATCH] Remove unnecessary check in drivers/net/depca.c\n\nThis was spotted by coverity (cid #793).  All callers dereference dev\nbefore calling this functions, and we dereference it earlier in the\nfunction, when initializing lp.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "a189317fa0e9d425cd3a4c248b06f96d876cf7fd",
      "tree": "63da17e7b0c80bed776d95b9408587b805c5f533",
      "parents": [
        "3c3070d713d798f7f9e7ee3614e49b47655d14d8"
      ],
      "author": {
        "name": "Francois Romieu",
        "email": "romieu@fr.zoreil.com",
        "time": "Tue Oct 10 14:33:27 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:55 2006 -0500"
      },
      "message": "[PATCH] forcedeth: power management support\n\nTobias Diedrich \u003cranma@tdiedrich.de\u003e sayeth:\n\nVanilla forcedeth doesn\u0027t seem to support suspend and an ifdown/up-cycle is\nneeded to get it working again after suspend.  Francois Romieu\u0027s \"Awfully\nexperimental\" patch is working just fine for me (with message signalled\ninterrupts disabled) and has survived quite a few suspend/resume cycles.\n\nSo I\u0027d very much like to see (at least partial, with msi disabled)\nsuspend support for forcedeth in mainline.\n\n(Addresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d6398)\n\nCc: Francois Romieu \u003cromieu@fr.zoreil.com\u003e\nCc; Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Ayaz Abdulla \u003caabdulla@nvidia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "3c3070d713d798f7f9e7ee3614e49b47655d14d8",
      "tree": "232d881df29f8a14b73b08bf862739089b194e65",
      "parents": [
        "13df29f69749a61b5209d52b71fcbf7300e5d6fb"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Tue Oct 03 16:18:35 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:55 2006 -0500"
      },
      "message": "[PATCH] 2.6.18: sb1250-mac: Phylib IRQ handling fixes\n\n This patch fixes a couple of problems discovered with interrupt handling\nin the phylib core, namely:\n\n1. The driver uses timer and workqueue calls, but does not include\n   \u003clinux/timer.h\u003e nor \u003clinux/workqueue.h\u003e.\n\n2. The driver uses schedule_work() for handling interrupts, but does not\n   make sure any pending work scheduled thus has been completed before\n   driver\u0027s structures get freed from memory.  This is especially\n   important as interrupts may keep arriving if the line is shared with\n   another PHY.\n\n   The solution is to ignore phy_interrupt() calls if the reported device\n   has already been halted and calling flush_scheduled_work() from\n   phy_stop_interrupts() (but guarded with current_is_keventd() in case\n   the function has been called through keventd from the MAC device\u0027s\n   close call to avoid a deadlock on the netlink lock).\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\n\npatch-mips-2.6.18-20060920-phy-irq-16\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c4b41c9f077392803cd548000f3a2312dcd4a122",
      "tree": "39142d866f9a910bdb6303799b8b468d1c4d91b8",
      "parents": [
        "116b23b0ed36f8d5b56d16ac50266fce8de904c1"
      ],
      "author": {
        "name": "Maciej W. Rozycki",
        "email": "macro@linux-mips.org",
        "time": "Tue Oct 03 16:18:13 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sat Dec 02 00:11:54 2006 -0500"
      },
      "message": "[PATCH] 2.6.18: sb1250-mac: Broadcom PHY support\n\n This patch adds support for interrupt-driven operation of the Broadcom\nGigabit Ethernet PHYs.  I have included device IDs for the parts used on\nBroadcom SiByte evaluation boards; more can be added as a need arises.\nThey are apparently generally software-compatible with one another.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\n\npatch-mips-2.6.18-20060920-broadcom-phy-15\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "116b23b0ed36f8d5b56d16ac50266fce8de904c1",
      "tree": "81f7c80bc2e691c327fe7572a4f9b517e47bb101",
      "parents": [
        "b6ef977b608b01e0f338afd9445cab5436c61e00",
        "9e1402ab89623f08c8dc06ec395e3214e1ec7848"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 20:55:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 20:55:21 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:\n  [PATCH] Fix an offset error when reading the CS89x0 ADD_PORT register\n  [PATCH] spidernet: poor network performance\n  [PATCH] Spidernet: remove ETH_ZLEN check in earlier patch\n  [PATCH] bonding: fix an oops when slave device does not provide get_stats\n  [PATCH] drivers/net: SAA9730: Fix build error\n  Revert \"[PATCH] zd1211rw: Removed unneeded packed attributes\"\n  [PATCH] zd1211rw: Fix of a locking bug\n  [PATCH] softmac: remove netif_tx_disable when scanning\n  [PATCH] ieee80211: Fix kernel panic when QoS is enabled\n"
    },
    {
      "commit": "b6ef977b608b01e0f338afd9445cab5436c61e00",
      "tree": "5af86a7d3e222ff55292655b06601fa5798c0564",
      "parents": [
        "9ba5aa3126873a9c29999b78de20a52c5f87d389",
        "bdbf77d6707a52bdeff223d0a60df12d086d21d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:47:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:47:26 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog\n\n* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:\n  [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 4\n  [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 3\n  [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 2\n  [WATCHDOG] MIPS RM9000 on-chip watchdog device - patch 1\n  [WATCHDOG] MIPS RM9000 on-chip watchdog device\n  [WATCHDOG] Add iTCO vendor specific support\n  [WATCHDOG] sc1200wdt.c pnp unregister fix.\n  [WATCHDOG] config.h removal\n  [WATCHDOG] NS pc87413-wdt Watchdog driver - fixes\n  [WATCHDOG] NS pc87413-wdt Watchdog driver v1.1\n  [WATCHDOG] NS pc87413-wdt Watchdog driver\n"
    },
    {
      "commit": "9ba5aa3126873a9c29999b78de20a52c5f87d389",
      "tree": "5ee7cc2c3465c3ef557f6f4e35e6c7cb67ece286",
      "parents": [
        "c3e59d1e891f6140a346de2b8547e25133c716b0",
        "a17259a726c4c9806dc99bda5e904727de76b694"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:46:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:46:22 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  [PATCH] libata: add missing sht-\u003eslave_destroy\n  [PATCH] ahci: ignore PORT_IRQ_IF_ERR on JMB controllers\n"
    },
    {
      "commit": "5f56bbdf1e35d41b4b3d4c92bdb3e70c63877e4d",
      "tree": "90d2606b1a12b2a01f8527c7daedada650fea854",
      "parents": [
        "9641219825a54249d77d7aa1afa7d874a05c7f90",
        "f469b2626f48829c06e40ac799c1edf62b12048e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:43:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:43:06 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (25 commits)\n  IB/ucm: Fix deadlock in cleanup\n  IB/cm: Fix automatic path migration support\n  IPoIB: Fix skb leak when freeing neighbour\n  IB/srp: Fix memory leak on reconnect\n  RDMA/addr: list_move() cleanups\n  RDMA/addr: Fix some cancellation problems in process_req()\n  RDMA/amso1100: Prevent deadlock in destroy QP\n  IB/mthca: Fix initial SRQ logsize for mem-free HCAs\n  IB/ehca: Use WQE offset instead of WQE addr for pending work reqs\n  RDMA/iwcm: Fix comment for iwcm_deref_id() to match code\n  RDMA/iwcm: Remove unnecessary function argument\n  RDMA/iwcm: Remove unnecessary initializations\n  RDMA/iwcm: Fix memory leak\n  RDMA/iwcm: Fix memory corruption bug in cm_work_handler()\n  IB: Convert kmem_cache_t -\u003e struct kmem_cache\n  IB/ipath: Fix typo in pma_counter_select subscript\n  RDMA/amso1100: Fix section mismatches\n  IB/mthca: Fix section mismatches\n  IB/srp: Increase supported CDB size\n  RDMA/cm: Remove setting local write as part of QP access flags\n  ...\n"
    },
    {
      "commit": "9641219825a54249d77d7aa1afa7d874a05c7f90",
      "tree": "94dae67a8804a070e2597b931d1e3335f08389fc",
      "parents": [
        "72a73a69f6a79266b8b4b18f796907b73a5c01e3",
        "94fcda1f8ab5e0cacc381c5ca1cc9aa6ad523576"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:58 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (103 commits)\n  usbcore: remove unused argument in autosuspend\n  USB: keep count of unsuspended children\n  USB hub: simplify remote-wakeup handling\n  USB: struct usb_device: change flag to bitflag\n  OHCI: make autostop conditional on CONFIG_PM\n  USB: Add autosuspend support to the hub driver\n  EHCI: Fix root-hub and port suspend/resume problems\n  USB: create a new thread for every USB device found during the probe sequence\n  USB: add driver for the USB debug devices\n  USB: added dynamic major number for USB endpoints\n  USB: pegasus error path not resetting task\u0027s state\n  USB: endianness fix for asix.c\n  USB: build the appledisplay driver\n  USB serial: replace kmalloc+memset with kzalloc\n  USB: hid-core: canonical defines for Apple USB device IDs\n  USB: idmouse cleanup\n  USB: make drivers/usb/core/driver.c:usb_device_match() static\n  USB: lh7a40x_udc remove double declaration\n  USB: pxa2xx_udc recognizes ixp425 rev b0 chip\n  usbtouchscreen: add support for DMC TSC-10/25 devices\n  ...\n"
    },
    {
      "commit": "72a73a69f6a79266b8b4b18f796907b73a5c01e3",
      "tree": "7684193f3c7f21b0ca14c430b8ead75b2c2025eb",
      "parents": [
        "4549df891a31b9a05b7d183106c09049b79327be",
        "2b290da053608692ea206507d993b70c39d2cdea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:27 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (28 commits)\n  PCI: make arch/i386/pci/common.c:pci_bf_sort static\n  PCI: ibmphp_pci.c: fix NULL dereference\n  pciehp: remove unnecessary pci_disable_msi\n  pciehp: remove unnecessary free_irq\n  PCI: rpaphp: change device tree examination\n  PCI: Change memory allocation for acpiphp slots\n  i2c-i801: SMBus patch for Intel ICH9\n  PCI: irq: irq and pci_ids patch for Intel ICH9\n  PCI: pci_{enable,disable}_device() nestable ports\n  PCI: switch pci_{enable,disable}_device() to be nestable\n  PCI: arch/i386/kernel/pci-dma.c: ioremap balanced with iounmap\n  pci/i386: style cleanups\n  PCI: Block on access to temporarily unavailable pci device\n  pci: fix __pci_register_driver error handling\n  pci: clear osc support flags if no _OSC method\n  acpiphp: fix missing acpiphp_glue_exit()\n  acpiphp: fix use of list_for_each macro\n  Altix: Initial ACPI support - ROM shadowing.\n  Altix: SN ACPI hotplug support.\n  Altix: Add initial ACPI IO support\n  ...\n"
    },
    {
      "commit": "4549df891a31b9a05b7d183106c09049b79327be",
      "tree": "d4dfd0921f0dd0dba2525fd33c0962b26ba5ff1e",
      "parents": [
        "6b8cc71ab2619a776b02869fd733ac1ead3db4e8",
        "e17e0f51aeea4e59c7e450a1c0f26605b91c1260"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:41:07 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (36 commits)\n  Driver core: show drivers in /sys/module/\n  Documentation/driver-model/platform.txt update/rewrite\n  Driver core: platform_driver_probe(), can save codespace\n  driver core: Use klist_remove() in device_move()\n  driver core: Introduce device_move(): move a device to a new parent.\n  Driver core: make drivers/base/core.c:setup_parent() static\n  driver core: Introduce device_find_child().\n  sysfs: sysfs_write_file() writes zero terminated data\n  cpu topology: consider sysfs_create_group return value\n  Driver core: Call platform_notify_remove later\n  ACPI: Change ACPI to use dev_archdata instead of firmware_data\n  Driver core: add dev_archdata to struct device\n  Driver core: convert sound core to use struct device\n  Driver core: change mem class_devices to be real devices\n  Driver core: convert fb code to use struct device\n  Driver core: convert firmware code to use struct device\n  Driver core: convert mmc code to use struct device\n  Driver core: convert ppdev code to use struct device\n  Driver core: convert PPP code to use struct device\n  Driver core: convert cpuid code to use struct device\n  ...\n"
    },
    {
      "commit": "1399ff54741b3aa0aaf5097b8559fa30277ebe61",
      "tree": "b384aef82007144b067cc171d2a9aa168b50b262",
      "parents": [
        "bb37b94c68e7b37eecea8576039ae9396ca07839",
        "6b44d4e69c6144d0df71ab47ec90d2009237d48f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:38:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 01 16:38:18 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  Fix typos in drivers/isdn/hisax/isdnl2.c\n  Fix typos in doc and comments\n  BUG_ON conversion for fs/aio.c\n  BUG_ON conversion for drivers/mmc/omap.c\n  BUG_ON conversion for drivers/media/video/pwc/pwc-if.c\n  Fix misc .c/.h comment typos\n  Fix misc Kconfig typos\n  Fix typos in /Documentation : Misc\n  Fix typos in /Documentation : \u0027U-Z\u0027\n  Fix typos in /Documentation : \u0027T\u0027\u0027\n  Fix jiffies.h comment\n  tabify MAINTAINERS\n  fix spelling error in include/linux/kernel.h\n  mqueue.h: don\u0027t include linux/types.h\n"
    },
    {
      "commit": "c67334fbdfbba533af767610cf3fde8a49710e62",
      "tree": "c386f3aa4af94bb7d24ddb18b51f90bcb9a4d599",
      "parents": [
        "acf02d23b96efa92e7cff05987122ceeb37dd075"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Thu Nov 16 23:28:47 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:02 2006 -0800"
      },
      "message": "Driver core: platform_driver_probe(), can save codespace\n\nThis defines a new platform_driver_probe() method allowing the driver\u0027s\nprobe() method, and its support code+data, to safely live in __init\nsections for typical system configurations.\n\nMany system-on-chip processors could benefit from this API, to the tune\nof recovering hundreds to thousands of bytes per driver.  That\u0027s memory\nwhich is currently wasted holding code which can never be called after\nsystem startup, yet can not be removed.   It can\u0027t be removed because of\nthe linkage requirement that pointers to init section code (like, ideally,\nprobe support) must not live in other sections (like driver method tables)\nafter those pointers would be invalid.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "acf02d23b96efa92e7cff05987122ceeb37dd075",
      "tree": "70db884d9e55e9737d311110410c6155e793f1b4",
      "parents": [
        "8a82472f86bf693b8e91ed56c9ca4f62fbbdcfa3"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Wed Nov 22 17:49:39 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:02 2006 -0800"
      },
      "message": "driver core: Use klist_remove() in device_move()\n\nAs pointed out by Alan Stern, device_move needs to use klist_remove which waits\nuntil removal is complete.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8a82472f86bf693b8e91ed56c9ca4f62fbbdcfa3",
      "tree": "79d148ee548f4b57e6f5a4a69cf6cdb81e7a1bf2",
      "parents": [
        "af9e0765362151b27372c14d9d6dc417184182d3"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Mon Nov 20 17:07:51 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "driver core: Introduce device_move(): move a device to a new parent.\n\nProvide a function device_move() to move a device to a new parent device. Add\nauxilliary functions kobject_move() and sysfs_move_dir().\nkobject_move() generates a new uevent of type KOBJ_MOVE, containing the\nprevious path (DEVPATH_OLD) in addition to the usual values. For this, a new\ninterface kobject_uevent_env() is created that allows to add further\nenvironmental data to the uevent at the kobject layer.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "af9e0765362151b27372c14d9d6dc417184182d3",
      "tree": "c314b31350c2247382b8f73bd67b058567b3454a",
      "parents": [
        "5ab699810d46011ad2195c5916f3cbc684bfe3ee"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Nov 17 02:19:44 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "Driver core: make drivers/base/core.c:setup_parent() static\n\nThis patch makes the needlessly global setup_parent() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5ab699810d46011ad2195c5916f3cbc684bfe3ee",
      "tree": "991f6d4f502fd7871766b51a94a0e3ab33aadd62",
      "parents": [
        "035ed7a49447bc8e15d4d9316fc6a359b2d94333"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Nov 16 15:42:07 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "driver core: Introduce device_find_child().\n\nIntroduce device_find_child() to match device_for_each_child().\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "06a4bcae1ff2cd5f6f42bd74add85ec785a26343",
      "tree": "666cba3de43b602125df3b143a08d22f4188b13b",
      "parents": [
        "289535334646796fe41f199718e4a731f7411a92"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Nov 08 19:46:09 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "cpu topology: consider sysfs_create_group return value\n\nTake return value of sysfs_create_group() into account.  That function got\ncalled in case of CPU_ONLINE notification.  Since callbacks are not allowed\nto fail on CPU_ONLINE notification do the sysfs group creation on\nCPU_UP_PREPARE notification.\n\nAlso remember if creation succeeded in a bitmask.  So it\u0027s possible to know\nwhether it\u0027s legal to call sysfs_remove_group or not.\n\nIn addition some other minor stuff:\n\n- since CPU_UP_PREPARE might fail add CPU_UP_CANCELED handling as well.\n- use hotcpu_notifier instead of register_hotcpu_notifier.\n- #ifdef code that isn\u0027t needed in the !CONFIG_HOTPLUG_CPU case.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "289535334646796fe41f199718e4a731f7411a92",
      "tree": "7536d19daaf603df4d672ab52ea8ad8dd7f29d63",
      "parents": [
        "465ae641e4a3e5028aa9c85d3843259aa28a22ce"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Nov 08 19:46:14 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "Driver core: Call platform_notify_remove later\n\nMove the call to platform_notify_remove() to after the call to\nbus_remove_device(), where it belongs.  It\u0027s bogus to notify the platform\nof removal while drivers are still attached to the device and possibly\nstill operating since the platform might use this callback to tear down\nsome resources used by the driver (ACPI bits, iommu table, ...)\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "465ae641e4a3e5028aa9c85d3843259aa28a22ce",
      "tree": "a8f20c576d03dc40d67ad8b5ee5f9dec4f114a81",
      "parents": [
        "c6dbaef22a2f78700e242915a13218dd780c89ff"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Sat Nov 11 17:18:42 2006 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:01 2006 -0800"
      },
      "message": "ACPI: Change ACPI to use dev_archdata instead of firmware_data\n\nChange ACPI to use dev_archdata instead of firmware_data\n\nThis patch changes ACPI to use the new dev_archdata on i386, x86_64\nand ia64 (is there any other arch using ACPI ?) to store it\u0027s\nacpi_handle.\n\nIt also removes the firmware_data field from struct device as this\nwas the only user.\n\nOnly build-tested on x86\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ebf644c4623bc3eb57683199cd2b9080028b0f6f",
      "tree": "8d822a5872f419491e6962844382804a5ea40288",
      "parents": [
        "78cde0887930f5d11a56fc51b013f2672fba0e6f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Jul 25 17:13:31 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: change mem class_devices to be real devices\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "78cde0887930f5d11a56fc51b013f2672fba0e6f",
      "tree": "c91d1295dc7385a62f32414f50303e0608d6d1db",
      "parents": [
        "e55c8790d40fdbc6887b4e3e52afefe4b03f1311"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Sep 14 07:30:59 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert fb code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e55c8790d40fdbc6887b4e3e52afefe4b03f1311",
      "tree": "4bcf70b8a5f5f4896c4fc942c8def16581ae1228",
      "parents": [
        "fcaf71fd51f9cfc504455d3e19ec242e4b2073ed"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Sep 14 07:30:59 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert firmware code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "fcaf71fd51f9cfc504455d3e19ec242e4b2073ed",
      "tree": "54b227d3092eff0bbc304cbf6169dcef36816a7f",
      "parents": [
        "04880edae5e1027d61241beb5ac37b520755f2ab"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 12 17:00:10 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert mmc code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "04880edae5e1027d61241beb5ac37b520755f2ab",
      "tree": "dc943e681a78e526f9e7590c67943404398536c6",
      "parents": [
        "9a6a2a5e0b57d25c1bf6eb9b8c958940e156b059"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 12 17:00:10 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert ppdev code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9a6a2a5e0b57d25c1bf6eb9b8c958940e156b059",
      "tree": "05e93e3580dc65d89cbd0659c0f64e25fd9fd6a2",
      "parents": [
        "07accdc18e014cad945013886ee34e09f859f88a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Sep 12 17:00:10 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:52:00 2006 -0800"
      },
      "message": "Driver core: convert PPP code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ac11d0601bbe73c92e31b393eeb1225593788d4c",
      "tree": "01e425a71270dad5d9e2a40ebd165c83fac81b7a",
      "parents": [
        "38ca6c34d385f143027ff40dd271c61adcc9b23c"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 03 13:46:24 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "I2C: convert i2c-dev to use struct device instead of struct class_device\n\nAs class_device is going away eventually...\n\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "38ca6c34d385f143027ff40dd271c61adcc9b23c",
      "tree": "52ea3f801dcd128976d5c3d90cbb713ad35f587d",
      "parents": [
        "01107d343076c34b9e1ce5d073292bd7f3097fda"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 07 22:19:37 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: convert raw device code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "01107d343076c34b9e1ce5d073292bd7f3097fda",
      "tree": "075dcadaff7c124022157c8ee819550cd1023440",
      "parents": [
        "94fbcded4ea0dc14cbfb222a5c68372f150d1476"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 07 22:19:37 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: convert tty core to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nAlso fixes up the isdn drivers that were putting something in the class\ndevice\u0027s directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "94fbcded4ea0dc14cbfb222a5c68372f150d1476",
      "tree": "fcbf2d5f71a9993666a1c8d1883273f8046f8625",
      "parents": [
        "cd15422b9f39155e2d9ea56ae95c6f62aa5df42e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jul 27 16:16:04 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: change misc class_devices to be real devices\n\nThis also ment that some of the misc drivers had to also be fixed\nup as they were assuming the device was a class_device.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cd15422b9f39155e2d9ea56ae95c6f62aa5df42e",
      "tree": "70a1417cb85c0b0153bff87403e41a0305620303",
      "parents": [
        "805952a889c4d0fdab23307c14c5ce9571f81233"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 07 22:19:37 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: convert vc code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "805952a889c4d0fdab23307c14c5ce9571f81233",
      "tree": "debea33f3f7d7856d2e4cfe3a7fa0f86ff3bbed3",
      "parents": [
        "805fab474ed75f9603dbde6fa74a2976868b4bd2"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Aug 07 22:19:37 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "Driver core: convert vt code to use struct device\n\nConverts from using struct \"class_device\" to \"struct device\" making\neverything show up properly in /sys/devices/ with symlinks from the\n/sys/class directory.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "805fab474ed75f9603dbde6fa74a2976868b4bd2",
      "tree": "2dd5e20db707613adf9705bba72b5ff553e17068",
      "parents": [
        "a87cb2ac4a78c590583b52a3ed196adc6c25b6c9"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Sep 14 11:23:28 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "CONFIG_SYSFS_DEPRECATED - class symlinks\n\nTurn off class symlinks CONFIG_SYSFS_DEPRECATED is enabled.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a87cb2ac4a78c590583b52a3ed196adc6c25b6c9",
      "tree": "f854514881e530a6e15ae1ff9e0efdc194dbed4e",
      "parents": [
        "99ef3ef8d5f2f5b5312627127ad63df27c0d0d05"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Sep 14 11:23:28 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "CONFIG_SYSFS_DEPRECATED - PHYSDEV* uevent variables\n\nDisable the PHYSDEV* uevent variables if CONFIG_SYSFS_DEPRECATED is\nenabled.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "99ef3ef8d5f2f5b5312627127ad63df27c0d0d05",
      "tree": "28fd0a0f84fd280bfa7cbcbca68b2818af003ee9",
      "parents": [
        "b9cafc7d5b8af0c71896f60dfcff40c71bd38a9a"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Sep 14 11:23:28 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:59 2006 -0800"
      },
      "message": "CONFIG_SYSFS_DEPRECATED - device symlinks\n\nTurn off device symlinks CONFIG_SYSFS_DEPRECATED is enabled.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b9cafc7d5b8af0c71896f60dfcff40c71bd38a9a",
      "tree": "818da5cabe0236b547d1d1fc3a00e4446d439356",
      "parents": [
        "40fa54226f518a9bc97ed1d711c0016e416e3782"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Sep 14 11:23:28 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "CONFIG_SYSFS_DEPRECATED - bus symlinks\n\nTurn off the bus symlinks if CONFIG_SYSFS_DEPRECATED is enabled\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "40fa54226f518a9bc97ed1d711c0016e416e3782",
      "tree": "fd1a432e23b847e831564e13bb93956b07329b23",
      "parents": [
        "88a22c985e3545c55c9779971007f0f29f912519"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 24 00:37:58 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver core: make old versions of udev work properly\n\nIf CONFIG_SYSFS_DEPRECATED is enabled, old versions of udev will work\nproperly with devices that are associated with a class.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f0ee61a6cecd100301a60d99feb187776533b2a2",
      "tree": "69fe62325427cdec7687e951e680ca9ff3486a3d",
      "parents": [
        "1901fb2604fbcd53201f38725182ea807581159e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 23 10:40:54 2006 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver Core: Move virtual_device_parent() to core.c\n\nIt doesn\u0027t need to be global or in device.h\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1901fb2604fbcd53201f38725182ea807581159e",
      "tree": "f75e83294a9b4b4ba405e7ed39e941095f8729cf",
      "parents": [
        "116af378201ef793424cd10508ccf18b06d8a021"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@novell.com",
        "time": "Sat Oct 07 21:55:55 2006 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver core: fix \"driver\" symlink timing\n\nCreate the \"driver\" link before the child device may be created by\nthe probing logic. This makes it possible for userspace (udev), to\ndetermine the driver property of the parent device, at the time the\nchild device is created.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@novell.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "116af378201ef793424cd10508ccf18b06d8a021",
      "tree": "2de792e7b9d8a122d88241d1ecfbe7bc92b9b8fe",
      "parents": [
        "0215ffb08ce99e2bb59eca114a99499a4d06e704"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Oct 25 13:44:59 2006 +1000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:51:58 2006 -0800"
      },
      "message": "Driver core: add notification of bus events\n\nI finally did as you suggested and added the notifier to the struct\nbus_type itself. There are still problems to be expected is something\nattaches to a bus type where the code can hook in different struct\ndevice sub-classes (which is imho a big bogosity but I won\u0027t even try to\nargue that case now) but it will solve nicely a number of issues I\u0027ve\nhad so far.\n\nThat also means that clients interested in registering for such\nnotifications have to do it before devices are added and after bus types\nare registered. Fortunately, most bus types that matter for the various\nusage scenarios I have in mind are registerd at postcore_initcall time,\nwhich means I have a really nice spot at arch_initcall time to add my\nnotifiers.\n\nThere are 4 notifications provided. Device being added (before hooked to\nthe bus) and removed (failure of previous case or after being unhooked\nfrom the bus), along with driver being bound to a device and about to be\nunbound.\n\nThe usage I have for these are:\n\n - The 2 first ones are used to maintain a struct device_ext that is\nhooked to struct device.firmware_data. This structure contains for now a\npointer to the Open Firmware node related to the device (if any), the\nNUMA node ID (for quick access to it) and the DMA operations pointers \u0026\niommu table instance for DMA to/from this device. For bus types I own\n(like IBM VIO or EBUS), I just maintain that structure directly from the\nbus code when creating the devices. But for bus types managed by generic\ncode like PCI or platform (actually, of_platform which is a variation of\nplatform linked to Open Firmware device-tree), I need this notifier.\n\n - The other two ones have a completely different usage scenario. I have\ncases where multiple devices and their drivers depend on each other. For\nexample, the IBM EMAC network driver needs to attach to a MAL DMA engine\nwhich is a separate device, and a PHY interface which is also a separate\ndevice. They are all of_platform_device\u0027s (well, about to be with my\nupcoming patches) but there is no say in what precise order the core\nwill \"probe\" them and instanciate the various modules. The solution I\nfound for that is to have the drivers for emac to use multithread_probe,\nand wait for a driver to be bound to the target MAL and PHY control\ndevices (the device-tree contains reference to the MAL and PHY interface\nnodes, which I can then match to of_platform_devices). Right now, I\u0027ve\nbeen polling, but with that notifier, I can more cleanly wait (with a\ntimeout of course).\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b0d974e90d6f9fbf3a926defbbc76543cff74426",
      "tree": "02311da0df99efe54718c8a54727980629569161",
      "parents": [
        "9d167dc367f22c07285137370816b83b4be9c697"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Nov 17 02:19:25 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:37:00 2006 -0800"
      },
      "message": "PCI: ibmphp_pci.c: fix NULL dereference\n\nThe correct order is: NULL check before dereference\n\nSpotted by the Coverity checker.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9d167dc367f22c07285137370816b83b4be9c697",
      "tree": "6a0e252c92b88d9082409bd4594a5de4792ffa04",
      "parents": [
        "407f452b05f9e5d019c07077d05238bca1b45c4c"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Mon Nov 13 15:13:09 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:37:00 2006 -0800"
      },
      "message": "pciehp: remove unnecessary pci_disable_msi\n\nThis patch fixes the problem that \"irq XX: nobody cared\" kernel oops\nis reported when pciehp is once rmmoded and insmoded again. The cause\nof this problem is pciehp driver calls pci_disable_msi() at controller\nrelease time, even though it must be done by PCI Express Port Bus\ndriver. This patch removes unnecessary pci_disable_msi() call from\npciehp driver.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "407f452b05f9e5d019c07077d05238bca1b45c4c",
      "tree": "7d24f709bdd28a31f27d7433415d896181a43943",
      "parents": [
        "a57ed79ef1b71f6da44ebeabb41d019d172fb261"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Mon Nov 13 15:13:00 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "pciehp: remove unnecessary free_irq\n\nThis patch fixes the problem that the following error messages is\nreported when pciehp driver is rmmoded.\n\n\tTrying to free already-free IRQ XX\n\nThe cause of this problem is that pciehp driver is doing unknown 2nd\nfree_irq at driver unloading. This patch removes this unknown 2nd\nfree_irq call.\n\nNote: The pciehp driver should be adapted to standard device driver\nmode.\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a57ed79ef1b71f6da44ebeabb41d019d172fb261",
      "tree": "90e0dd7958fdccf37b7f70b359f22695d4fc372e",
      "parents": [
        "ac9e98918776d8fa6dc38bfa6d298a7dbcbac2cb"
      ],
      "author": {
        "name": "John Rose",
        "email": "johnrose@austin.ibm.com",
        "time": "Mon Nov 13 15:12:52 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: rpaphp: change device tree examination\n\nChange the criterion that RPA PCI Hotplug and RPA DLPAR use when\ndetermining the hotplug capabilities of a given device node.  The\n\"device_type\" property is less consistent than \"name\" across PCI nodes\non newer hardware.\n\nSigned-off-by: John Rose \u003cjohnrose@austin.ibm.com\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ac9e98918776d8fa6dc38bfa6d298a7dbcbac2cb",
      "tree": "13f80151fffb5845e8dfc13d9f6d54a81f48daa2",
      "parents": [
        "adbc2a102252994c36102008293b52760613d6c3"
      ],
      "author": {
        "name": "Rolf Eike Beer",
        "email": "eike-hotplug@sf-tec.de",
        "time": "Mon Nov 13 15:12:45 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: Change memory allocation for acpiphp slots\n\nChange memory allocation for acpiphp slots\n\nChange the \"struct slot\" that acpiphp uses for managing it\u0027s slots to\ndirectly contain the memory for the needed struct hotplug_slot_info and\nthe slot\u0027s name. This way we need only two memory allocations per slot\ninstead of four.\n\nWhile we are at it: make_slot_name() is just a wrapper around snprintf()\nknowing the right arguments to call it. Since the function makes just one\nfunction call and is only called from one place I inlined it by hand.\n\nFinally this fixes a possible bug waiting for someone to hit it. There were\ntwo unused local variables in acpiphp_register_hotplug_slot(). gcc did not\nfind them because they were used in memory allocations with sizeof(*var).\nThey had the same types as the target of the allocation, but nevertheless\nthis was just weird.\n\nSigned-off-by: Rolf Eike Beer \u003ceike-hotplug@sf-tec.de\u003e\nAcked-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "adbc2a102252994c36102008293b52760613d6c3",
      "tree": "55a7ffe39575442ccdd7f12d665bc5b3206bcb4a",
      "parents": [
        "3b59d52d8c7925e7a9a396f2e31a66eb060c6c37"
      ],
      "author": {
        "name": "Jason Gaston",
        "email": "jason.d.gaston@intel.com",
        "time": "Wed Nov 22 15:19:12 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "i2c-i801: SMBus patch for Intel ICH9\n\nThis updated patch adds the Intel ICH9 LPC and SMBus Controller DID\u0027s.  Thi\u003d\ns patch relies on the irq ICH9 patch to pci_ids.h.\n\nSigned-off-by: Jason Gaston \u003cjason.d.gaston@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "95ddc5f25590e31843a09357365d5cbc6ec978db",
      "tree": "f562805f0a5c9adc8227e10924594d91d12ac2a5",
      "parents": [
        "bae94d02371c402408a4edfb95e71e88dbd3e973"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed Nov 22 12:40:32 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: pci_{enable,disable}_device() nestable ports\n\nChange drivers/message/i20 pci driver to simply do a nestable\nenable()/disable() instead of checking for it.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "bae94d02371c402408a4edfb95e71e88dbd3e973",
      "tree": "8886acf5950d8f95d5d4d5a9737c462035709914",
      "parents": [
        "039d09a845209122c5193e650ab2d8b3c849ca7c"
      ],
      "author": {
        "name": "Inaky Perez-Gonzalez",
        "email": "inaky@linux.intel.com",
        "time": "Wed Nov 22 12:40:31 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:59 2006 -0800"
      },
      "message": "PCI: switch pci_{enable,disable}_device() to be nestable\n\nChanges the pci_{enable,disable}_device() functions to work in a\nnested basis, so that eg, three calls to enable_device() require three\ncalls to disable_device().\n\nThe reason for this is to simplify PCI drivers for\nmulti-interface/capability devices. These are devices that cram more\nthan one interface in a single function. A relevant example of that is\nthe Wireless [USB] Host Controller Interface (similar to EHCI) [see\nhttp://www.intel.com/technology/comms/wusb/whci.htm]. \n\nIn these kind of devices, multiple interfaces are accessed through a\nsingle bar and IRQ line. For that, the drivers map only the smallest\narea of the bar to access their register banks and use shared IRQ\nhandlers. \n\nHowever, because the order at which those drivers load cannot be known\nahead of time, the sequence in which the calls to pci_enable_device()\nand pci_disable_device() cannot be predicted. Thus:\n\n1. driverA     starts     pci_enable_device()\n2. driverB     starts     pci_enable_device()\n3. driverA     shutdown   pci_disable_device()\n4. driverB     shutdown   pci_disable_device()\n\nbetween steps 3 and 4, driver B would loose access to it\u0027s device,\neven if it didn\u0027t intend to.\n\nBy using this modification, the device won\u0027t be disabled until all the\ncallers to enable() have called disable().\n\nThis is implemented by replacing \u0027struct pci_dev-\u003eis_enabled\u0027 from a\nbitfield to an atomic use count. Each caller to enable increments it,\neach caller to disable decrements it. When the count increments from 0\nto 1, __pci_enable_device() is called to actually enable the\ndevice. When it drops to zero, pci_disable_device() actually does the\ndisabling.\n\nWe keep the backend __pci_enable_device() for pci_default_resume() to\nuse and also change the sysfs method implementation, so that userspace\nenabling/disabling the device doesn\u0027t disable it one time too much.\n\nSigned-off-by: Inaky Perez-Gonzalez \u003cinaky@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7ea7e98fd8d02351c43ef4ab35d70f3aaa26c31d",
      "tree": "cb37b18402c2b82cc227ad6bd1ab3d57cf677ff3",
      "parents": [
        "50bf14b3ff05fb6e10688021b96f95d30a300f8d"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Oct 19 09:41:28 2006 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "PCI: Block on access to temporarily unavailable pci device\n\nThe existing implementation of pci_block_user_cfg_access() was recently\ncriticised for providing out of date information and for returning errors\non write, which applications won\u0027t be expecting.\n\nThis reimplementation uses a global wait queue and a bit per device.\nI\u0027ve open-coded prepare_to_wait() / finish_wait() as I could optimise\nit significantly by knowing that the pci_lock protected us at all points.\n\nIt looked a bit funny to be doing a spin_unlock_irqsave(); schedule(),\nso I used spin_lock_irq() for the _user versions of pci_read_config and\npci_write_config.  Not carrying a flags pointer around made the code\nmuch less nasty.\n\nAttempts to block an already blocked device hit a BUG() and attempts to\nunblock an already unblocked device hit a WARN().  If we need to block\naccess to a device from userspace, it\u0027s because it\u0027s unsafe for even\nanother bit of the kernel to access the device.  An attempt to block\na device for a second time means we\u0027re about to access the device to\nperform some other operation, which could provoke undefined behaviour\nfrom the device.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nAcked-by: Adam Belay \u003cabelay@novell.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "50bf14b3ff05fb6e10688021b96f95d30a300f8d",
      "tree": "0f1ffcaf0180746959ed0dee88c6153bb8ed4744",
      "parents": [
        "0dcb2b7e722f62b886f28b01150860de67d219fa"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Nov 08 19:53:59 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "pci: fix __pci_register_driver error handling\n\n__pci_register_driver() error path forgot to unwind.\ndriver_unregister() needs to be called when pci_create_newid_file() failed.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0dcb2b7e722f62b886f28b01150860de67d219fa",
      "tree": "e3dca7a3f5cd85932b7ca332d50168b25df8e03e",
      "parents": [
        "0a9dee2739fd4385e83c3316e3f3bee641796638"
      ],
      "author": {
        "name": "Kristen Carlson Accardi",
        "email": "kristen.c.accardi@intel.com",
        "time": "Mon Oct 30 13:08:12 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "pci: clear osc support flags if no _OSC method\n\nSo it looks like pci aer code will call pci_osc_support_set to tell the\nfirmware about  OSC_EXT_PCI_CONFIG_SUPPORT flag.  that causes\nctrlset_buf[OSC_SUPPORT_TYPE] to evaluate to true when pciehp calls\npci_osc_control_set() is called (to attempt to use OSC to gain native\npcie control from firmware), regardless of whether or not _OSC was\nactually successfully executed.  That causes this section of code:\n if (ctrlset_buf[OSC_SUPPORT_TYPE] \u0026\u0026\n                ((global_ctrlsets \u0026 ctrlset) !\u003d ctrlset)) {\n                return AE_SUPPORT;\n        }\nto be hit.\n\nThis patch will reset the OSC_SUPPORT_TYPE field if _OSC fails, and then\nwould allow pciehp to go ahead and try to run _OSC again.\n\nSigned-off-by:  Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0a9dee2739fd4385e83c3316e3f3bee641796638",
      "tree": "0939f843f1881745ded480b4fa1ae9dec72350cc",
      "parents": [
        "467c442f092e22acf86a3b4ad4863d097d7257da"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Oct 30 13:08:04 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "acpiphp: fix missing acpiphp_glue_exit()\n\nacpiphp_glue_exit() needs to be called to unwind when no slots found.\n(It fixes data corruption when reloading acpiphp driver with no such devices)\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "467c442f092e22acf86a3b4ad4863d097d7257da",
      "tree": "27741551b8ca054e2c2f053830c7fac65692609b",
      "parents": [
        "a2302c68d923537436b1114aa207787c1a31bd50"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Oct 30 13:07:58 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "acpiphp: fix use of list_for_each macro\n\nThis patch fixes invalid usage of list_for_each()\n\nlist_for_each (node, \u0026bridge_list) {\n\tbridge \u003d (struct acpiphp_bridge *)node;\n\t...\n}\n\nThis code works while the member of list node is located at the\nhead of struct acpiphp_bridge.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "a2302c68d923537436b1114aa207787c1a31bd50",
      "tree": "bf0407f2176a32ec79d2b7ab82e1fc9e54308fd2",
      "parents": [
        "9f581f162e2b304be25dee49bf3945d4ed65dfb6"
      ],
      "author": {
        "name": "John Keller",
        "email": "jpk@sgi.com",
        "time": "Wed Oct 04 16:49:52 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "Altix: Initial ACPI support - ROM shadowing.\n\nSupport a shadowed ROM when running with an ACPI capable PROM.\n\nDefine a new dev.resource flag IORESOURCE_ROM_BIOS_COPY to\ndescribe the case of a BIOS shadowed ROM, which can then\nbe used to avoid pci_map_rom() making an unneeded call to\npci_enable_rom().\n\n\nSigned-off-by: John Keller \u003cjpk@sgi.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "9f581f162e2b304be25dee49bf3945d4ed65dfb6",
      "tree": "a8096fdb89db187a01a2dacc4783a50728058e46",
      "parents": [
        "8ea6091f500162e97687d7acf925f84202066b8d"
      ],
      "author": {
        "name": "John Keller",
        "email": "jpk@sgi.com",
        "time": "Wed Oct 04 16:49:35 2006 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "Altix: SN ACPI hotplug support.\n\nA few minor changes to the way slot/device fixup is done.\n\nNo need to be calling sn_pci_controller_fixup(), as\na root bus cannot be hotplugged.\n\nSigned-off-by: John Keller \u003cjpk@sgi.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "edb2d97eb57b7a21c9256260562de6a65dda86cc",
      "tree": "c07b98d0e14256e6a91709c39e55074d5ffcc05e",
      "parents": [
        "ebf5a24829def5d066922ceebde61dd57fdc6b1e"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Oct 10 08:01:21 2006 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:57 2006 -0800"
      },
      "message": "PCI: Replace HAVE_ARCH_PCI_MWI with PCI_DISABLE_MWI\n\npSeries is the only architecture left using HAVE_ARCH_PCI_MWI and it\u0027s\nreally inappropriate for its needs.  It really wants to disable MWI\naltogether.  So here are a pair of stub implementations for pci_set_mwi\nand pci_clear_mwi.\n\nAlso rename pci_generic_prep_mwi to pci_set_cacheline_size since that\nbetter reflects what it does.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ebf5a24829def5d066922ceebde61dd57fdc6b1e",
      "tree": "5df978f750d554f2fd2cdd6f5694be943fd80e9f",
      "parents": [
        "3efe2d84c8d909567c7976a7106114127b8c3470"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Oct 10 08:01:20 2006 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:57 2006 -0800"
      },
      "message": "PCI: Use pci_generic_prep_mwi on sparc64\n\nThe setting of the CACHE_LINE_SIZE register in sparc64\u0027s pci\ninitialisation code isn\u0027t quite adequate as the device may have\nincompatible requirements.  The generic code tests for this, so switch\nsparc64 over to using it.\n\nSince sparc64 has different L1 cache line size and PCI cache line size,\nit would need to override the generic code like i386 and ia64 do.  We\nknow what the cache line size is at compile time though, so introduce a\nnew optional constant PCI_CACHE_LINE_BYTES.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: David Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "368c73d4f689dae0807d0a2aa74c61fd2b9b075f",
      "tree": "4887ca05d1c02521d6194f88970f7c23d8aeb4ba",
      "parents": [
        "cc692a5f1e9816671b77da77c6d6c463156ba1c7"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Oct 04 00:41:26 2006 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:56 2006 -0800"
      },
      "message": "PCI: quirks: fix the festering mess that claims to handle IDE quirks\n\nThe number of permutations of crap we do is amazing and almost all of it\nhas the wrong effect in 2.6.\n\nAt the heart of this is the PCI SFF magic which says that compatibility\nmode PCI IDE controllers use ISA IRQ routing and hard coded addresses\nnot the BAR values. The old quirks variously clears them, sets them,\nadjusts them and then IDE ignores the result.\n\nIn order to drive all this garbage out and to do it portably we need to\nhandle the SFF rules directly and properly. Because we know the device\nBAR 0-3 are not used in compatibility mode we load them with the values\nthat are implied (and indeed which many controllers actually\nthoughtfully put there in this mode anyway).\n\nThis removes special cases in the IDE layer and libata which now knows\nthat bar 0/1/2/3 always contain the correct address. It means our\nresource allocation map is accurate from boot, not \"mostly accurate\"\nafter ide is loaded, and it shoots lots of code. There is also lots more\ncode and magic constant knowledge to shoot once this is in and settled.\n\nBeen in my test tree for a while both with drivers/ide and with libata.\nWants some -mm shakedown in case I\u0027ve missed something dumb or there are\ncorner cases lurking.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    }
  ],
  "next": "cc692a5f1e9816671b77da77c6d6c463156ba1c7"
}
