)]}'
{
  "log": [
    {
      "commit": "99bb214b1b652c475bb3d79cede47ecb76b758fa",
      "tree": "e9e540c07496b8388c03ea8bf279a71089353200",
      "parents": [
        "8901cbb45e2a6657adf0e6eea4276ef452dee011"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:42:13 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:54:04 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : release diagnotic buffers prior host reset\n\nDiagnostic buffer support is already there in the driver.  This support allows\napplications to pull ring buffers from controller firmware for debugging\nfirmware related issues.\n\nWhat this patch does is sends reqeust to firmware to release the buffers prior\nto host reset.   This will allow what ever debug info is there prior to reset\nto be dma\u0027d to host memory. With out this fix, some of the debug data would\nbeen lost.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "8901cbb45e2a6657adf0e6eea4276ef452dee011",
      "tree": "39373e85c4019f1916b12dc477b851aa1f8a4db2",
      "parents": [
        "f0f9cc1fb8a21f3ff90900505fc82a43d29d0975"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:41:32 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:54:02 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : Broadcast Primative AEN bug fix\n\nBug fix in the broadcast primative async event code where the driver would\nstop sending tm queries after the first queury was completed. This was due\ndriver not reseting the tm_cmds.status field back to MPT2_CMD_NOT_USED after\ncompleting a task management request.\n\nAn addtional fix adding sanity check to insure sas_device-\u003estarget set to NULL.\nDuring multipath testing fail over/fail back, the mid layer was holding onto\nsdev longer than the fail back period, thus starget was getting set to NULL\nfor device being added.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f0f9cc1fb8a21f3ff90900505fc82a43d29d0975",
      "tree": "c1126cc4206a9e98c0b19cfd5bed7eaa9e92ed67",
      "parents": [
        "e5f9bb198aa47d06553b66cc5f24ded49ed0b70d"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:40:48 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:54:00 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : Identify Dell series-7 adapters at driver load time\n\nThe Dell branding along with the VID, DID, SSVID, SSDID following the LSI\nbranding that contains the card firmware/chip/bios versions.  If the SSDID\nis not known but it is a Dell HBA, the driver will print the SSDID instead\nof the Dell branding string.  Nothing will be printed for non Dell HBAs\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e5f9bb198aa47d06553b66cc5f24ded49ed0b70d",
      "tree": "eb025a78c6acebf044ac144fbda27553fe27a572",
      "parents": [
        "77bdd9ee1e1d94fa853c354dcde881ddc5d277a5"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:40:01 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:53:58 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : driver name needs to be in the MPT2IOCINFO ioctl\n\nThe driver name needs to be at the beginining of the driver_version string in\nMPT2IOCINFO ioctl.  This is the same behaviour is there already in the mptsas\ndriver.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "77bdd9ee1e1d94fa853c354dcde881ddc5d277a5",
      "tree": "627538cf1cf7e1530f58a48dd0bd2fb36371a1a4",
      "parents": [
        "0d04df9b4a83c50ebe2143f20c2d5469c83ba314"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:39:24 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:53:57 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : running out of message frames\n\nThe driver is not freeing message frame when returning failure from\n_ctl_do_task_abort.   If you call this function 500 times when its unable\nto find an active task mid, you end up with no message frames.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0d04df9b4a83c50ebe2143f20c2d5469c83ba314",
      "tree": "80ebe645b66fcad6ec87ebe6baff037836dc81ad",
      "parents": [
        "03ea1115506c53b46cec2177deb189d186bb80dd"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:38:43 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:53:56 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : fix oops when firmware sends large sense buffer size\n\nThere is a bug in firmware where the reply message frame says there is a\n16kb sense buffer, when in reality its only 20 bytes.  This fix insures\nthe memcpy action doesn\u0027t corrupte the memory beyond the 90 bytes allocated in\nthe scsi command for sense buffer.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "03ea1115506c53b46cec2177deb189d186bb80dd",
      "tree": "69218847c35e9b54487a67fa9524d4d9e52f263c",
      "parents": [
        "fd01825c70006638dee16f48c810c20c54f6cd15"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:37:57 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:53:53 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : the sanity check in base_interrupt needs to be on dword boundary\n\nThe poison sanity check on the reply_post_free register needs to be by 32bit,\nnot 64bit. The poison check is there because its possible that the driver read\nthe 1st 32bit before the 2nd 32bit has been written to by firmware.  In other\nwords, this handles race between driver reading the 64 bit register, and it\nbeing dma\u0027d across pci memory from controller firmware as two 32bit pci writes.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "fd01825c70006638dee16f48c810c20c54f6cd15",
      "tree": "036bbcc52f298494a8298bb169aa6d74a8eec7a3",
      "parents": [
        "8f76d151b010980d137bfdc736d1d8f64b489165"
      ],
      "author": {
        "name": "Eric Moore",
        "email": "eric.moore@lsi.com",
        "time": "Tue Apr 21 15:37:20 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:53:46 2009 -0500"
      },
      "message": "[SCSI] mpt2sas : unique ioctl magic number\n\nThe current magic number is shared with mptsas driver. This to be unique to\nfix issues with register_ioctls32_conversion in older kernels.  We are making\nthis change across all versions of the sas2.0 drivers.\n\nSigned-off-by: Eric Moore \u003ceric.moore@lsi.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "8f76d151b010980d137bfdc736d1d8f64b489165",
      "tree": "b8e1f221b37f091eea027032d81a2ac2aea33ab9",
      "parents": [
        "dd406ef8950e76b17d74c5764a1e3d3a87d4a855"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Tue Apr 21 16:43:27 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:36:07 2009 -0500"
      },
      "message": "[SCSI] fix sign extension with 1.5TB usb-storage LBD\u003dy\n\nShifting an unsigned char implicitly casts it to a signed int.  This\ncaused \u0027lba\u0027 to sign-extend and Linux would then try READ CAPACITY 16\nwhich was not supported by at least one drive.  Using the\nget_unaligned_be*() helpers keeps us from having to worry about how the\nextension might occur.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nReviewed-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "dd406ef8950e76b17d74c5764a1e3d3a87d4a855",
      "tree": "a6e408fba66d0e1832fa1d135da5809fba1b386c",
      "parents": [
        "6401bdcad536cc00589c38e7e1c140d3acc00087"
      ],
      "author": {
        "name": "Brian King",
        "email": "brking@linux.vnet.ibm.com",
        "time": "Wed Apr 22 08:58:02 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:32:13 2009 -0500"
      },
      "message": "[SCSI] ipr: Fix sleeping function called with interrupts disabled\n\nThe ata_sas_slave_configure was changed such that it now allocates\nsome memory for a drain buffer for ATAPI devices. Fixup the ipr\ndriver such that we no longer make this call with interrupts disabled.\n\nSigned-off-by: Brian King \u003cbrking@linux.vnet.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6401bdcad536cc00589c38e7e1c140d3acc00087",
      "tree": "0565bb64ccefd80cc41adda0224e0a4fbd1033c4",
      "parents": [
        "a29e7646f42a325a7f6cce34adbeb52e8db15566"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Apr 21 16:27:46 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:35 2009 -0500"
      },
      "message": "[SCSI] fcoe: fip: add multicast filter to receive FIP advertisements.\n\nThe FCoE forwarder (FCF) would be selected, but then would soon time\nout after three advertisements were missed.  This would be 24 seconds\nby default, or 3 times the keep-alive interval configured on the switch.\n\nThe cause was that the multicast address for all FIP E-nodes\nwas never added.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a29e7646f42a325a7f6cce34adbeb52e8db15566",
      "tree": "f45244f4f3394815a8991e5a05695f427033f40c",
      "parents": [
        "dd3fd72e692c8af007f70df4433c0cffe8582d8b"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Apr 21 16:27:41 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:31 2009 -0500"
      },
      "message": "[SCSI] libfc: Fix compilation warnings with allmodconfig\n\nWhen building with a .config generated from \u0027make allmodconfig\u0027\nsome build warnings are generated. This patch corrects the warnings,\nadds a FC_FID_NONE (\u003d 0) enumeration for FC-IDs and cleans up one\nvariable naming to meet our variable naming conventions. For example,\nfc_lport\u0027s should be named \"lport,\" not \"lp.\"\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "dd3fd72e692c8af007f70df4433c0cffe8582d8b",
      "tree": "fe7582e72ab01a7a54cdd6e44d88f6185c9a1b05",
      "parents": [
        "fc224a5bc949aa30df572e990201c8f95767658f"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Apr 21 16:27:36 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:28 2009 -0500"
      },
      "message": "[SCSI] fcoe: fix spelling typos and bad comments\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "fc224a5bc949aa30df572e990201c8f95767658f",
      "tree": "a94228853c2f8e57b0036449743b8ab04e7a125a",
      "parents": [
        "3caf02ee280a171074476d346d01dc0f5e05b22c"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Apr 21 16:27:30 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:25 2009 -0500"
      },
      "message": "[SCSI] fcoe: don\u0027t export functions that are internal to fcoe\n\nThese probably never should have been exported.\nIf they were needed outside of the fcoe module, they\nwould have been moved to libfcoe.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3caf02ee280a171074476d346d01dc0f5e05b22c",
      "tree": "c63789fa9caaaac588143dcf4c255bc88fc1a54c",
      "parents": [
        "55c7a60cf0c9113cb52d2b87abb120e951bdb332"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Tue Apr 21 16:27:25 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:23 2009 -0500"
      },
      "message": "[SCSI] fcoe: kfree() -\u003e kfree_skb()\n\nsk_buff pointers should use kfree_skb() instead of vanilla kfree().\n\nFound by smatch (http://repo.or.cz/w/smatch.git).\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "55c7a60cf0c9113cb52d2b87abb120e951bdb332",
      "tree": "306ef996134a82268ce794004aad0fe1175c462a",
      "parents": [
        "bbf156697a6332f9074e2b275a9157d99a431398"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:27:19 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:03 2009 -0500"
      },
      "message": "[SCSI] libfc: whenever queueing delete ev for rport, set state to NONE\n\nWhen a delete event is queued for an rport, set state to NONE so that no\nother processing is done on the rport as it is being removed.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "bbf156697a6332f9074e2b275a9157d99a431398",
      "tree": "13928d3cf46a7029a3e764c8767d8c6a31dd2349",
      "parents": [
        "a0fd2e49ec75bf74d3d202df51dfe65ad4c32605"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:27:14 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:01 2009 -0500"
      },
      "message": "[SCSI] libfc: Change state to NONE in fc_lport_destroy\n\nAfter lport_destroy, the local port should not be used again. Transition\nto state NONE, any incoming frames or link up should not transition out\nof this state since we are deleting exchange table and cleaning up the\nlocal port. Also, mark link as down.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a0fd2e49ec75bf74d3d202df51dfe65ad4c32605",
      "tree": "5bab1f0d7dc606da8c51722219a8d841bafe42f3",
      "parents": [
        "b4c6f54632ad664a3d9e7f05e4ea0f1803e32755"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:27:09 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:00 2009 -0500"
      },
      "message": "[SCSI] libfc: During fabric logoff, flush the rport Q after logging off dns port\n\nWe want to generate the rport queue event (from the logoff)\nbefore flushing the queue otherwise the event may still be\nin the queue when we logoff.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b4c6f54632ad664a3d9e7f05e4ea0f1803e32755",
      "tree": "6d419c4a2cdf1e58ae8044d006c53df9cb856f07",
      "parents": [
        "76f6804e7e7bb836cbdf4a73fe6c5485e4cc04c2"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:27:04 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:18:57 2009 -0500"
      },
      "message": "[SCSI] libfc: Track rogue remote ports\n\nRogue ports are currently not tracked on any list. The only reference\nto them is through any outstanding exchanges pending on the rogue ports.\nIf the module is removed while a retry is set on a rogue port\n(say a Plogi retry for instance), this retry is not cancelled because there\nis no reference to the rogue port in the discovery rports list. Thus the\nlocal port can clean itself up, delete the exchange pool, and then the\nrogue port timeout can fire and try to start up another exchange.\n\nThis patch tracks the rogue ports in a new list disc-\u003erogue_rports. Creating\na new list instead of using the disc-\u003erports list keeps remote port code\nchange to a minimum.\n\n1)  Whenever a rogue port is created, it is immediately added to the\ndisc-\u003erogue_rports list.\n\n2) When the rogues port goes to ready, it is removed from the rogue list\nand the real remote port is added to the disc-\u003erports list\n\n3) The removal of the rogue from the disc-\u003erogue_rports list is done in\nthe context of the fc_rport_work() workQ thread in discovery callback.\n\n4) Real rports are removed from the disc-\u003erports list like before. Lookup\nis done only in the real rports list. This avoids making large changes\nto the remote port code.\n\n5) In fc_disc_stop_rports, the rogues list is traversed in addition to the\nreal list to stop the rogue ports and issue logoffs on them. This way, rogue\nports get cleaned up when the local port goes away.\n\n6) rogue remote ports are not removed from the list right away, but\nremoved late in fc_rport_work() context, multiple threads can find the same\nremote port in the list and call rport_logoff(). Rport_logoff() only\ncontinues with the logoff if port is not in NONE state, thus preventing\nmultiple logoffs and multiple list deletions.\n\n7) Since the rport is removed from the disc list at a later stage\n(in the disc callback), incoming frames can find the rport even if\nrport_logoff() has been called on the rport. When rport_logoff() is called,\nthe rport state is set to NONE, and we are trying to cancel all exchanges\nand retries on that port. While in this state, if an incoming\nPlogi/Prli/Logo or other frames match the rport, we should not reply\nbecause the rport is in the NONE state. Just drop the frame, since the\nrport will be deleted soon in the disc callback (fc_rport_work)\n\n8)  In fc_disc_single(), remove rport lookup and call to fc_disc_del_target.\nfc_disc_single() is called from recv_rscn_req() where rport lookup\nand rport_logoff is already done.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "76f6804e7e7bb836cbdf4a73fe6c5485e4cc04c2",
      "tree": "84a01586a05b430ca327709173a65e53b793ca88",
      "parents": [
        "0d228c0f7f9e3ade147e57682915c55b92448230"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:26:58 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:18:51 2009 -0500"
      },
      "message": "[SCSI] libfc: Do not retry if the new state is not the same as old state\n\nFor instance, if there is a Plogi pending (remote port is in Plogi state),\nand the state changes to say NONE (because the port is being logged off),\nthen when the Plogi resp times out, do not start a retry.\n\nThis patch partially reverts an earlier patch (libfc: check for err when\nrecv and state is incorrect), by moving the state check back to before\nchecking for error. However, if the state does not match, then there is\nan additional check to see if its an error ptr or a real frame before\njumping to err or out respectively.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0d228c0f7f9e3ade147e57682915c55b92448230",
      "tree": "29eb6e1d82a784ebac8daecb656135f8bd4d99bd",
      "parents": [
        "a53922ddcf69f4bd8aa321b1fb30418df7a86c61"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:26:52 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:18:48 2009 -0500"
      },
      "message": "[SCSI] libfc: Hold disc mutex while processing gpn ft resp\n\ngpn_ft_resp processing currently does not hold the discovery lock.\ndisc_done() thus gets called from gpn_ft_resp or from gpn_ft_parse\nwithout the lock held. This then sets disc-\u003epending to zero or calls\ngpn_ft_req() without disc_lock held.\n\n- Hold disc mutex during gpn_ft resp processing\n- In disc_done, release the disc mutex while calling lport callback\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a53922ddcf69f4bd8aa321b1fb30418df7a86c61",
      "tree": "bbb64365c591b680ec0639a0c18ce4e3bbc4676c",
      "parents": [
        "1393109f23f8ad753a60a3e461c6caa96d8524f3"
      ],
      "author": {
        "name": "kxie@chelsio.com",
        "email": "kxie@chelsio.com",
        "time": "Tue Apr 21 15:32:35 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:11:07 2009 -0500"
      },
      "message": "[SCSI] cxgb3i: fix ddp map overrun\n\n(version 2)\n\nFixed a bug in calculating ddp map range when search for free entries:\nit was going beyond the end by one, thus corrupting gl_skb[0].\n\nSigned-off-by: Karen Xie \u003ckxie@chelsio.com\u003e\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "1393109f23f8ad753a60a3e461c6caa96d8524f3",
      "tree": "bc9400d252da0470d0ae9fb210f9afbd5479764d",
      "parents": [
        "dd0af9f94e54efb13ee050ebac11909215ef02c2"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Apr 21 15:32:34 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:10:06 2009 -0500"
      },
      "message": "[SCSI] cxgb3i: fix cpu use abuse during writes\n\nWhen doing a lot (128) of large writes (256K) we can hit the cxgb3_snd_win\ncheck pretty easily. The driver\u0027s xmit thread then takes 100% of the cpu.\n\nThe driver should not be returning -EAGAIN for this problem. It should\nbe returing -ENOBUFS, then when the window is opened again it should\nqueue the xmit thread (it already wakes the xmit thread).\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "dd0af9f94e54efb13ee050ebac11909215ef02c2",
      "tree": "afa6e1ca35b4197221308c14ca80d5da3c691372",
      "parents": [
        "6b5d6c443a9b4fd71b633cef66b5db4de8a85787"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Apr 21 15:32:33 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:09:59 2009 -0500"
      },
      "message": "[SCSI] cxgb3i: fix can_queue and cmd_per_lun initialization\n\ncxgb3i was setting can_queue to only 128 commands, and was\nsetting the can_queue and cmd_per_lun to the same value.\n\nThis sets the can_queue to 1024 commands, and sets the cmd_per_lun\nto a safer default of 32.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6b5d6c443a9b4fd71b633cef66b5db4de8a85787",
      "tree": "6b0ca6eaba58d51d3a0715ba9be40bf5449b40ed",
      "parents": [
        "9a6510eb3f030cedba32664498a610dc6d084d46"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Apr 21 15:32:32 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:09:54 2009 -0500"
      },
      "message": "[SCSI] cxgb3i, iser, iscsi_tcp: set target can queue\n\nSet target can queue limit to the number of preallocated\nsession tasks we have.\n\nThis along with the cxgb3i can_queue patch will fix a throughput\nproblem where it could only queue one LU worth of data at a time.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "9a6510eb3f030cedba32664498a610dc6d084d46",
      "tree": "694b56e08f2a89000a9e312ce4d6f83a50878263",
      "parents": [
        "70932935b61ee3dcc5a419ec4c367feb2ff808e4"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Apr 21 15:32:31 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:09:51 2009 -0500"
      },
      "message": "[SCSI] iscsi_tcp: don\u0027t fire conn error if pdu init fails\n\nIf a command\u0027s scsi cmd pdu setup fails then we can just fail\nthe IO to the scsi layer. If a DATA_OUT for a R2T fails then\nwe will want to drop the session, because it means we got a\nbad request from the target (iscsi protocol error).\n\nThis patch has us propogate the error upwards so libiscsi_tcp\nor libiscsi can decide what the best action is to take. It\nalso fixes a bug where we could try to grab the session lock\nwhile holding it, because if iscsi_tcp drops the session in the\npdu setup callout the session lock is held when setting up the\nscsi cmd pdu.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "70932935b61ee3dcc5a419ec4c367feb2ff808e4",
      "tree": "67e0925b8a44b3e163e4da36ecff299ba9e842bf",
      "parents": [
        "3869bb6e73f5f55ce16b13025726b0bfdf1f4aae"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 17 15:08:15 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:37 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix oops when port disappears\n\nThe zfcp_port might have been removed, while the FC fast_io_fail timer\nis still running and could trigger the terminate_rport_io callback.\nSet the pointer to the zfcp_port to NULL and check accordingly\nbefore using it.\n\nReviewed-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3869bb6e73f5f55ce16b13025726b0bfdf1f4aae",
      "tree": "c811b847952ecc4a5173274a48803f28097e205e",
      "parents": [
        "6ab35c0713daf8cd68f272a4be8dfc02c86bbd3b"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 17 15:08:14 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:36 2009 -0500"
      },
      "message": "[SCSI] zfcp: Reference counting for cfdc requests\n\nBefore dropping the reference count with zfcp_adapter_put, increase it\nwith zfcp_adapter_get when issuing cfdc requests.\n\nReviewed-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6ab35c0713daf8cd68f272a4be8dfc02c86bbd3b",
      "tree": "a7baf0ddc4d7f92f458b10b07e8da5616a5ffdc4",
      "parents": [
        "7001f0c4863230dd1560425fa0f5aad9e21716b8"
      ],
      "author": {
        "name": "Martin Petermann",
        "email": "martin.petermann@de.ibm.com",
        "time": "Fri Apr 17 15:08:13 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:35 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix port reference counting\n\nIf this problem appears zfcp ports cannot be de-queued since it is\nchecked for a zero refcount. The port reference counting is wrong for\nexisting zfcp ports when e.g. an adapter gets on-line again. During\nport scanning the reference counting for existing ports should not be\nchanged.\n\nSigned-off-by: Martin Petermann \u003cmartin.petermann@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "7001f0c4863230dd1560425fa0f5aad9e21716b8",
      "tree": "33bebe1d590076cf78a19dc813f9b271bf8d72bc",
      "parents": [
        "c6936e7f34383db2f5038dfa2f0c168ebc2920e5"
      ],
      "author": {
        "name": "Martin Petermann",
        "email": "martin.petermann@de.ibm.com",
        "time": "Fri Apr 17 15:08:12 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:34 2009 -0500"
      },
      "message": "[SCSI] zfcp: revert previous patch for sbal counting\n\nThe current sbal counting can be wrong if a fsf request is\nwaiting for free sbals and at the same time qdio request queue\nis shutdown and re-opened. Revering a previous patch fixes this\nissue.\n\nSigned-off-by: Martin Petermann \u003cmartin.petermann@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "c6936e7f34383db2f5038dfa2f0c168ebc2920e5",
      "tree": "cbdc7a3ab0707112b6e21b51b25a0f8a8d1c59de",
      "parents": [
        "5b43e719308143ac02e6f4ee24132f8acad99ea7"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 17 15:08:11 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:33 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix abort handler for completions in progress\n\nWhen the abort handler cannot find a pending FSF request, the request\ncompletion could just be running. This means we cannot return SUCCESS,\nsince this would lead to call to scsi_done after exiting the SCSI\nerror handler which is not allowed.\n\nReviewed-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "5b43e719308143ac02e6f4ee24132f8acad99ea7",
      "tree": "34a015635a6527696bc086a86282b32e2ac266da",
      "parents": [
        "f7306bf6150161689aaa445c433699895f446208"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:10 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:32 2009 -0500"
      },
      "message": "[SCSI] zfcp: no port recovery after ADISC request timeout\n\nA remote port remains in error state even if we receive a RSCN\nstating that the connection is re-established. The port recovery\nis not started due to a flag which is not reset.\nThe solution is to clear the flag in question before we trigger a ERP.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f7306bf6150161689aaa445c433699895f446208",
      "tree": "fdf4820a8c2a053ffda1d95bcd5ae43457f8d138",
      "parents": [
        "048225e3f44f07c0f67e9665be0b4f18788de0eb"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 17 15:08:09 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:31 2009 -0500"
      },
      "message": "[SCSI] zfcp: Let actcli handle control file errors\n\nError codes specific to the control file requests are evaluated by the\nactcli tool, so don\u0027t report -ENXIO for those. Generic problems are\nstill checked for outside the command specific handler.\n\nReviewed-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "048225e3f44f07c0f67e9665be0b4f18788de0eb",
      "tree": "c2991262ffd4a2f989cc68d15298b5ab20b2638a",
      "parents": [
        "d81ad31c6cf4e318e6b94c959bd9a56ca440b279"
      ],
      "author": {
        "name": "Martin Petermann",
        "email": "martin@linux.vnet.ibm.com",
        "time": "Fri Apr 17 15:08:08 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:31 2009 -0500"
      },
      "message": "[SCSI] zfcp: remove unit will fail if add unit is not finished\n\nOn some hardware it can take some time to add a unit. If\nsome remove this unit during this process the remove will\nfail.\n\nSigned-off-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d81ad31c6cf4e318e6b94c959bd9a56ca440b279",
      "tree": "ea68fd116c296b57b37268bb698a6243624b97e4",
      "parents": [
        "94ab4b38b2ab35a8ca955f4821c970a0ed7ec9ec"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:07 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:29 2009 -0500"
      },
      "message": "[SCSI] zfcp: no port recovery after storage side error inject\n\nThe remote port remains in error state even if the connection\nis re-established. A wrong precondition check was performed on\nthe port status leading to a cancellation of the port reopen.\nRemove the pre-req check because it\u0027s not required and better\nhandled within the ERP.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "94ab4b38b2ab35a8ca955f4821c970a0ed7ec9ec",
      "tree": "78b0d65b56e48a4753f39d277a13030f6d8b77d9",
      "parents": [
        "828bc1212a685918bbdb5866504b63eea2c241f5"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:06 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:28 2009 -0500"
      },
      "message": "[SCSI] zfcp: avoid false ERP complete due to sema race\n\nThe ERP thread is performing a task before it is executing the\ncorresponding down on the semaphore. The response handler of the\njust started exchange config should wait for the completion by\nperforming a down on this semaphore. Since this semaphore is still\npositive from the ERP enqueue the handler won\u0027t wait and therefore\nthe exchange config will always fail leaving the adapter in error.\nThe problem can be solved by performing the down on the semaphore\nbefore starting an ERP task. This is the logically correct order.\nOnly walk the ERP loop if there is a task to perform.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "828bc1212a685918bbdb5866504b63eea2c241f5",
      "tree": "414f4e64ef934c37d873afb9711074011a6eb03c",
      "parents": [
        "92d5193b467c68e8432d6878980621c787e735af"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:05 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:27 2009 -0500"
      },
      "message": "[SCSI] zfcp: Set WKA-port to offline on adapter deactivation\n\nThe nameserver port might be in state online when the adapter is\nofflined. On adapter reactivation the nameserver port is not\nre-opened due to the PORT_ONLINE status. This results in an\nunsuccessful recovery. In forcing the nameserver port status\nto offline on all adapter offline events this issue is prevented.\n\nWaiting for the reference count to drop to zero in\nzfcp_wka_port_offline is not required, so remove it.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "92d5193b467c68e8432d6878980621c787e735af",
      "tree": "f38286d32216e23adfd4f8a8dc0e8ef152cd4de4",
      "parents": [
        "ada81b748b768eb5b75567fd1db5e87ba5c98bf0"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:04 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:26 2009 -0500"
      },
      "message": "[SCSI] zfcp: Dont block zfcp_wq with scan\n\nWhen running the scsi_scan from the zfcp workqueue and the target\ndevice does not respond, the zfcp workqueue can block until the\nscsi_scan hits a timeout. Move the work to the scsi host workqueue,\nsince this one is also used for the scan from the SCSI midlayer.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ada81b748b768eb5b75567fd1db5e87ba5c98bf0",
      "tree": "6bc538ce5f1b7ba1da6514f68ecabef455f3cdc3",
      "parents": [
        "306b6edcdd7b6cc5fee50d48fc398201fa3df841"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 17 15:08:03 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:25 2009 -0500"
      },
      "message": "[SCSI] zfcp: Dont call zfcp_fsf_req_free on NULL pointer\n\nFix problem that zfcp_fsf_exchange_config_data_sync and\nzfcp_fsf_exchange_config_data_sync could try to call zfcp_fsf_req_free\nwith a NULL pointer.\n\nReviewed-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "306b6edcdd7b6cc5fee50d48fc398201fa3df841",
      "tree": "122230d220f404e30a30e4a822a1beab5d423c07",
      "parents": [
        "135ea137e3c2872448c12d3a8890389fa64990c6"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Fri Apr 17 15:08:02 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:23 2009 -0500"
      },
      "message": "[SCSI] zfcp: Enable auto-port discovery for NPIV.\n\nSince we\u0027re setting the host port type now to FC_PORTTYPE_NPIV\nfor adapters running in NPIV mode we should allow this port type\nfor auto-port scanning as well.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "135ea137e3c2872448c12d3a8890389fa64990c6",
      "tree": "017f0ca49ddf8a0e02d5aeaef1e6e9db924b8495",
      "parents": [
        "b4efdd586bc08cdf5977cad0a90091f44546a930"
      ],
      "author": {
        "name": "Martin Petermann",
        "email": "martin@linux.vnet.ibm.com",
        "time": "Fri Apr 17 15:08:01 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:07:15 2009 -0500"
      },
      "message": "[SCSI] zfcp: Avoid referencing freed memory in req send\n\nAvoid referencing a fsf request after sending it in fcp_fsf_req_send,\nit might have already completed and deallocated.\n\nSigned-off-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b4efdd586bc08cdf5977cad0a90091f44546a930",
      "tree": "f76209d5cdc4c7dfd296a0c8c0ec6c192610600b",
      "parents": [
        "e832b3ca653895d479c872f995d0a31a0b0bdecd"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Apr 09 15:57:10 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:48:10 2009 -0500"
      },
      "message": "[SCSI] fix q-\u003elock not held warning when target is busy\n\nWe cannot call blk_plug_device from scsi_target_queue_ready\nbecause the q lock is not held. And we do not need to call\nit from there because when we return 0, the scsi_request_fn\nnot_ready handling will plug the queue for us if needed.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e832b3ca653895d479c872f995d0a31a0b0bdecd",
      "tree": "2594939baf54de96fcdd10a40c02a5d785f975f6",
      "parents": [
        "a257bf905efd22fd2c055580b0ab2e8e7ed1b6a1"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Mon Apr 06 18:48:17 2009 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:43:19 2009 -0500"
      },
      "message": "[SCSI] lpfc 8.3.1 : Update version to 8.3.1\n\nUpdate driver version to 8.3.1\nAlso update copyright end year for driver.\n\nSigned-off-by: James Smart \u003cJames.Smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a257bf905efd22fd2c055580b0ab2e8e7ed1b6a1",
      "tree": "e0f2ef6b9627d86456c92d56fa2c088c6d6544bf",
      "parents": [
        "3621a710a7dbb2d22a8e95d94bcf0c2d13ef57fc"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Mon Apr 06 18:48:10 2009 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:42:47 2009 -0500"
      },
      "message": "[SCSI] lpfc 8.3.1: misc fixes/changes\n\n8.3.1 Fixes/Changes :\n\n- Fix incorrect byte-swapping on word 4 of IOCB (data length) which\n  caused LUNs to not be discovered on big-endian (e.g. PPC)\n\n- Remove a bad cast of MBslimaddr which loses the __iomem (sparse)\n\n- Make lpfc_debugfs_mask_disc_trc static (sparse)\n\n- Correct misspelled word BlockGuard in lpfc_logmsg.h comment\n\n- Replaced repeated code segment for canceling IOCBs from a list with\n  a function call, lpfc_sli_cancel_iocbs().\n\n- Increased HBQ buffers to support 40KB SSC sequences.\n\n- Added sysfs interface to update speed and topology parameter without\n  link bounce.\n\n- Fixed bug with sysfs fc_host WWNs not being updated after changing\n  the WWNs.\n\n- Check if the active mailbox is NULL in the beginning of the mailbox\n  timeout handler - fixes panic in the mailbox timeout handler while\n  running IO stress test\n\n- Fixed system panic in lpfc_pci_remove_one() due to ndlp indirect\n  reference to phba through vport\n\n- Removed de-reference of scsi device after call to scsi_done() to fix\n  panic in scsi completion path while accessing scsi device after\n  scsi_done is called.\n\n- Fixed \"Nodelist not empty\" message when unloading the driver after\n  target reboot test\n\n- Added LP2105 HBA model description\n\n- Added code to print all 16 words of unrecognized ASYNC events\n\n- Fixed memory leak in vport create + delete loop\n\n- Added support for handling dual error bit from HBA\n\n- Fixed a driver NULL pointer dereference in lpfc_sli_process_sol_iocb\n\n- Fixed a discovery bug with FC switch reboot in lpfc_setup_disc_node\n\n- Take NULL termintator into account when calculating available buffer space\n\nSigned-off-by: James Smart \u003cjames.smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3621a710a7dbb2d22a8e95d94bcf0c2d13ef57fc",
      "tree": "699b4174b8520a69d74a1ddd507f5e8ee9b28444",
      "parents": [
        "e7ee4cc04b058d1eae9c1ac359031301b1798e3f"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Mon Apr 06 18:47:14 2009 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:41:51 2009 -0500"
      },
      "message": "[SCSI] lpfc 8.3.1 : Fix up kernel-doc function comments\n\nSigned-off-by: James Smart \u003cJames.Smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e7ee4cc04b058d1eae9c1ac359031301b1798e3f",
      "tree": "3edc28a8f84a84b9893813e047b805e2915528c5",
      "parents": [
        "96bcc722c47d07b6fd05c9d0cb3ab8ea5574c5b1"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sat Apr 04 00:35:42 2009 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:38:11 2009 -0500"
      },
      "message": "[SCSI] sg: return EFAULT for an invalid user address\n\nblk_rq_unmap_user() returns EFAULT if a program passes an invalid\naddress to kernel (the kernel fails to copy data to user space). sg\nneeds to pass the returned value to user space instead of ignoring\nit. Before the block layer conversion, sg returns EFAULT\nproperly. This restores the old behavior.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Douglas Gilbert \u003cdgilbert@interlog.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "96bcc722c47d07b6fd05c9d0cb3ab8ea5574c5b1",
      "tree": "3b4acbb4edf5ad7cedaa425251fa278c96fb93a5",
      "parents": [
        "ce8a7424d23a36f043d0de8484f888971c831119"
      ],
      "author": {
        "name": "Peter Jones",
        "email": "pjones@redhat.com",
        "time": "Fri Jul 11 16:17:05 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 09:32:30 2009 -0500"
      },
      "message": "[SCSI] sr: report more accurate drive status after closing the tray.\n\nSo, what\u0027s happening here is that the drive is reporting a sense of\n2/4/1 (\"logical unit is becoming ready\") from sr_test_unit_ready(), and\nthen we ask for the media event notification before checking that result\nat all.  The check_media_event_descriptor() call isn\u0027t getting a check\ncondition, but it\u0027s also reporting that the tray is closed and that\nthere\u0027s no media.  In actuality it doesn\u0027t yet know if there\u0027s media or\nnot, but there\u0027s no way to express that in the media event status field.\n\nMy current thought is that if it told us the device isn\u0027t yet ready, we\nshould return that immediately, since there\u0027s nothing that\u0027ll tell us\nany more data than that reliably:\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ce8a7424d23a36f043d0de8484f888971c831119",
      "tree": "63e2a42e118c787e8d79638816552a1d7c03a553",
      "parents": [
        "bbe215c231ac809e42b037345c1fa8e8eb09b00a"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:08 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:39 2009 -0700"
      },
      "message": "sparc: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bbe215c231ac809e42b037345c1fa8e8eb09b00a",
      "tree": "d58f315a1a580a1e1104cbe7fd3c3958254757e4",
      "parents": [
        "2133bb8d8c691c08d47f16d5971ba98f0ac241bf"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:07 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:39 2009 -0700"
      },
      "message": "sh: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2133bb8d8c691c08d47f16d5971ba98f0ac241bf",
      "tree": "252b1376f679da116d45688fb427e0b64322d45a",
      "parents": [
        "e70398458738fd26f96adc95eea8efe908809f08"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:06 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:39 2009 -0700"
      },
      "message": "s390: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e70398458738fd26f96adc95eea8efe908809f08",
      "tree": "b2e7da5ad3a0dce29d9066c2a87d3a66e15d3d34",
      "parents": [
        "9760f8fc60766f8fde0ef5cf7df714c2ce864ab6"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:05 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "powerpc: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9760f8fc60766f8fde0ef5cf7df714c2ce864ab6",
      "tree": "7b1177a47336fd2f68f9331ee47f4444c585dded",
      "parents": [
        "6f335cab0431d5df4995bcd4fd952d4c746d5a86"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:04 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "mn10300: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f335cab0431d5df4995bcd4fd952d4c746d5a86",
      "tree": "fa4bd2c2a79d54b53995c6586cd4c67fb18afbef",
      "parents": [
        "34963696629b6d1e0066a5f2e67993e409c9434b"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:03 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "m68k: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34963696629b6d1e0066a5f2e67993e409c9434b",
      "tree": "e5d0e2fbb74798b28a222d5d424e1b75987e8464",
      "parents": [
        "b6a8d95c95814079ded93c14c4b394015d8b65cd"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:11:02 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "m32r: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6a8d95c95814079ded93c14c4b394015d8b65cd",
      "tree": "d7f1b8ea9df0827047c0a56ed940066cbd0e3259",
      "parents": [
        "92ca52343ca503c1f957bd649df4ef914d5fc1e8"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:59 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "frv: convert frv to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92ca52343ca503c1f957bd649df4ef914d5fc1e8",
      "tree": "7be3eb7914ca79b65fc68a14c9e885b56d462f18",
      "parents": [
        "0ebdcb4d0480d1b8219cf5f9eab0fb5d889af0ad"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:58 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "alpha: convert to use __HEAD and HEAD_TEXT macros.\n\nThis has the consequence of changing the section name use for head\ncode from \".text.head\" to \".head.text\".  Since this commit changes all\nusers in the architecture, this change should be harmless.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ebdcb4d0480d1b8219cf5f9eab0fb5d889af0ad",
      "tree": "0208d6eb248077260467eec3bd8746ab0e8bfd2b",
      "parents": [
        "c80d471a476b6d6fe0bc1fd25293c24c66b7aaaf"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:57 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "xtensa: convert to use __HEAD and HEAD_TEXT macros.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c80d471a476b6d6fe0bc1fd25293c24c66b7aaaf",
      "tree": "e7e6cf35915186c614728dadbd95c5197bff0075",
      "parents": [
        "0c8454f56623505a99463405fd7d5664adfbb094"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:56 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "Add new HEAD_TEXT_SECTION macro.\n\nThis patch is preparation for replacing all uses of \".head.text\" or\n\".text.head\" in the kernel with macros, so that the section name can\nlater be changed without having to touch a lot of the kernel.\n\nSince some linker scripts do more complex things than referencing\nHEAD_TEXT, we add a HEAD_TEXT_SECTION macro that just contains the\nactual name.\n\nI\u0027ve defined HEAD_TEXT_SECTION in a new header,\ninclude/linux/section-names.h, so that this section name only needs to\nappear in one place.  I anticipate creating similar macro structures\nfor a number of other section names.\n\nThe long-term goal here is to be able to change the kernel\u0027s magic\nsection names to those that are compatible with -ffunction-sections\n-fdata-sections.  This requires renaming all magic sections with names\nof the form \".text.foo\".\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0c8454f56623505a99463405fd7d5664adfbb094",
      "tree": "64e594f2846d997213890b59168307d12e676ff0",
      "parents": [
        "4b2b0b9753194cad44d7295c32044b89710efd70"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Apr 25 00:16:06 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 15:31:30 2009 -0700"
      },
      "message": "PM/Hibernate: Fix waiting for image device to appear on resume\n\nCommit c751085943362143f84346d274e0011419c84202 (\"PM/Hibernate: Wait for\nSCSI devices scan to complete during resume\") added a call to\nscsi_complete_async_scans() to software_resume(), so that it waited for\nthe SCSI scanning to complete, but the call was added at a wrong place.\n\nNamely, it should have been added after wait_for_device_probe(), which\nis called only if the image partition hasn\u0027t been specified yet.  Also,\nit\u0027s reasonable to check if the image partition is present and only wait\nfor the device probing and SCSI scanning to complete if it is not the\ncase.\n\nAdditionally, since noresume is checked right at the beginning of\nsoftware_resume() and the function returns immediately if it\u0027s set, it\ndoesn\u0027t make sense to check it once again later.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4b2b0b9753194cad44d7295c32044b89710efd70",
      "tree": "7ff42b7aa3f05bcf61cfdb7abb2c23418b218291",
      "parents": [
        "84baf74bf23bbe9f3deafb5d2f27e2b5dc0bc052"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Apr 23 16:41:18 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:31 2009 -0700"
      },
      "message": "ROMFS: Advance destination buffer pointer when reading from a blockdev\n\nRomFS should advance the destination buffer pointer when reading data from a\nblockdev source (the data may be split over multiple blocks, each requiring its\nown sb_read() call).  Without this, all the data is copied to the beginning of\nthe output buffer.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84baf74bf23bbe9f3deafb5d2f27e2b5dc0bc052",
      "tree": "45af84d051ca760a9f9f24aa3775e5505ccd3627",
      "parents": [
        "a5422a5111811401f7756345e4c237ff06cf6d1e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Apr 23 16:41:13 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:31 2009 -0700"
      },
      "message": "ROMFS: romfs_lookup() shouldn\u0027t be doing a partial name comparison\n\nromfs_lookup() should be using a routine akin to strcmp() on the backing store,\nrather than one akin to strncmp().  If it uses the latter, it\u0027s liable to match\n/bin/shutdown when looking up /bin/sh.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5422a5111811401f7756345e4c237ff06cf6d1e",
      "tree": "4744be4aba038150cd36f8ddcd2cf1e9ae9d8ab5",
      "parents": [
        "91ac033d8377552d3654501a105ab55bf546940e"
      ],
      "author": {
        "name": "Fred Isaman",
        "email": "iisaman@citi.umich.edu",
        "time": "Thu Apr 23 16:40:32 2009 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:31 2009 -0700"
      },
      "message": "lib: find_last_bit.o needed by a module only, move it from lib to obj\n\nCurrently, although find_last_bit is EXPORTed, it is statically linked\nwith the kernel and is referenced only under CONFIG_SMP.\n\nWhen CONFIG_SMP is undefined and find_last_bit is referenced only by\nmodules, linking fails with:\n\n  ERROR: \"find_last_bit\" [fs/nfs/nfs.ko] undefined!\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Fred Isaman \u003ciisaman@citi.umich.edu\u003e\nSigned-off-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "91ac033d8377552d3654501a105ab55bf546940e",
      "tree": "b3757b6b5f2180edb94049971850f76355abaa19",
      "parents": [
        "e5b89542ea18020961882228c26db3ba87f6e608"
      ],
      "author": {
        "name": "Marc Dionne",
        "email": "marc.c.dionne@gmail.com",
        "time": "Thu Apr 23 11:21:55 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:30 2009 -0700"
      },
      "message": "CacheFiles: Fix the documentation to use the correct credential pointer names\n\nAdjust the CacheFiles documentation to use the correct names of the credential\npointers in task_struct.\n\nThe documentation was using names from the old versions of the credentials\npatches.\n\nSigned-off-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5b89542ea18020961882228c26db3ba87f6e608",
      "tree": "d304de3e207ab02d9e02f944f54cebcf31ea2e73",
      "parents": [
        "9f5a691253924fd033a58c6b1fed57bb0a4eccf4"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Thu Apr 23 16:42:59 2009 +0930"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 13:28:30 2009 -0700"
      },
      "message": "virtio-rng: Remove false BUG for spurious callbacks\n\nThe virtio-rng drivers checks for spurious callbacks. Since\ncallbacks can be implemented via shared interrupts (e.g. PCI) this\ncould lead to guest kernel oopses with lots of virtio devices.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f5a691253924fd033a58c6b1fed57bb0a4eccf4",
      "tree": "a30083700699ddfd89b72fa3e42e635e5e6f38c3",
      "parents": [
        "ef54b1bb2e4de212a89a2692a7b2efd70b5fb559",
        "f57f2fe2a39338c47b67fbd564a9d3b7587bcbee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:54:30 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:54:30 2009 -0700"
      },
      "message": "Merge branch \u0027fixes-for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze\n\n* \u0027fixes-for-linus\u0027 of git://git.monstr.eu/linux-2.6-microblaze:\n  microblaze: add parameter to microblaze_read()\n  microblaze: Use CFLAGS_KERNEL instead of CFLAGS\n  microblaze: Add STATE_SAVE_ARG_SPACE for noMMU kernel too\n  microblaze: Do not check use_dcache\n  microblaze: Do not use PVR configuration for broken MB version\n  microblaze: Fix USR1/2 pvr printing message\n  microblaze: iowrite upon timeout\n  microblaze: Correspond CONFIG...PCMP in Makefile/Kconfig\n  microblaze: Remove redundant variable\n  microblaze: Move start_thread to process.c\n  microblaze: Add missing preadv and pwritev syscalls\n  microblaze: Add missing declaration for die and _exception func\n  microblaze: Remove sparse error in traps.c\n  microblaze: Move task_pt_regs up\n  microblaze: Rename kernel_mode to pt_mode in pt_regs\n  microblaze: Remove uncache shadow condition\n  microblaze: Remove while(1) loop from show_regs function\n  microblaze: Remove unneded per cpu SYSCALL_SAVE variable\n"
    },
    {
      "commit": "ef54b1bb2e4de212a89a2692a7b2efd70b5fb559",
      "tree": "41f8a3f0b6bc234efb5151d7b6852babe7fe75a6",
      "parents": [
        "9fe9293d14e8418f29136216f0180f47270a916a",
        "1162cf6bc6c4650943735438e2be0785ea40a3c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:48:17 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:48:17 2009 -0700"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (34 commits)\n  ACPI, i915: Register ACPI video even when not modesetting\n  Revert \"ACPICA: delete check for AML access to port 0x81-83\"\n  I/O port protection: update for windows compatibility.\n  sony-laptop: always try to unblock rfkill on load\n  sony-laptop: fix bogus error message display on resume\n  ACPI: EC: Fix ACPI EC resume non-query interrupt message\n  sony-laptop: SNC input event 38 fix\n  sony-laptop: SNC 127 Initialization Fix\n  sony-laptop: Duplicate SNC 127 Event Fix\n  ACPI: prevent processor.max_cstate\u003d0 boot crash\n  ACPI/hpet: prevent boot hang when hpet\u003dforce used on ICH-4M\n  ACPI: delete obsolete \"bus master activity\" proc field\n  ACPI: idle: mark_tsc_unstable() at init-time, not run-time\n  ACPI: add /sys/firmware/acpi/interrupts/sci_not counter\n  ACPI video: fix an error when the brightness levels on AC and on Battery are same\n  acpi-cpufreq: Do not let get_measured perf depend on internal variable\n  acpi-cpufreq: style-only: add parens to math expression\n  acpi-cpufreq: Cleanup: Use printk_once\n  x86, acpi_cpufreq: Fix the NULL pointer dereference in get_measured_perf\n  thinkpad-acpi: bump up version to 0.23\n  ...\n"
    },
    {
      "commit": "9fe9293d14e8418f29136216f0180f47270a916a",
      "tree": "62e4efbb4833940a6eafd98d950275c5b3f08c66",
      "parents": [
        "a4277bf122e907e4fec509fc0bd9bf5fde30b14e",
        "64f68416e794d59a42ddffdf1c5b7f026a4f23d5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:45:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:45:53 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:\n  m68knommu: update the default config for the ColdFire 5407C3 board\n  m68knommu: update the default config for the ColdFire 5307C3 board\n  m68knommu: update the default config for the ColdFire 5257EVB board\n  m68knommu: update the default config for the ColdFire 5249EVB.\n  m68knommu: add a defconfig for the ColdFire M5272C3 board\n  m68knommu: update the defconfig for the ColdFire 5208evb board\n  m68knommu: fix DMA support for ColdFire\n  m68knommu: remove unused kernel stats offsets\n  m68knommu: fix missing .data.cacheline_aligned section\n  m68knommu: Fixed GPIO pin initialization for CONFIG_M5271 FEC.\n"
    },
    {
      "commit": "a4277bf122e907e4fec509fc0bd9bf5fde30b14e",
      "tree": "b359e8b0f7895acda1d6331332e69ea5b14d5f0d",
      "parents": [
        "6ae85d6db4871d8dbcb5cc0e9056f97f1ca07061",
        "b5451f7b2694b04d9f912f6cf09db1729f291996"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:37:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:37:40 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: Fix potential inode allocation soft lockup in Orlov allocator\n  ext4: Make the extent validity check more paranoid\n  jbd: use SWRITE_SYNC_PLUG when writing synchronous revoke records\n  jbd2: use SWRITE_SYNC_PLUG when writing synchronous revoke records\n  ext4: really print the find_group_flex fallback warning only once\n"
    },
    {
      "commit": "6ae85d6db4871d8dbcb5cc0e9056f97f1ca07061",
      "tree": "d0a6fa2e4fcef36a4c80990a361c0d5fbe091c35",
      "parents": [
        "d72cd3a90e4d6725b62919139e2ab7bd926fa16d",
        "fdd8b079e33d4711527ace19798e9db99a056469"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:41 2009 -0700"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm:\n  [ARM] 5460/1: Orion: reduce namespace pollution\n  [ARM] 5458/1: pcmcia: pxa2xx-sharpsl: check if we do have Scoop config\n  [ARM] 5457/1: mach-imx gpio buildfix\n  [ARM] 5456/1: add sys_preadv and sys_pwritev\n  [ARM] pxa/pcm990: start external GPIOs immediately after built-in ones\n  [ARM] pxa/palm27x: General fix for Palm27x aSoC driver\n  [ARM] pxa/mioa701: use GPIO95 as AC97 reset line\n  [ARM] pxa: merge AC97 platform data structures\n  [ARM] pxa/magician: remove un-necessary #include of pxa-regs.h and hardware.h\n"
    },
    {
      "commit": "d72cd3a90e4d6725b62919139e2ab7bd926fa16d",
      "tree": "771731ecee0ebdd60dcda2173945cff28edc8e71",
      "parents": [
        "ff91fad2db543325d7221c26ff42d7df3c574064",
        "6b35ca0d3d586b8ecb8396821af21186e20afaf0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:06 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:36:06 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:\n  USB: pwc : do not pass stack allocated buffers to USB core.\n  USB: otg: Fix bug on remove path without transceiver\n  USB: correct error handling in cdc-wdm\n  USB: removal of tty-\u003elow_latency hack dating back to the old serial code\n  USB: serial: sierra driver bug fix for composite interface\n  USB: gadget: omap_udc uses platform_driver_probe()\n  USB: ci13xxx_udc: fix build error\n  USB: musb: Prevent multiple includes of musb.h\n  USB: pass mem_flags to dma_alloc_coherent\n  USB: g_file_storage: fix use-after-free bug when closing files\n  USB: ehci-sched.c: EHCI SITD scheduling bugfix\n  USB: fix mos7840 problem with minor numbers\n  USB: mos7840: add new device id\n  USB: musb: fix build when !CONFIG_PM\n  USB: musb: Remove my email address from few musb related drivers\n  USB: Gadget: MIPS CI13xxx UDC bugfixes\n  USB: Unusual Device support for Gold MP3 Player Energy\n  USB: serial: fix lifetime and locking problems\n"
    },
    {
      "commit": "ff91fad2db543325d7221c26ff42d7df3c574064",
      "tree": "81a61647a9c3f98acdae1e93e22d6628f76a4042",
      "parents": [
        "198aa045601d20f39658c892dc626e16993bae78",
        "3a6b42cadc112b01daf0525e5fcd90bb333a5bb3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:32:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:32:44 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:\n  eCryptfs: Larger buffer for encrypted symlink targets\n  eCryptfs: Lock lower directory inode mutex during lookup\n  eCryptfs: Remove ecryptfs_unlink_sigs warnings\n  eCryptfs: Fix data corruption when using ecryptfs_passthrough\n  eCryptfs: Print FNEK sig properly in /proc/mounts\n  eCryptfs: NULL pointer dereference in ecryptfs_send_miscdev()\n  eCryptfs: Copy lower inode attrs before dentry instantiation\n"
    },
    {
      "commit": "198aa045601d20f39658c892dc626e16993bae78",
      "tree": "ef000627fabe4fa3ff1818dc2e591b6417ca1eb6",
      "parents": [
        "58be18c4de37b9277b045c0b5bb123a664dac9ed",
        "adfe7c69891128f5e238a5e6823709b4bb85b340"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:32:23 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:32:23 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:\n  m68k: Update defconfigs for 2.6.30-rc3\n  m68k,m68knommu: Wire up preadv and pwritev\n  scsi: a4000 - Correct driver unregistration in case of failure\n"
    },
    {
      "commit": "58be18c4de37b9277b045c0b5bb123a664dac9ed",
      "tree": "370d55da6958b7b31aeaffc278512fea1111134d",
      "parents": [
        "12bac708e6242b0ccd969519582b2938d78289bb",
        "e655dc8873b2390d92888095af6adad822a8b386"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:28:27 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:28:27 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6:\n  [S390] update default configuration.\n  [S390] omit frame pointers on s390 when possible\n  [S390] Use tape_generic_offline directly.\n  [S390] /proc/stat idle field for idle cpus\n  [S390] appldata: avoid deadlock with appldata_mem\n  [S390] ipl: fix compile breakage\n"
    },
    {
      "commit": "12bac708e6242b0ccd969519582b2938d78289bb",
      "tree": "4cf804bcf1a3afb90044f8b33405ea6713c8731e",
      "parents": [
        "60911731fe7fd4ec4d088fc1a48a56c9fb14103f",
        "d9ba7615bfd8bb06f79c853f9dfff9e93a837941"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:27:02 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:27:02 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:\n  GFS2: Ensure that the inode goal block settings are updated\n  GFS2: Fix bug in block allocation\n  bitops: Add __ffs64 bitop\n"
    },
    {
      "commit": "60911731fe7fd4ec4d088fc1a48a56c9fb14103f",
      "tree": "a4343a10d8cb6195dbda3bc2bc2688e42de70fb4",
      "parents": [
        "d1f53fb90ee631a2cf8f7bdd0e921a338106e4f9",
        "888d256e9c565cb61505bd218eb37c81fe77a325"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:26:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:26:01 2009 -0700"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.30\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.30\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm:\n  KVM: Unregister cpufreq notifier on unload\n  KVM: x86: release time_page on vcpu destruction\n  KVM: Fix overlapping check for memory slots\n  KVM: MMU: disable global page optimization\n  KVM: ia64: fix locking order entering guest\n  KVM: MMU: Fix off-by-one calculating large page count\n"
    },
    {
      "commit": "d1f53fb90ee631a2cf8f7bdd0e921a338106e4f9",
      "tree": "94b0177d06d5c648808b0dec0241b33a51d3d27e",
      "parents": [
        "90c8fce53a48dd22cf09c67c861e3aaad17026ed",
        "b930f964cfe65941c6b1ba61efedfe49da3f6353"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:16:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:16:05 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:\n  MAINTAINERS: update IDE entry\n  palm_bk3710: palm_bk3710_udmatimings[] CodingStyle fixup\n  palm_bk3710: those registers/bitfields don\u0027t exist\n  mediabay: fix build for CONFIG_BLOCK\u003dn\n  ide: Stop disks on reboot for laptop which cuts power\n  ide-cd: fix kernel crash on hppa regression\n  palm_bk3710: UDMA performance fix\n"
    },
    {
      "commit": "90c8fce53a48dd22cf09c67c861e3aaad17026ed",
      "tree": "f01c25071ac92a1554338ddfa6e6c1bcf000fb27",
      "parents": [
        "ec5f5bf80501abfe2da2897cfcde8452b545aacb",
        "248e88247a0e03125a663be69f2656d2e158371e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:15:25 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 08:15:25 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ALSA: hda - Add quirk for Packard Bell RS65\n  [ALSA] intel8x0: another attempt to fix ac97_clock measure routine\n  [ALSA] ac97_codec: increase timeout for analog subsections\n  ALSA: hda - Add quirks for Realtek codecs\n  ALSA: hda - Fix alc662_init_verbs\n  ALSA: keywest: Convert to new-style i2c driver\n  ALSA: AOA: Convert onyx and tas codecs to new-style i2c drivers\n  ALSA: Atiixp: Add SSID for mute_led quirk (unknown HP model)\n  ALSA: us122l: add snd_us122l_free()\n  ASoC: Fix warning in wm9705\n  ASoC: OMAP: Update contact addresses\n  ASoC: pxa-ssp: Don\u0027t use SSCR0_SerClkDiv and SSCR0_SCR\n  ALSA: us122l: Fix signedness in comparisions\n"
    },
    {
      "commit": "ec5f5bf80501abfe2da2897cfcde8452b545aacb",
      "tree": "a2426e9f1b0d288105b6be6fb992a00489f2b204",
      "parents": [
        "79e95eba026944ec3353754f24e316d3aaa209fe"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Apr 22 15:03:15 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:52:08 2009 -0700"
      },
      "message": "radio_si470x: Fix free memory corruption\n\nThe release path for a disconnected device frees the object then unlocks\nthe mutex in the freed object...\n\nFound by Dan Carpenter using Smatch\n\nSigned-off-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "79e95eba026944ec3353754f24e316d3aaa209fe",
      "tree": "d3fe6002a77de0999387ad11a790f5488fae2d65",
      "parents": [
        "67cd724f6d0919072a284f150a5761a160ac5cfa"
      ],
      "author": {
        "name": "Niels de Vos",
        "email": "niels.devos@wincor-nixdorf.com",
        "time": "Wed Apr 22 15:02:44 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:52:08 2009 -0700"
      },
      "message": "serial: remove contact data\n\nRemove my name and emailaddress from note in the source. Wincor Nixdorf\nonly has some ITE-chips on their mainboards, other chips are not\navailable for me for testing.\n\nSigned-off-by: Niels de Vos \u003cniels.devos@wincor-nixdorf.com\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67cd724f6d0919072a284f150a5761a160ac5cfa",
      "tree": "c4db9a6c25a20d2db0020d8aa71eaff4f276f001",
      "parents": [
        "97c68d00dbb2decda4b3dce79ce55df04246a834"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Apr 22 15:02:23 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:52:08 2009 -0700"
      },
      "message": "cafe_nand: Fix warning\n\nWrong types on IRQ handler\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97c68d00dbb2decda4b3dce79ce55df04246a834",
      "tree": "f7c2f3185e4dfb073f6d268b4aa0a4d9a0015ece",
      "parents": [
        "596a5c4e43b08e90c0cd788861f859bf7ed6eddc",
        "f2d1f0ae7851be5ebd9613a80dac139270938809"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:48:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:48:24 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  cfq-iosched: cache prio_tree root in cfqq-\u003ep_root\n  cfq-iosched: fix bug with aliased request and cooperation detection\n  cfq-iosched: clear -\u003eprio_trees[] on cfqd alloc\n  block: fix intermittent dm timeout based oops\n  umem: fix request_queue lock warning\n  block: simplify I/O stat accounting\n  pktcdvd.h should include mempool.h\n  cfq-iosched: use the default seek distance when there aren\u0027t enough seek samples\n  cfq-iosched: make seek_mean converge more quickly\n  block: make blk_abort_queue() ignore non-request based devices\n  block: include empty disks in /proc/diskstats\n  bio: use bio_kmalloc() in copy/map functions\n  bio: fix bio_kmalloc()\n  block: fix queue bounce limit setting\n  block: fix SG_IO vector request data length handling\n  scatterlist: make sure sg_miter_next() doesn\u0027t return 0 sized mappings\n"
    },
    {
      "commit": "596a5c4e43b08e90c0cd788861f859bf7ed6eddc",
      "tree": "923c5e6e642880f7a8a9f7973bf24a1a661f58b0",
      "parents": [
        "418df63c2d94f238ac7e1d1d53be35dd6b7a7252"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Apr 22 12:10:07 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:47:59 2009 -0700"
      },
      "message": "MN10300: Update the ASB2303 defconfig\n\nUpdate the defconfig for the ASB2303 evaluation board.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "418df63c2d94f238ac7e1d1d53be35dd6b7a7252",
      "tree": "d9ab346ae46a45a4bff12fe7dbc615b7469d17a5",
      "parents": [
        "3e241ff0c57cb610301009fe8c3b9da4c6877800"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Wed Apr 22 12:01:49 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:47:59 2009 -0700"
      },
      "message": "Delete slow-work timers properly\n\nSlow-work appears to delete its timer as soon as the first user\nunregisters, even though other users could be active.  At the same time, it\nnever seems to delete slow_work_oom_timer.  Arrange for both to happen in\nthe shutdown path.\n\nSigned-off-by: Jonathan Corbet \u003ccorbet@lwn.net\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e241ff0c57cb610301009fe8c3b9da4c6877800",
      "tree": "9663c4ebd8e431a052675b19585e1cc9471b2ef3",
      "parents": [
        "dc0046c7586da5db7561dd8b8e09b40d29ade5fa",
        "29fe1b481283a1bada994a69f65736db4ae6f35f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:46:51 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:46:51 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (94 commits)\n  netfilter: ctnetlink: fix gcc warning during compilation\n  net/netrom: Fix socket locking\n  netlabel: Always remove the correct address selector\n  ucc_geth.c: Fix upsmr setting in RMII mode\n  8139too: fix HW initial flow\n  af_iucv: Fix race when queuing incoming iucv messages\n  af_iucv: Test additional sk states in iucv_sock_shutdown\n  af_iucv: Reject incoming msgs if RECV_SHUTDOWN is set\n  af_iucv: fix oops in iucv_sock_recvmsg() for MSG_PEEK flag\n  af_iucv: consider state IUCV_CLOSING when closing a socket\n  iwlwifi: DMA fixes\n  iwlwifi: add debugging for TX path\n  mwl8: fix build warning.\n  mac80211: fix alignment calculation bug\n  mac80211: do not print WARN if config interface\n  iwl3945: use cancel_delayed_work_sync to cancel rfkill_poll\n  iwlwifi: fix EEPROM validation mask to include OTP only devices\n  atmel: fix netdev ops conversion\n  pcnet_cs: add cis(firmware) of the Allied Telesis LA-PCM\n  mlx4_en: Fix cleanup if workqueue create in mlx4_en_add() fails\n  ...\n"
    },
    {
      "commit": "dc0046c7586da5db7561dd8b8e09b40d29ade5fa",
      "tree": "05ab773b89fec9b2f3fcab67875894d2ea98aee2",
      "parents": [
        "f8c3301e8336334be62527c5314018f75f58ad4b",
        "956d039a2537cf79ca608450d36cc70e0e515482"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:45:52 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:45:52 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  sparc: Fix bus type probing for ESP and LE devices.\n  sparc32: Update defconfig.\n  sparc64: Update defconfig.\n"
    },
    {
      "commit": "f8c3301e8336334be62527c5314018f75f58ad4b",
      "tree": "1eb819381e0858a03fe544dc40cf4661adf683bf",
      "parents": [
        "437f7fdb607f32b737e4da9f14bebcfdac2c90c3",
        "6329db8bd60fbc0832f30c350b0181b8d865573e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:44:58 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:44:58 2009 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:\n  powerpc: Fix modular build of ide-pmac when mediabay is built in\n  powerpc/pasemi: Fix build error on UP\n  powerpc: Make macintosh/mediabay driver depend on CONFIG_BLOCK\n  maintainers: Fix PS3 patterns\n  powerpc/ps3: Fix CONFIG_PS3_FLASH\u003dn build warning\n  powerpc/32: Don\u0027t clobber personality flags on exec\n  powerpc: Fix crash on CPU hotplug\n  powerpc/85xx: Remove defconfigs that mpc85xx_{smp_}defconfig cover\n  powerpc/85xx: Added SMP defconfig\n  powerpc/85xx: Enabled a bunch of FSL specific drivers/options\n  powerpc/85xx: Updated generic mpc85xx_defconfig\n  powerpc: don\u0027t disable SATA interrupts on Freescale MPC8610 HPCD\n  fsl_rio: Pass the proper device to dma mapping routines\n  powerpc: Fix of_node_put() exit path in of_irq_map_one()\n  powerpc/5200: defconfig updates\n  powerpc/5200: Add FLASH nodes to lite5200 device tree\n  powerpc/device-tree: Document MTD nodes with multiple \"reg\" tuples\n  powerpc/of-device-tree: Factor MTD physmap bindings out of booting-without-of\n  powerpc/5200: Bring the legacy fsl_spi_platform_data hooks back\n"
    },
    {
      "commit": "1162cf6bc6c4650943735438e2be0785ea40a3c6",
      "tree": "c7a6cce9366df8426996bf508b701a833894f7b3",
      "parents": [
        "5f855a8f0ca8f8a81a7752d6bfdc65bfca426b5a",
        "d68b597c883cf863c7216564cae08a4730d56cc1"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:29 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:29 2009 -0400"
      },
      "message": "Merge branch \u0027bjorn.button\u0027 into release\n"
    },
    {
      "commit": "5f855a8f0ca8f8a81a7752d6bfdc65bfca426b5a",
      "tree": "f14c218d4f66e766136a58f217cf317eca568833",
      "parents": [
        "1fe94d37f9296e8884c2f4ca4e22ca3d1398f15c",
        "a38d75fa2e48d4960b656eac39bc8a6b584a83c0"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:21 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:21 2009 -0400"
      },
      "message": "Merge branch \u0027bugzilla-13036\u0027 into release\n"
    },
    {
      "commit": "1fe94d37f9296e8884c2f4ca4e22ca3d1398f15c",
      "tree": "a25f17ea64b5d0209d187b952f88fbd27bc2ecf1",
      "parents": [
        "9c18f0b7095c7981c48f41aae8abdaa06a76d9b3",
        "b7f0ab460f772b09a9c664d746236a280fec714c"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:11 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:11 2009 -0400"
      },
      "message": "Merge branch \u0027bugzilla-13048\u0027 into release\n"
    },
    {
      "commit": "9c18f0b7095c7981c48f41aae8abdaa06a76d9b3",
      "tree": "6b7dc4c79f232133636e444514e52fabd380ed2e",
      "parents": [
        "3869e929bb38499b37f8cd76ec96ab6e5a169efb",
        "615dfd93e2346b604232b559e7ea0835d24abe26"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:03 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:42:03 2009 -0400"
      },
      "message": "Merge branch \u0027bugzilla-13142\u0027 into release\n"
    },
    {
      "commit": "3869e929bb38499b37f8cd76ec96ab6e5a169efb",
      "tree": "7c76cc0159d4fa87367463eb97970474eab84da4",
      "parents": [
        "2d40570786c7c208539c65893818119557327ba0",
        "f461ddea0af8b98e2b7940eba9c693b0ee44d64a"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:41:31 2009 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Apr 24 10:41:31 2009 -0400"
      },
      "message": "Merge branch \u0027hpet\u0027 into release\n"
    },
    {
      "commit": "437f7fdb607f32b737e4da9f14bebcfdac2c90c3",
      "tree": "2064149ad4406774bd3b1ade60782980206f2e82",
      "parents": [
        "8c652f96d3852b97a49c331cd0bb02d22f3cb31b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Apr 24 01:02:45 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:39:45 2009 -0700"
      },
      "message": "check_unsafe_exec: s/lock_task_sighand/rcu_read_lock/\n\nwrite_lock(\u0026current-\u003efs-\u003elock) guarantees we can\u0027t wrongly miss\nLSM_UNSAFE_SHARE, this is what we care about. Use rcu_read_lock()\ninstead of -\u003esiglock to iterate over the sub-threads. We must see\nall CLONE_THREAD|CLONE_FS threads which didn\u0027t pass exit_fs(), it\ntakes fs-\u003elock too.\n\nWith or without this patch we can miss the freshly cloned thread\nand set LSM_UNSAFE_SHARE, we don\u0027t care.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\n[ Fixed lock/unlock typo  - Hugh ]\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c652f96d3852b97a49c331cd0bb02d22f3cb31b",
      "tree": "9752969f2ae7312026bb4037ecd950dafd403d9b",
      "parents": [
        "091069740304c979f957ceacec39c461d0192158"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Apr 24 01:01:56 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Apr 24 07:39:45 2009 -0700"
      },
      "message": "do_execve() must not clear fs-\u003ein_exec if it was set by another thread\n\nIf do_execve() fails after check_unsafe_exec(), it clears fs-\u003ein_exec\nunconditionally. This is wrong if we race with our sub-thread which\nalso does do_execve:\n\n\tTwo threads T1 and T2 and another process P, all share the same\n\t-\u003efs.\n\n\tT1 starts do_execve(BAD_FILE). It calls check_unsafe_exec(), since\n\t-\u003efs is shared, we set LSM_UNSAFE but not -\u003ein_exec.\n\n\tP exits and decrements fs-\u003eusers.\n\n\tT2 starts do_execve(), calls check_unsafe_exec(), now -\u003efs is not\n\tshared, we set fs-\u003ein_exec.\n\n\tT1 continues, open_exec(BAD_FILE) fails, we clear -\u003ein_exec and\n\treturn to the user-space.\n\n\tT1 does clone(CLONE_FS /* without CLONE_THREAD */).\n\n\tT2 continues without LSM_UNSAFE_SHARE while -\u003efs is shared with\n\tanother process.\n\nChange check_unsafe_exec() to return res \u003d 1 if we set -\u003ein_exec, and change\ndo_execve() to clear -\u003ein_exec depending on res.\n\nWhen do_execve() suceeds, it is safe to clear -\u003ein_exec unconditionally.\nIt can be set only if we don\u0027t share -\u003efs with another process, and since\nwe already killed all sub-threads either -\u003ein_exec \u003d\u003d 0 or we are the\nonly user of this -\u003efs.\n\nAlso, we do not need fs-\u003elock to clear fs-\u003ein_exec.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2d1f0ae7851be5ebd9613a80dac139270938809",
      "tree": "91efc4740f854b94ea84583a2cd6c34d14eafc8e",
      "parents": [
        "3ac6c9f8a66726745136e46f63600550c3eb6cec"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 23 12:19:38 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:22 2009 +0200"
      },
      "message": "cfq-iosched: cache prio_tree root in cfqq-\u003ep_root\n\nCurrently we look it up from -\u003eioprio, but -\u003eioprio can change if\neither the process gets its IO priority changed explicitly, or if\ncfq decides to temporarily boost it. So if we are unlucky, we can\nend up attempting to remove a node from a different rbtree root than\nwhere it was added.\n\nFix this by using -\u003eorg_ioprio as the prio_tree index, since that\nwill only change for explicit IO priority settings (not for a boost).\nAdditionally cache the rbtree root inside the cfqq, then we don\u0027t have\nto add code to reinsert the cfqq in the prio_tree if IO priority changes.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "3ac6c9f8a66726745136e46f63600550c3eb6cec",
      "tree": "93d3217dc15a8183c8e6b29b36862caef01546d7",
      "parents": [
        "26a2ac009c2b07e1959c8864ca23486c1c485587"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 23 12:14:56 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:22 2009 +0200"
      },
      "message": "cfq-iosched: fix bug with aliased request and cooperation detection\n\ncfq_prio_tree_lookup() should return the direct match, yet it always\nreturns zero. Fix that.\n\ncfq_prio_tree_add() assumes that we don\u0027t get a direct match, while\nit is very possible that we do. Using O_DIRECT, you can have different\ncfqq with matching requests, since you don\u0027t have the page cache\nto serialize things for you. Fix this bug by only adding the cfqq if\nthere isn\u0027t an existing match.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "26a2ac009c2b07e1959c8864ca23486c1c485587",
      "tree": "f3c0ae95578cd454f04dc48226b3b6f1ebd1d345",
      "parents": [
        "17d5c8ca7572124c9623045f24b0c21d4aa2b47f"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 23 12:13:27 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:22 2009 +0200"
      },
      "message": "cfq-iosched: clear -\u003eprio_trees[] on cfqd alloc\n\nNot strictly needed, but we should make it clear that we init the\nrbtree roots here.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "17d5c8ca7572124c9623045f24b0c21d4aa2b47f",
      "tree": "dfecc3aa2acae305c01238002a3e53d6ae8d3238",
      "parents": [
        "f3c737de8f57b5ce756010c2175f7d574194b30d"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Apr 23 10:32:59 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "block: fix intermittent dm timeout based oops\n\nVery rarely under stress testing of dm, oopses are occuring as\nsomething tampers with an old stack frame.  This has been traced back\nto blk_abort_queue() leaving a timeout_list pointing to the stack.\nThe reason is that sometimes blk_abort_request() won\u0027t delete the\ntimer (if the request is marked as complete but before the timer has\nbeen removed, a small race window).  Fix this by splicing back from\nthe ususally empty list to the q-\u003etimeout_list.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "f3c737de8f57b5ce756010c2175f7d574194b30d",
      "tree": "fa741dba43d33b83f66c7f912e983feae594d40f",
      "parents": [
        "42dad7647aec49b3ad20dd0cb832b232a6ae514f"
      ],
      "author": {
        "name": "Sage Weil",
        "email": "sage@newdream.ne",
        "time": "Thu Apr 23 08:37:58 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "umem: fix request_queue lock warning\n\nThe umem driver issues two warnings on boot, due to blk_plug_device() and\nblk_remove_plug() being called without q-\u003equeue_lock held.  Starting with\ne48ec690 (block: extend queue_flag bitops), the queue_flag_* functions\nwarn if q-\u003equeue_lock doesn\u0027t appear to be locked.  In fact, q-\u003equeue_lock\nis NULL (though that apparently isn\u0027t otherwise a problem as the driver is\nusing card-\u003elock for everything).\n\nAlthough blk_init_queue() with take a request_fn_proc and spinlock_t*,\nthere isn\u0027t a corresponding init helper that takes a make_request_fn.\nSetting queue_lock to \u0026card-\u003elock explicitly seems to work fine for me.\nThe warning goes away and the device appears to behave.\n\n[    1.531881] v2.3 : Micro Memory(tm) PCI memory board block driver\n[    1.538136] umem 0000:02:01.0: PCI INT A -\u003e GSI 20 (level, low) -\u003e IRQ 20\n[    1.545018] umem 0000:02:01.0: Micro Memory(tm) controller found (PCI Mem Module (Battery Backup))\n[    1.554176] umem 0000:02:01.0: CSR 0xfc9ffc00 -\u003e 0xffffc200013d0c00 (0x100)\n[    1.561279] umem 0000:02:01.0: Size 1048576 KB, Battery 1 Disabled (FAILURE), Battery 2 Disabled (FAILURE)\n[    1.571114] umem 0000:02:01.0: Window size 16777216 bytes, IRQ 20\n[    1.577304] umem 0000:02:01.0: memory NOT initialized. Consider over-writing whole device.\n[    1.585989]  umema:\u003c4\u003e------------[ cut here ]------------\n[    1.591775] WARNING: at include/linux/blkdev.h:492 blk_plug_device+0x6d/0x106()\n[    1.592025] Hardware name: H8SSL\n[    1.592025] Modules linked in:\n[    1.592025] Pid: 1, comm: swapper Not tainted 2.6.29 #8\n[    1.592025] Call Trace:\n[    1.592025]  [\u003cffffffff8023c994\u003e] warn_slowpath+0xd3/0xf2\n[    1.592025]  [\u003cffffffff8025a5b5\u003e] ? save_trace+0x3f/0x9b\n[    1.592025]  [\u003cffffffff8025a68b\u003e] ? add_lock_to_list+0x7a/0xba\n[    1.592025]  [\u003cffffffff8025e609\u003e] ? validate_chain+0xb3b/0xce8\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff8025ef04\u003e] ? __lock_acquire+0x74e/0x7b9\n[    1.592025]  [\u003cffffffff8025a70e\u003e] ? get_lock_stats+0x34/0x5e\n[    1.592025]  [\u003cffffffff8025a746\u003e] ? put_lock_stats+0xe/0x27\n[    1.592025]  [\u003cffffffff80441556\u003e] ? mm_make_request+0x27/0x59\n[    1.592025]  [\u003cffffffff803ad165\u003e] blk_plug_device+0x6d/0x106\n[    1.592025]  [\u003cffffffff80441575\u003e] mm_make_request+0x46/0x59\n[    1.592025]  [\u003cffffffff803ac2d9\u003e] generic_make_request+0x335/0x3cf\n[    1.592025]  [\u003cffffffff8027fcc7\u003e] ? mempool_alloc_slab+0x11/0x13\n[    1.592025]  [\u003cffffffff8027fdce\u003e] ? mempool_alloc+0x45/0x101\n[    1.592025]  [\u003cffffffff8025a746\u003e] ? put_lock_stats+0xe/0x27\n[    1.592025]  [\u003cffffffff803adda5\u003e] submit_bio+0x10a/0x119\n[    1.592025]  [\u003cffffffff802c8d00\u003e] submit_bh+0xe5/0x109\n[    1.592025]  [\u003cffffffff802cbf43\u003e] block_read_full_page+0x2aa/0x2cb\n[    1.592025]  [\u003cffffffff802cf4c4\u003e] ? blkdev_get_block+0x0/0x4c\n[    1.592025]  [\u003cffffffff805c90a8\u003e] ? _spin_unlock_irq+0x36/0x51\n[    1.592025]  [\u003cffffffff80286836\u003e] ? __lru_cache_add+0x92/0xb2\n[    1.592025]  [\u003cffffffff802cf008\u003e] blkdev_readpage+0x13/0x15\n[    1.592025]  [\u003cffffffff8027de06\u003e] read_cache_page_async+0x90/0x134\n[    1.592025]  [\u003cffffffff802ceff5\u003e] ? blkdev_readpage+0x0/0x15\n[    1.592025]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.592025]  [\u003cffffffff8027deb8\u003e] read_cache_page+0xe/0x45\n[    1.592025]  [\u003cffffffff802f5170\u003e] read_dev_sector+0x2e/0x93\n[    1.592025]  [\u003cffffffff802f5f44\u003e] adfspart_check_ICS+0x28/0x16c\n[    1.592025]  [\u003cffffffff8025d427\u003e] ? trace_hardirqs_on+0xd/0xf\n[    1.592025]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.592025]  [\u003cffffffff802f59c5\u003e] rescan_partitions+0x168/0x2fb\n[    1.592025]  [\u003cffffffff802ceae9\u003e] __blkdev_get+0x259/0x336\n[    1.592025]  [\u003cffffffff803ca1e2\u003e] ? kobject_put+0x47/0x4b\n[    1.592025]  [\u003cffffffff802cebd1\u003e] blkdev_get+0xb/0xd\n[    1.592025]  [\u003cffffffff802f5773\u003e] register_disk+0xc4/0x12b\n[    1.592025]  [\u003cffffffff803b2a7b\u003e] add_disk+0xc3/0x12d\n[    1.592025]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.592025]  [\u003cffffffff808a1e73\u003e] mm_init+0x129/0x1a5\n[    1.592025]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.592025]  [\u003cffffffff80209056\u003e] _stext+0x56/0x130\n[    1.592025]  [\u003cffffffff80274932\u003e] ? register_irq_proc+0xae/0xca\n[    1.592025]  [\u003cffffffff802f0000\u003e] ? proc_pid_lookup+0xb4/0x18b\n[    1.592025]  [\u003cffffffff8087f975\u003e] kernel_init+0x132/0x18b\n[    1.592025]  [\u003cffffffff8020d17a\u003e] child_rip+0xa/0x20\n[    1.592025]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.592025]  [\u003cffffffff8087f843\u003e] ? kernel_init+0x0/0x18b\n[    1.592025]  [\u003cffffffff8020d170\u003e] ? child_rip+0x0/0x20\n[    1.592025] ---[ end trace 7150b3b86da74e1e ]---\n[    1.889858] ------------[ cut here ]------------[ve_plug+0x5f/0x91()\n[    1.893848] Hardware name: H8SSL\n[    1.893848] Modules linked in:\n[    1.893848] Pid: 1, comm: swapper Tainted: G        W  2.6.29 #8\n[    1.893848] Call Trace:\n[    1.893848]  [\u003cffffffff8023c994\u003e] warn_slowpath+0xd3/0xf2\n[    1.893848]  [\u003cffffffff805c8411\u003e] ? trace_hardirqs_on_thunk+0x3a/0x3f\n[    1.893848]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.893848]  [\u003cffffffff80254245\u003e] ? __atomic_notifier_call_chain+0x0/0xb2\n[    1.893848]  [\u003cffffffff805c90a3\u003e] ? _spin_unlock_irq+0x31/0x51\n[    1.893848]  [\u003cffffffff805c90bf\u003e] ? _spin_unlock_irq+0x4d/0x51\n[    1.893848]  [\u003cffffffff8044157d\u003e] ? mm_make_request+0x4e/0x59\n[    1.893848]  [\u003cffffffff8025a70e\u003e] ? get_lock_stats+0x34/0x5e\n[    1.893848]  [\u003cffffffff8025a75d\u003e] ? put_lock_stats+0x25/0x27\n[    1.893848]  [\u003cffffffff80441504\u003e] ? mm_unplug_device+0x25/0x50\n[    1.893848]  [\u003cffffffff803acf23\u003e] blk_remove_plug+0x5f/0x91\n[    1.893848]  [\u003cffffffff8044150f\u003e] mm_unplug_device+0x30/0x50\n[    1.893848]  [\u003cffffffff803ab74a\u003e] blk_unplug+0x78/0x7d\n[    1.893848]  [\u003cffffffff803ab75c\u003e] blk_backing_dev_unplug+0xd/0xf\n[    1.893848]  [\u003cffffffff802c853c\u003e] block_sync_page+0x4a/0x4c\n[    1.893848]  [\u003cffffffff8027da1c\u003e] sync_page+0x44/0x4d\n[    1.893848]  [\u003cffffffff805c66fd\u003e] __wait_on_bit_lock+0x42/0x8a\n[    1.893848]  [\u003cffffffff8027d9d8\u003e] ? sync_page+0x0/0x4d\n[    1.893848]  [\u003cffffffff8027d9c4\u003e] __lock_page+0x64/0x6b\n[    1.893848]  [\u003cffffffff802508db\u003e] ? wake_bit_function+0x0/0x2a\n[    1.893848]  [\u003cffffffff8027de4a\u003e] read_cache_page_async+0xd4/0x134\n[    1.893848]  [\u003cffffffff802ceff5\u003e] ? blkdev_readpage+0x0/0x15\n[    1.893848]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.893848]  [\u003cffffffff8027deb8\u003e] read_cache_page+0xe/0x45\n[    1.893848]  [\u003cffffffff802f5170\u003e] read_dev_sector+0x2e/0x93\n[    1.893848]  [\u003cffffffff802f5f44\u003e] adfspart_check_ICS+0x28/0x16c\n[    1.893848]  [\u003cffffffff8025d427\u003e] ? trace_hardirqs_on+0xd/0xf\n[    1.893848]  [\u003cffffffff802f5f1c\u003e] ? adfspart_check_ICS+0x0/0x16c\n[    1.893848]  [\u003cffffffff802f59c5\u003e] rescan_partitions+0x168/0x2fb\n[    1.893848]  [\u003cffffffff802ceae9\u003e] __blkdev_get+0x259/0x336\n[    1.893848]  [\u003cffffffff803ca1e2\u003e] ? kobject_put+0x47/0x4b\n[    1.893848]  [\u003cffffffff802cebd1\u003e] blkdev_get+0xb/0xd\n[    1.893848]  [\u003cffffffff802f5773\u003e] register_disk+0xc4/0x12b\n[    1.893848]  [\u003cffffffff803b2a7b\u003e] add_disk+0xc3/0x12d\n[    1.893848]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.893848]  [\u003cffffffff808a1e73\u003e] mm_init+0x129/0x1a5\n[    1.893848]  [\u003cffffffff808a1d4a\u003e] ? mm_init+0x0/0x1a5\n[    1.893848]  [\u003cffffffff80209056\u003e] _stext+0x56/0x130\n[    1.893848]  [\u003cffffffff80274932\u003e] ? register_irq_proc+0xae/0xca\n[    1.893848]  [\u003cffffffff802f0000\u003e] ? proc_pid_lookup+0xb4/0x18b\n[    1.893848]  [\u003cffffffff8087f975\u003e] kernel_init+0x132/0x18b\n[    1.893848]  [\u003cffffffff8020d17a\u003e] child_rip+0xa/0x20\n[    1.893848]  [\u003cffffffff8020cb40\u003e] ? restore_args+0x0/0x30\n[    1.893848]  [\u003cffffffff8087f843\u003e] ? kernel_init+0x0/0x18b\n[    1.893848]  [\u003cffffffff8020d170\u003e] ? child_rip+0x0/0x20\n[    1.893848] ---[ end trace 7150b3b86da74e1f ]---\n\nSigned-off-by: Sage Weil \u003csage@newdream.net\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "42dad7647aec49b3ad20dd0cb832b232a6ae514f",
      "tree": "b70d4cb7706f2647e65426e24f078ddf14d6e139",
      "parents": [
        "097102c2d04974bdfcfa16a5f3062d499842139c"
      ],
      "author": {
        "name": "Jerome Marchand",
        "email": "jmarchan@redhat.com",
        "time": "Wed Apr 22 14:01:49 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "block: simplify I/O stat accounting\n\nThis simplifies I/O stat accounting switching code and separates it\ncompletely from I/O scheduler switch code.\n\nRequests are accounted according to the state of their request queue\nat the time of the request allocation. There is no need anymore to\nflush the request queue when switching I/O accounting state.\n\nSigned-off-by: Jerome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "097102c2d04974bdfcfa16a5f3062d499842139c",
      "tree": "92031feecd795fac2505ca46d87156de351b67b5",
      "parents": [
        "04dc6e71a28d4815bf9431efcafc107bb0ad2792"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Tue Apr 21 09:33:14 2009 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Apr 24 08:54:21 2009 +0200"
      },
      "message": "pktcdvd.h should include mempool.h\n\nFix this build error:\nIn file included from fs/compat_ioctl.c:104:\ninclude/linux/pktcdvd.h:285: error: expected specifier-qualifier-list before \u0027mempool_t\u0027\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    }
  ],
  "next": "2d40570786c7c208539c65893818119557327ba0"
}
