)]}'
{
  "log": [
    {
      "commit": "fbb04a1c17686592b5e74e45e210f20c40b68d08",
      "tree": "ed23ccee420c389294cb5c337f740bb62bd0a563",
      "parents": [
        "43f7c7261fc45a4c09fbd56c0a76dcdf55d8e8f3"
      ],
      "author": {
        "name": "Stephen M. Cameron",
        "email": "scameron@beardog.cce.hp.com",
        "time": "Thu Jul 21 13:16:05 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:36 2011 -0700"
      },
      "message": "hpsa: do not attempt to read from a write-only register\n\ncommit fec62c368b9c8b05d5124ca6c3b8336b537f26f3 upstream.\n\nMost smartarrays tolerate it, but a few new ones don\u0027t.\nWithout this change some newer Smart Arrays will lock up\nand i/o will grind to a halt.\n\nSigned-off-by: Stephen M. Cameron \u003cscameron@beardog.cce.hp.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "43f7c7261fc45a4c09fbd56c0a76dcdf55d8e8f3",
      "tree": "7629f0518818f05916c3af486374a175f39c2312",
      "parents": [
        "1768e0b7e77b5c3e11cd0f0ab15358ccba3a9880"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "drosenberg@vsecurity.com",
        "time": "Mon Jul 11 14:08:23 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:36 2011 -0700"
      },
      "message": "pmcraid: reject negative request size\n\ncommit b5b515445f4f5a905c5dd27e6e682868ccd6c09d upstream.\n\nThere\u0027s a code path in pmcraid that can be reached via device ioctl that\ncauses all sorts of ugliness, including heap corruption or triggering the\nOOM killer due to consecutive allocation of large numbers of pages.\n\nFirst, the user can call pmcraid_chr_ioctl(), with a type\nPMCRAID_PASSTHROUGH_IOCTL.  This calls through to\npmcraid_ioctl_passthrough().  Next, a pmcraid_passthrough_ioctl_buffer\nis copied in, and the request_size variable is set to\nbuffer-\u003eioarcb.data_transfer_length, which is an arbitrary 32-bit\nsigned value provided by the user.  If a negative value is provided\nhere, bad things can happen.  For example,\npmcraid_build_passthrough_ioadls() is called with this request_size,\nwhich immediately calls pmcraid_alloc_sglist() with a negative size.\nThe resulting math on allocating a scatter list can result in an\noverflow in the kzalloc() call (if num_elem is 0, the sglist will be\nsmaller than expected), or if num_elem is unexpectedly large the\nsubsequent loop will call alloc_pages() repeatedly, a high number of\npages will be allocated and the OOM killer might be invoked.\n\nIt looks like preventing this value from being negative in\npmcraid_ioctl_passthrough() would be sufficient.\n\nSigned-off-by: Dan Rosenberg \u003cdrosenberg@vsecurity.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1768e0b7e77b5c3e11cd0f0ab15358ccba3a9880",
      "tree": "1883eb13f3b634479e254ed670c1cba5423ee0cb",
      "parents": [
        "b9beb51724bebfc198533144e86601f0099c026e"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 07 15:45:40 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:36 2011 -0700"
      },
      "message": "fix crash in scsi_dispatch_cmd()\n\ncommit bfe159a51203c15d23cb3158fffdc25ec4b4dda1 upstream.\n\nUSB surprise removal of sr is triggering an oops in\nscsi_dispatch_command().  What seems to be happening is that USB is\nhanging on to a queue reference until the last close of the upper\ndevice, so the crash is caused by surprise remove of a mounted CD\nfollowed by attempted unmount.\n\nThe problem is that USB doesn\u0027t issue its final commands as part of\nthe SCSI teardown path, but on last close when the block queue is long\ngone.  The long term fix is probably to make sr do the teardown in the\nsame way as sd (so remove all the lower bits on ejection, but keep the\nupper disk alive until last close of user space).  However, the\ncurrent oops can be simply fixed by not allowing any commands to be\nsent to a dead queue.\n\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b9beb51724bebfc198533144e86601f0099c026e",
      "tree": "dda96e6715b014adec4e286588c897a5232682a8",
      "parents": [
        "645b2cf1067d945c662ffeea45b4c0f7036bc1ee"
      ],
      "author": {
        "name": "Douglas Gilbert",
        "email": "dgilbert@interlog.com",
        "time": "Thu Jun 09 00:27:07 2011 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:35 2011 -0700"
      },
      "message": "ses: requesting a fault indication\n\ncommit 2a350cab9daf9a46322d83b091bb05cf54ccf6ab upstream.\n\nNoticed that when the sysfs interface of the SCSI SES\ndriver was used to request a fault indication the LED\nflashed but the buzzer didn\u0027t sound. So it was doing\nwhat REQUEST IDENT (locate) should do.\n\nChangelog:\n   - fix the setting of REQUEST FAULT for the device slot\n     and array device slot elements in the enclosure control\n     diagnostic page\n   - note the potentially defective code that reads the\n     FAULT SENSED and FAULT REQUESTED bits from the enclosure\n     status diagnostic page\n\nThe attached patch is against git/scsi-misc-2.6\n\nSigned-off-by: Douglas Gilbert \u003cdgilbert@interlog.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "645b2cf1067d945c662ffeea45b4c0f7036bc1ee",
      "tree": "835075abb1b4c6db6b49689c0bc2e5109ca6baf6",
      "parents": [
        "65bafeb9e7b942b6ff5754a03635f5d328568f5e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Jun 30 15:03:48 2011 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:35 2011 -0700"
      },
      "message": "sr: check_events() ignore GET_EVENT when TUR says otherwise\n\ncommit 79b9677d885d1a792bc103f2febb06f91f92de43 upstream.\n\nSome broken devices indicates that media has changed on every\nGET_EVENT_STATUS_NOTIFICATION.  This translates into MEDIA_CHANGE\nuevent on every open() which lets udev run into a loop.\n\nVerify GET_EVENT result against TUR and if it generates spurious\nevents for several times in a row, ignore the GET_EVENT events, and\ntrust only the TUR status.\n\nThis is the log of a USB stick with a (broken) fake CDROM drive:\n\n scsi 5:0:0:0: Direct-Access     SanDisk  U3 Cruzer Micro  8.02 PQ: 0 ANSI: 0 CCS\n sd 5:0:0:0: Attached scsi generic sg3 type 0\n scsi 5:0:0:1: CD-ROM            SanDisk  U3 Cruzer Micro  8.02 PQ: 0 ANSI: 0\n sd 5:0:0:0: [sdb] Attached SCSI removable disk\n sr2: scsi3-mmc drive: 48x/48x tray\n sr 5:0:0:1: Attached scsi CD-ROM sr2\n sr 5:0:0:1: Attached scsi generic sg4 type 5\n sr2: GET_EVENT and TUR disagree continuously, suppress GET_EVENT events\n sd 5:0:0:0: [sdb] 31777279 512-byte logical blocks: (16.2 GB/15.1 GiB)\n sd 5:0:0:0: [sdb] No Caching mode page present\n sd 5:0:0:0: [sdb] Assuming drive cache: write through\n sd 5:0:0:0: [sdb] No Caching mode page present\n sd 5:0:0:0: [sdb] Assuming drive cache: write through\n sdb: sdb1\n\n-tj: Updated to consider only spurious GET_EVENT events among\n     different types of disagreement and allow using TUR for kernel\n     event polling after GET_EVENT is ignored.\n\nReported-By: Markus Rathgeb maggu2810@googlemail.com\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "65bafeb9e7b942b6ff5754a03635f5d328568f5e",
      "tree": "33054d03b19624a44bd1edc0bca6a39274b210db",
      "parents": [
        "462fee3af72df0de7b60b96c525ffe8baf4db0f0"
      ],
      "author": {
        "name": "Werner Fink",
        "email": "werner@novell.com",
        "time": "Thu Jun 09 10:54:24 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:35 2011 -0700"
      },
      "message": "Blacklist Traxdata CDR4120 and IOMEGA Zip drive to avoid lock ups.\n\ncommit 82103978189e9731658cd32da5eb85ab7b8542b8 upstream.\n\nThis patch resulted from the discussion at\nhttps://bugzilla.novell.com/show_bug.cgi?id\u003d679277,\nhttps://bugzilla.novell.com/show_bug.cgi?id\u003d681840 .\n\nSigned-off-by: Werner Fink \u003cwerner@novell.com\u003e\nSigned-off-by: Ankit Jain \u003cjankit@suse.de\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ec16ea56c8dec5ef60681c199fb369077ecbcec5",
      "tree": "1d8ecbce06db14d48fa161388666b5c5dd093110",
      "parents": [
        "7f138af8ea6ef10a6f75ec95021c3f4a2de6a987"
      ],
      "author": {
        "name": "Luben Tuikov",
        "email": "ltuikov@yahoo.com",
        "time": "Tue Jul 26 23:10:48 2011 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Aug 04 21:58:34 2011 -0700"
      },
      "message": "libsas: remove expander from dev list on error\n\ncommit 5911e963d3718e306bcac387b83e259aa4228896 upstream.\n\nIf expander discovery fails (sas_discover_expander()), remove the\nexpander from the port device list (sas_ex_discover_expander()),\nbefore freeing it. Else the list is corrupted and, e.g., when we\nattempt to send SMP commands to other devices, the kernel oopses.\n\nSigned-off-by: Luben Tuikov \u003cltuikov@yahoo.com\u003e\nReviewed-by: Jack Wang \u003cjack_wang@usish.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "a5ec7f86dc5432c44d8407a144e7617ec65da770",
      "tree": "9fdbe6b2d5784a68bb350d69eb83ae0e3cb45c90",
      "parents": [
        "5b45b69c0573b802a50ccad30e154b93d3b36ff8"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jul 03 14:14:45 2011 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Jul 03 14:26:24 2011 -0500"
      },
      "message": "[SCSI] isci: fix checkpatch errors\n\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "5b45b69c0573b802a50ccad30e154b93d3b36ff8",
      "tree": "ba8468d60ea5b11d1434d1515690cbe31ae0ffbb",
      "parents": [
        "db111e18ec19bbadbf44a60f73bf2ff5991dc915",
        "bc6f387d3156702a0430585b93c04934254c0de1"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Jul 03 14:19:29 2011 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Jul 03 14:19:29 2011 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/djbw/isci\n"
    },
    {
      "commit": "bc6f387d3156702a0430585b93c04934254c0de1",
      "tree": "53fcdcd362a520f134c31004a8c5a068b615105e",
      "parents": [
        "a8a0a133b03c6863d0f77229d19befca4de905fa"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Fri Jul 01 13:03:44 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: Device reset should request sas_phy_reset(phy, true)\n\nThe hard_reset parameter passed to the LLDD in the direct-attached\nphy control case allows the LLDD to filter link failure events\nwhile the direct-attached device reset is executing.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "a8a0a133b03c6863d0f77229d19befca4de905fa",
      "tree": "387efebbe86ba9b8510fd1374ca3221bb42dbb42",
      "parents": [
        "dc00c8b6940aa10ab1ce6a4d10b1bfe7b848781b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 01 12:07:25 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: pare back error messsages\n\nThe messages emitted from task.c and some from request.c likely\nduplicate (in a less undertandable way) what is reported by the\nmidlayer.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "dc00c8b6940aa10ab1ce6a4d10b1bfe7b848781b",
      "tree": "2f62620a348a5f6635413db4f5a0725c248a222b",
      "parents": [
        "4e4dca3de9658f364d34924e072f2b64e5c3d267"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 01 11:41:21 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: cleanup silicon revision detection\n\nPerform checking per-pci device (even though all systems will only have\n1 pci device in this generation), and delete support for silicon that\ndoes not report a proper revision (i.e. A0).\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4e4dca3de9658f364d34924e072f2b64e5c3d267",
      "tree": "0a8e49e07505b8b6b356ab73132060dff74b4340",
      "parents": [
        "16ba77091b44af28b3ff3318b4a2aa4fbf7d4c24"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 01 11:15:12 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: merge scu_unsolicited_frame.h into unsolicited_frame_control.h\n\nDoes not need its own file.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "16ba77091b44af28b3ff3318b4a2aa4fbf7d4c24",
      "tree": "56c26a8e32991670acbeaffbcba3c41822e7911a",
      "parents": [
        "34a991587a5cc9f78960c2c9beea217866458c41"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 01 10:52:55 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: merge sata.[ch] into request.c\n\nUndo some needless separation.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "34a991587a5cc9f78960c2c9beea217866458c41",
      "tree": "824bfb5d50705223339e2bd3369ae3194f2eece3",
      "parents": [
        "89a7301f21fb00e753089671eb9e4132aab8ea08"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 01 02:25:15 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: kill \u0027get/set\u0027 macros\n\nMost of these simple dereference macros are longer than their open coded\nequivalent.  Deleting enum sci_controller_mode is thrown in for good\nmeasure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "89a7301f21fb00e753089671eb9e4132aab8ea08",
      "tree": "afa8bac0a36d0d5626997d8995f6c9194aef3a0f",
      "parents": [
        "d9dcb4ba791de2a06b19ac47cd61601cf3d4e208"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 30 19:14:33 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: retire scic_sds_ and scic_ prefixes\n\nThe distinction between scic_sds_ scic_ and sci_ are no longer relevant\nso just unify the prefixes on sci_.  The distinction between isci_ and\nsci_ is historically significant, and useful for comparing the old\n\u0027core\u0027 to the current Linux driver. \u0027sci_\u0027 represents the former core as\nwell as the routines that are closer to the hardware and protocol than\ntheir \u0027isci_\u0027 brethren. sci \u003d\u003d sas controller interface.\n\nAlso unwind the \u0027sds1\u0027 out of the parameter structs.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d9dcb4ba791de2a06b19ac47cd61601cf3d4e208",
      "tree": "4b818b5b14c078703c034489c92e74975be6c06f",
      "parents": [
        "78a6f06e0e82125787d7aa308fe28c2c8381540c"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 30 17:38:32 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: unify isci_host and scic_sds_controller\n\nRemove the distinction between these two implementations and unify on\nisci_host (local instances named ihost).  Hmmm, we had two\n\u0027oem_parameters\u0027 instances, one was unused... nice.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "78a6f06e0e82125787d7aa308fe28c2c8381540c",
      "tree": "55ab54546aab6dbaccda4ff6d196d8995f453c83",
      "parents": [
        "ffe191c92ff195d73f9130b1490045ca2dd4c5e0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 30 16:31:37 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: unify isci_remote_device and scic_sds_remote_device\n\nRemove the distinction between these two implementations and unify on\nisci_remote_device (local instances named idev).\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ffe191c92ff195d73f9130b1490045ca2dd4c5e0",
      "tree": "c14a78903734b7f5e662e7cf49db4d7fd24e4d71",
      "parents": [
        "76802ce6756d605fbd7a9a43c196e9a471b3e57c"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 29 13:09:25 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: unify isci_port and scic_sds_port\n\nRemove the distinction between these two implementations and unify on\nisci_port (local instances named iport).  The duplicate \u0027-\u003eowning_port\u0027 and\n\u0027-\u003eisci_port\u0027 in both isci_phy and isci_remote_device will be fixed in a later\npatch... this is just the straightforward rename/unification.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "76802ce6756d605fbd7a9a43c196e9a471b3e57c",
      "tree": "8fd454bc49a4352050aa76f797197a5271ac0d82",
      "parents": [
        "852809559e4680ba4768262a6c3d21454fcd460e"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 29 09:45:48 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: fix scic_sds_remote_device_terminate_requests\n\nCommit 0815632 \"isci: unify remote_device stop_handlers\" introduced the\npossibility that not all requests get terminated if we reach the\nrequest_count.  Now that we properly reference count devices we don\u0027t\nneed this self-defense and can do the straightforward scan of all active\nrequests.\n\nReported-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nAcked-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "852809559e4680ba4768262a6c3d21454fcd460e",
      "tree": "a67170a9dd2a4c9f15d215f4b96e890cdb53a7e7",
      "parents": [
        "5076a1a97e2fa61c847a5fdd4b1991faf7716da6"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jun 28 15:05:53 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: unify isci_phy and scic_sds_phy\n\nThey are one in the same object so remove the distinction.  The near\nduplicate fields (owning_port, and isci_port) will be cleaned up\nafter the scic_sds_port isci_port unification.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5076a1a97e2fa61c847a5fdd4b1991faf7716da6",
      "tree": "251d207e75439da25d4d3a0353e0b853c8e79f2b",
      "parents": [
        "ba7cb22342a66505a831bb7e4541fef90e0193c9"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jun 27 14:57:03 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:52 2011 -0700"
      },
      "message": "isci: unify isci_request and scic_sds_request\n\nThey are one in the same object so remove the distinction.  The near\nduplicate fields (owning_controller, and isci_host) will be cleaned up\nafter the scic_sds_contoller isci_host unification.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ba7cb22342a66505a831bb7e4541fef90e0193c9",
      "tree": "759acb8d84333dd0e61ac5c157ef3c4661bfe74c",
      "parents": [
        "db0562509800a2d4cb5cb14a66413c30484f165c"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jun 27 11:56:41 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: rename / clean up scic_sds_stp_request\n\n* Rename scic_sds_stp_request to isci_stp_request\n* Remove the unused fields and union indirection\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "db0562509800a2d4cb5cb14a66413c30484f165c",
      "tree": "d05cc34b78a8f2a6b9024b8d45e5e8e50786ee64",
      "parents": [
        "38d8879baeb61b6946052739e7c03fa79b3a57f0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jun 17 14:18:39 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: preallocate requests\n\nthe dma_pool interface is optimized for object_size \u003c\u003c page_size which\nis not the case with isci_request objects and the dma_pool routines show\nup in the top of the profile.\n\nThe old io_request_table which tracked whether tci slots were in-flight\nor not is replaced with an IREQ_ACTIVE flag per request.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "38d8879baeb61b6946052739e7c03fa79b3a57f0",
      "tree": "66714c4769ba5e81311f33a6ded544b5e9a02c6c",
      "parents": [
        "312e0c2455c18716cf640d4336dcb1e9e5053818"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 23 14:33:48 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: combine request flags\n\nCombine three bools into one unsigned long \u0027flags\u0027.  Doesn\u0027t increase the\nrequest size due to packing. (to do: optimize the structure layout).\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "312e0c2455c18716cf640d4336dcb1e9e5053818",
      "tree": "be2dbc9a3e5ba39783448f0029231ea43e6e0428",
      "parents": [
        "9274f45ea551421cd3bf329de9dd8d1e6208285a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jun 28 13:47:09 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: unify can_queue tracking on the tci_pool, uplevel tag assignment\n\nThe tci_pool tracks our outstanding command slots which are also the \u0027index\u0027\nportion of our tags.  Grabbing the tag early in -\u003elldd_execute_task let\u0027s us\ndrop the isci_host_can_queue() and -\u003ewas_tag_assigned_by_user infrastructure.\n-\u003ewas_tag_assigned_by_user required the task context to be duplicated in\nrequest-local buffer.  With the tci established early we can build the\ntask_context directly into its final location and skip a memcpy.\n\nWith the task context buffer at a known address at request construction we\nhave the opportunity/obligation to also fix sgl handling.  This rework feels\nlike it belongs in another patch but the sgl handling and task_context are too\nintertwined.\n1/ fix the \u0027ab\u0027 pair embedded in the task context to point to the \u0027cd\u0027 pair in\n   the task context (previously we were prematurely linking to the staging\n   buffer).\n2/ fix the broken iteration of pio sgls that assumes all sgls are relative to\n   the request, and does a dangerous looking reverse lookup of physical\n   address to virtual address.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9274f45ea551421cd3bf329de9dd8d1e6208285a",
      "tree": "25e21494d3c74a5b2965485f2d76c541d49cc68b",
      "parents": [
        "4cffe13e0dfd00f90c86b0153c751dab61a1bf1d"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Thu Jun 23 17:09:02 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: Terminate dev requests on FIS err bit rx in NCQ\n\nWhen the remote device transitions to a not-ready state because of\nan NCQ error condition, all outstanding requests to that device\nare terminated and completed to libsas on the normal path.  The\ndevice then waits for a READ LOG EXT command to issue on the task\nmanagement path.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4cffe13e0dfd00f90c86b0153c751dab61a1bf1d",
      "tree": "c9d04a30f845dcaa0eb750405e63bb43ca5657f1",
      "parents": [
        "7cafbf1bd56be44038148bb8f733ea6e6a6a2d53"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 23 23:44:52 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix frame received locking\n\nUpdates to the frame_rcvd before need to be atomic with respect to when\nthey are evaluated by libsas.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "7cafbf1bd56be44038148bb8f733ea6e6a6a2d53",
      "tree": "caf063a0640a33d37b198c3dd5c71ce04247a493",
      "parents": [
        "086a0dabc5bf154e13604a6d71e2d051207f9718"
      ],
      "author": {
        "name": "Maciej Patelczyk",
        "email": "maciej.patelczyk@intel.com",
        "time": "Tue Jun 21 22:03:13 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: possible buffer overflow in isci_parse_oem_parameters fixed\n\nscu_index is a parameter of isci_parse_eom_parameters and is an index\nin controller table. There is a check: scu_index \u003e SCI_MAX_CONTROLLERS\nwhich is insufficient and should be: scu_index \u003e\u003d SCI_MAX_CONTROLLERS.\nscu_index is used as an index in the table which size is\nSCI_MAX_CONTROLLERS.\n\nSigned-off-by: Maciej Patelczyk \u003cmaciej.patelczyk@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "086a0dabc5bf154e13604a6d71e2d051207f9718",
      "tree": "1fbcde709c24fd5c5ebd8451b96e567ba5e1c1d4",
      "parents": [
        "e9bf709564e90abea25ca7aeae8c3de5cc6468d7"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jun 21 16:23:03 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix isci_task_execute_tmf completion\n\n1/ fix the timeout for wait_for_completion_timeout\n2/ In the tmf timeout case we need to wait for our termination callback\n3/ Once the request is successfully started it will be freed according to the\n   normal lifetime for requests.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e9bf709564e90abea25ca7aeae8c3de5cc6468d7",
      "tree": "e4569a311fd0181109ad7b265425a74af2a41553",
      "parents": [
        "ddcc7e347a891937be65358b43f40b7f81185f8f"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 16 16:59:56 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix support for arbitrarily large smp requests\n\nInstead of duplicating the smp request buffer reuse the one provided by\nlibsas.  This future proofs the driver to support arbitrarily large smp\nrequests, and shrinks the request structure size by ~700 bytes.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ddcc7e347a891937be65358b43f40b7f81185f8f",
      "tree": "35492d904678bb36560efa05dd1a474e9ee78b36",
      "parents": [
        "5edc33480c1c363ab361a881f2957b9fba5185cf"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jun 17 10:40:43 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix dma_unmap_sg usage\n\nOne bug and a cleanup:\n1/ Fix cases where we were unmapping invalid addresses (smp requests were\n   being unmapped)\n\n[  604.662770] ------------[ cut here ]------------\n[  604.668026] WARNING: at lib/dma-debug.c:800 check_unmap+0x418/0x740()\n[  604.675315] Hardware name: SandyBridge Platform\n[  604.680465] isci 0000:03:00.0: DMA-API: device driver tries to free an invalid DMA memory address\n\n2/ The unmap routine is too large to be an inline function, and\n   isci_request_io_request_get_next_sge is unused.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5edc33480c1c363ab361a881f2957b9fba5185cf",
      "tree": "6725ee62eb2a2c48a2855701e1e8c5bc17d26715",
      "parents": [
        "ff60639dc9a461883db9192d2da0674a00339f12"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 16 17:20:35 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix smp response frame overrun\n\nDue to a typo we currently copy way too much when copying over the\nresponse data, but since a request is likely backed by a full page\nallocation we don\u0027t corrupt live data.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ff60639dc9a461883db9192d2da0674a00339f12",
      "tree": "5d4e8b51ae522b89240e332054f031cee4515c87",
      "parents": [
        "f2088267514b39af1a94409168101527769a911c"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jun 17 13:34:43 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: kill device_sequence\n\nNow that we have upleveled device reassignment protection to the\nisci_remote_device reference count we no longer need this level of\nself-defense.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f2088267514b39af1a94409168101527769a911c",
      "tree": "9155ce7eb3edf40ecdabc690bff34622ecea1294",
      "parents": [
        "209fae14fabfd48525e5630bebbbd4ca15090c60"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 16 11:26:12 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: kill isci_remote_device_change_state()\n\nNow that \"stopping/stopped\" are one in the same and signalled by a NULL device\npointer the rest of the device status infrastructure can be removed (-\u003estatus\nand -\u003estate_lock).  The \"not ready for i/o state\" is replaced with a state\nflag, and is evaluated under scic_lock so that we don\u0027t see transients from\ntaking the device reference to submitting the i/o.\n\nThis also fixes a potential leakage of can_queue slots in the rare case that\nSAS_TASK_ABORTED is set at submission.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "209fae14fabfd48525e5630bebbbd4ca15090c60",
      "tree": "b251b9b394b3493cc15242ea31002abcb4e9bb59",
      "parents": [
        "360b03ed178a4fe3971b0a098d8feeb53333481b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jun 13 17:39:44 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: atomic device lookup and reference counting\n\nWe have unsafe references to remote devices that are notified to\ndisappear at lldd_dev_gone.  In order to clean this up we need a single\ncanonical source for device lookups and stable references once a lookup\nsucceeds.  Towards that end guarantee that domain_device.lldd_dev is\nNULL as soon as we start the process of stopping a device.  Any code\npath that wants to safely lookup a remote device must do so through\ntask-\u003edev-\u003elldd_dev (isci_lookup_device()).\n\nFor in-flight references outside of scic_lock we need reference counting\nto ensure that the device is not recycled before we are done with it.\nSimplify device back references to just scic_sds_request.target_device\nwhich is now the only permissible internal reference that is maintained\nrelative to the reference count.\n\nThere were two occasions where we wanted new i/o\u0027s to be treated as\nSAS_TASK_UNDELIVERED but where the domain_dev-\u003elldd_dev link is still\nintact.  Introduce a \u0027gone\u0027 flag to prevent i/o while waiting for libsas\nto take action on the port down event.\n\nOne \u0027core\u0027 leftover is that we currently call\nscic_remote_device_destruct() from isci_remote_device_deconstruct()\nwhich is called when the \u0027core\u0027 says the device is stopped.  It would be\nmore natural for the final put to trigger\nisci_remote_device_deconstruct() but this implementation is deferred as\nit requires other changes.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "360b03ed178a4fe3971b0a098d8feeb53333481b",
      "tree": "4641e9eb68e1e027aa089e4a21c862c1170ca056",
      "parents": [
        "0d0cf14c9bd2943ed5afd15df459f564d85eacde"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 15 11:11:03 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: fix ssp response iu buffer size in isci_tmf\n\nIn isci_task_request_complete() we save the response/sense data from the\ncommand.  Make sure isci_tmf has enough space to hold the full response.\n\n[ it does not look like we actually use this data, and\n  response_data_len/sense_data_len should be specifying the byte count,\n  in any event do the simple fix first so we don\u0027t corrupt memory ]\n\nReported-by: Adam Gruchala \u003cadam.gruchala@intel.com\u003e\nTested-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "0d0cf14c9bd2943ed5afd15df459f564d85eacde",
      "tree": "b996109708782750f7f3d58fea957b5cf19f0fa6",
      "parents": [
        "994a9303d33f8238d57f58c26067b6d4ac9af222"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jun 13 00:51:30 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: cleanup request allocation\n\nRather than return an error code and update a pointer that was passed by\nreference just return the request object directly (or null if allocation\nfailed).\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "994a9303d33f8238d57f58c26067b6d4ac9af222",
      "tree": "8a7a1f680761ee3cfb2a258c2784194eea69b703",
      "parents": [
        "dd047c8e2bca22856050dbe0378a37cf44eecc97"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 09 16:04:28 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: cleanup/optimize queue increment macros\n\nEvery single i/o or event completion incurs a test and branch to see if\nthe cycle bit changed.  For power-of-2 queue sizes the cycle bit can be\nread directly from the rollover of the queue pointer.\n\nLikely premature optimization, but the hidden if() and hidden\nassignments / side-effects in the macros were already asking to be\ncleaned up.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "dd047c8e2bca22856050dbe0378a37cf44eecc97",
      "tree": "5dab5c46acd144024f8cc961a34ae8374343a5d9",
      "parents": [
        "ac668c69709c7d927015c5cf3d9e87bf4eaaf57d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Jun 09 11:06:58 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: cleanup tag macros\n\nA tag is a 16 bit number where the upper four bits is a sequence number\nand the remainder is the task context index (tci).  Sanitize the macro\nnames and shave 256-bytes out of scic_sds_controller by reducing the size of\nio_request_sequence.\n\nscic_sds_io_tag_construct --\u003e ISCI_TAG\nscic_sds_io_tag_get_sequence --\u003e ISCI_TAG_SEQ\nscic_sds_io_tag_get_index() --\u003e ISCI_TAG_TCI\nscic_sds_io_sequence_increment() [delete / open code]\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ac668c69709c7d927015c5cf3d9e87bf4eaaf57d",
      "tree": "16a42117d260a86b8217d266ab65b25438c48e06",
      "parents": [
        "9b917987fd16d0687afe550a02f68099419f5d43"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jun 07 18:50:55 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:51 2011 -0700"
      },
      "message": "isci: cleanup/optimize pool implementation\n\nThe circ_buf macros are ~6% faster, as measured by perf, because they take\nadvantage of power-of-two math assumptions i.e. no test and branch for\nrollover. Their semantics are clearer than the hidden side effects in pool.h\n(like sci_pool_get() which hides an assignment).\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9b917987fd16d0687afe550a02f68099419f5d43",
      "tree": "c7fa80125750e2c624a271867eca5d3e61e25aae",
      "parents": [
        "fd0527ab15bfd96f04b084b1b2550f80cf151b60"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:31 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Disable link layer hang detection\n\nSome targets exceed the hang detect timer.  Use the OS timeout to\ncatch hung tasks.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "fd0527ab15bfd96f04b084b1b2550f80cf151b60",
      "tree": "09aa91b2f990da3145c025343a865c3a59524611",
      "parents": [
        "fd53660120b5eda06539225de56755dc389a4e64"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:26 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Hard reset failure will link reset all phys in the port\n\nIn the case where the hard reset process fails, each link in\nthe port is put through a link reset sequence.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "fd53660120b5eda06539225de56755dc389a4e64",
      "tree": "97780e0cd62fd12ba2e171a0524ca5f335ba5906",
      "parents": [
        "980d3aeb3828b0fdf2a0b2e893d238130b014575"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:22 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Explicitly decode remote node ready and suspended states\n\nThe remote node context should only signal a device reset condition\nin a suspended state.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "980d3aeb3828b0fdf2a0b2e893d238130b014575",
      "tree": "76fcb476d6cb9ab4d8307ec7ff4dcfffbf1d296f",
      "parents": [
        "77c852f312243192b1f2ce7fc56d678784786692"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jun 20 15:11:22 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: fix isci_terminate_pending() list management\n\nWalk through the list of pending requests being careful to consider that\nmultiple requests can be terminated when the lock is dropped (i.e.\ninvalidating the \u0027next\u0027 reference established by\nlist_for_each_entry_safe).\n\nAlso noticed that all callers to isci_terminate_pending_requests()\nspecifying terminating, so just drop the parameter.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "77c852f312243192b1f2ce7fc56d678784786692",
      "tree": "bb0f8a9694f1f2cf4d7985ef3dc40af79963c4f7",
      "parents": [
        "f53a3a32c1e799e27f63bff7b42b4c36749e5e6f"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:16 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Handle timed-out request terminations correctly\n\nIn the situation where a termination of an I/O times-out,\nmake sure that the linkage from the request to the task\nis severed completely.  Also make sure that the selection\nof tasks to terminate occurs under scic_lock.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f53a3a32c1e799e27f63bff7b42b4c36749e5e6f",
      "tree": "0861e3c856227ad8d910b764ca9d6a91d1887240",
      "parents": [
        "cde76fbf1f27551a08860227765ae8d5026ac0d9"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:11 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Requests that do not start must be set to \"complete\"\n\nRequests that fail at start because of a reset pending condition\nmust be set to complete in order to allow for later cleanup.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "cde76fbf1f27551a08860227765ae8d5026ac0d9",
      "tree": "15b05ab39908e634cd633232025025d54a94a0ed",
      "parents": [
        "61aaff49e20fdb700f1300a49962bc76effc77fc"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:09:06 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Add decode for SMP request retry error condition\n\nThere are situations with slow expanders in which a first attempt\nto execute an SMP request will fail with a timeout.  Immediate\nsubsequent retries will generally succeed.  This change makes sure\nSMP I/O failures are immediately failed to libsas so that retries\nhappen with no discovery process timeout delay.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "61aaff49e20fdb700f1300a49962bc76effc77fc",
      "tree": "e00556108ba35fe5610673d1f10cde3440e4ed12",
      "parents": [
        "ff717ab05f0c33f93514eccea6dfe1a15983e1d1"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Tue Jun 21 12:16:33 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: filter broadcast change notifications during SMP phy resets\n\nWhen resetting a sata device in the domain we have seen occasions where\nlibsas prematurely marks a device gone in the time it takes for the\ndevice to re-establish the link.  This plays badly with software raid\narrays.  Other libsas drivers have non-uniform delays in their reset\nhandlers to try to cover this condition, but not sufficient to close the\nhole.  Given that a sata device can take many seconds to recover we\nfilter bcns and poll for the device reattach state before notifying\nlibsas that the port needs the domain to be rediscovered.  Once this has\nbeen proven out at the lldd level we can think about uplevelling this\nfeature to a common implementation in libsas.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\n[ use kzalloc instead of kmem_cache ]\nSigned-off-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\n[ use eventq and time macros ]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ff717ab05f0c33f93514eccea6dfe1a15983e1d1",
      "tree": "e5894d5bd8138ec1c56bcb6b754d04a862f86804",
      "parents": [
        "7c78da3175177c905a75c54b5830029c778494ea"
      ],
      "author": {
        "name": "Jeff Skirvin",
        "email": "jeffrey.d.skirvin@intel.com",
        "time": "Mon Jun 20 14:08:51 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Move the reset delay after the remote node resumption.\n\nDelay after bringing up the RNC to allow for resumption latency.\n\nSigned-off-by: Jeff Skirvin \u003cjeffrey.d.skirvin@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "7c78da3175177c905a75c54b5830029c778494ea",
      "tree": "6b5f74e75ec0a0393ed5ed504bda78765ef66570",
      "parents": [
        "dbb0743a58825d94f1b3fdfa90a8d61dfef88f7b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 01 16:00:01 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: remove \u0027min memory\u0027 infrastructure\n\nThe old \u0027core\u0027 had aspirations of running in severely memory constrained\nenvironments like bios option-rom, it\u0027s not needed for Linux and gets in\nthe way of other cleanups (like unifying/reducing the number of structure\nmembers in scic_sds_controller/isci_host).\n\nThis also fixes a theoretical bug in that the driver would blindly override\nthe silicon advertised limits for number of ports, task contexts, and remote\nnode contexts.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "dbb0743a58825d94f1b3fdfa90a8d61dfef88f7b",
      "tree": "b7a69335b9480fae3c12380e94f22e8cfa197595",
      "parents": [
        "12ef65444de9d387a383b9991960848bed5bbe74"
      ],
      "author": {
        "name": "Adam Gruchala",
        "email": "adam.gruchala@intel.com",
        "time": "Wed Jun 01 22:31:03 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Added support for C0 to SCU Driver\n\nC0 silicon updates the pci revision id and requires new AFE parameters\nfor phy signal integrity.  Support for previous silicon revisions is\ndeprecated (it\u0027s also broken for the theoretical case of multiple\ncontrollers at different silicon revisions, all the more reason to get\nit removed as soon as possible)\n\nSigned-off-by: Adam Gruchala \u003cadam.gruchala@intel.com\u003e\n[fixed up deprecated silicon support]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "12ef65444de9d387a383b9991960848bed5bbe74",
      "tree": "cc7145adf102b57ae4bc347974b23974d795d2c8",
      "parents": [
        "e301370ac553a9a0ac0d1d25e769b86cf60395b3"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu Jun 02 00:10:50 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: additional state machine cleanup\n\nAdditional state machine cleanups:\n\n o Remove static functions sci_state_machine_exit_state() and\n   sci_state_machine_enter_state()\n o Combines sci_base_state_machine_construct() and\n   sci_base_state_machine_start() into a single function,\n   sci_init_sm()\n o Remove sci_base_state_machine_stop() which is unused.\n o Kill state_machine.[ch]\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\n[fixed too large to inline functions]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e301370ac553a9a0ac0d1d25e769b86cf60395b3",
      "tree": "58c00e0aeb21c3101df389d4b5e34f47e4b32119",
      "parents": [
        "8d2c65c09c9e0adc16070562e7944c1c3277f332"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu Jun 02 00:10:43 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: state machine cleanup\n\nThis cleans up several areas of the state machine mechanism:\n\n o Rename sci_base_state_machine_change_state to sci_change_state\n o Remove sci_base_state_machine_get_state function\n o Rename \u0027state_machine\u0027 struct member to \u0027sm\u0027 in client structs\n o Shorten the name of request states\n o Shorten state machine state names as follows:\n        SCI_BASE_CONTROLLER_STATE_xxx to SCIC_xxx\n        SCI_BASE_PHY_STATE_xxx to SCI_PHY_xxx\n        SCIC_SDS_PHY_STARTING_SUBSTATE_xxx to SCI_PHY_SUB_xxx\n        SCI_BASE_PORT_STATE_xxx to SCI_PORT_xxx and\n        SCIC_SDS_PORT_READY_SUBSTATE_xxx to SCI_PORT_SUB_xxx\n        SCI_BASE_REMOTE_DEVICE_STATE_xxx to SCI_DEV_xxx\n        SCIC_SDS_STP_REMOTE_DEVICE_READY_SUBSTATE_xxx to SCI_STP_DEV_xxx\n        SCIC_SDS_SMP_REMOTE_DEVICE_READY_SUBSTATE_xxx to SCI_SMP_DEV_xxx\n        SCIC_SDS_REMOTE_NODE_CONTEXT_xxx_STATE to SCI_RNC_xxx\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "8d2c65c09c9e0adc16070562e7944c1c3277f332",
      "tree": "2cf1aca287cab7182952aa5a853cd8a759d93eb4",
      "parents": [
        "bf482c6069b514b7fe57a048ae1b6f11cf3bb10c"
      ],
      "author": {
        "name": "Dave Jiang",
        "email": "dave.jiang@intel.com",
        "time": "Wed Jun 01 09:03:08 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Removing unused variables compiler warnings\n\nNewer gcc\u0027s are better at identifying \"set, but not used\" variables.\n\nSigned-off-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "bf482c6069b514b7fe57a048ae1b6f11cf3bb10c",
      "tree": "0630cb34b500867fe362dcb610a2ea3b1e44c6ea",
      "parents": [
        "77d67385f7b4a630912fd567f104946be137f477"
      ],
      "author": {
        "name": "Dave Jiang",
        "email": "dave.jiang@intel.com",
        "time": "Wed May 25 05:04:35 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Retrieve the EFI variable for OEM parameter\n\nWe can call the EFI get_variable service routine directly to retrieve\nthe EFI variable that holds the OEM parameters table.\n\nSigned-off-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "77d67385f7b4a630912fd567f104946be137f477",
      "tree": "c180e5fd1721aca43d0296a61d36562420d30ac4",
      "parents": [
        "8db02da52895285e99d7eb2fa825fd393e61d9c5"
      ],
      "author": {
        "name": "Dave Jiang",
        "email": "dave.jiang@intel.com",
        "time": "Wed May 25 02:21:57 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: removing the kmalloc in smp request construct\n\nIt doesn\u0027t look like there is any reason to do a kmalloc. We can do the\nbyte swap in place and avoid the allocation. This allow us to remove\na kmalloc and a memcpy.\n\nSigned-off-by: Dave Jiang \u003cdave.jiang@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "8db02da52895285e99d7eb2fa825fd393e61d9c5",
      "tree": "8ef382b35fa4cdad9800a774ac4d3fcd3de69e85",
      "parents": [
        "fd18388bc5820b3e7807302ac18e8e7de83c9f4c"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 12:00:22 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: remove isci_timer interface\n\nDelete code which is no longer used.\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "fd18388bc5820b3e7807302ac18e8e7de83c9f4c",
      "tree": "475c99244c3bcac1f51defec870bb307b74bafe3",
      "parents": [
        "bb3dbdf6c835a145e46119ed18a920a774694583"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 12:00:15 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:50 2011 -0700"
      },
      "message": "isci: Remove tmf timeout_timer\n\nReplace the timeout_timer in the isci_tmf with a call to\nwait_for_completion_timeout\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "bb3dbdf6c835a145e46119ed18a920a774694583",
      "tree": "0ce8f5823212a451a705d83008d23c89f363068f",
      "parents": [
        "6cb5853d3e252015eaf72d3761491e3da959556d"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 20:26:02 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: convert phy_startup_timer to sci_timer\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "6cb5853d3e252015eaf72d3761491e3da959556d",
      "tree": "e62addf161577f80ed350ef5478a2f9d558a2a48",
      "parents": [
        "0473661a125905240879456567e117ed8a58cf5d"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 11:59:56 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: convert scic_timeout_timer to sci_timer\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "0473661a125905240879456567e117ed8a58cf5d",
      "tree": "47ad48e17b41a32c5d859dee5121737ba4c98ebb",
      "parents": [
        "a628d478570d71fb8751ad09b8017139c5056002"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 20:17:47 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: convert power control timer to sci_timer\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "a628d478570d71fb8751ad09b8017139c5056002",
      "tree": "109dc04c6542abc528c53826ba3834e8e4c52adc",
      "parents": [
        "ac0eeb4f774261d1da21a68169f7ddd4f6c082fc"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 11:59:36 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: convert phy sata_timeout_timer to sci_timer\n\nConvert the sata_timeout_timer in the scic_sds_phy struct to\nuse a struct sci_timer\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ac0eeb4f774261d1da21a68169f7ddd4f6c082fc",
      "tree": "28953f87b323fdc73f00642115910aab619e0150",
      "parents": [
        "5553ba2be0f3e3741e1a885a33d2b89921f9fd48"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 20:00:51 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: convert port config agent timer to sci_timer\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\n[squashed collateral cleanups]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5553ba2be0f3e3741e1a885a33d2b89921f9fd48",
      "tree": "ba29bd7a120cc170b4b6e9f09ee8a4751a3773be",
      "parents": [
        "9269e0e898594c65dee6b20d4ed48e33dbbd4eeb"
      ],
      "author": {
        "name": "Edmund Nadolski",
        "email": "edmund.nadolski@intel.com",
        "time": "Thu May 19 11:59:10 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: replace isci_timer list with proper embedded timers\n\nRather than preallocating a list of timers and doling them out at runtime,\nembed a struct timerlist in each object that needs one.  A struct sci_timer\ninterface is introduced to manage the timer cancellation semantics which\ncurrently need to guarantee the timer is cancelled while holding\nspin_lock(ihost-\u003escic_lock).  Since the timeout functions also need to acquire\nthe lock it currently prevents the driver from using del_timer_sync() for\nruntime cancellations.\n\ndel_timer_sync() is used however before the objects go out of scope.\n\nSigned-off-by: Edmund Nadolski \u003cedmund.nadolski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "9269e0e898594c65dee6b20d4ed48e33dbbd4eeb",
      "tree": "f08aebe48d8005eec30a439c1c2d0e1e4b15d4a4",
      "parents": [
        "f34d9e5d3f34f395a497a8747316b04ef3e865b1"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 07:42:17 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: add some type safety to the state machine interface\n\nNow that any given object type only has one state_machine we can use\ncontainer_of() to get back to the given state machine owner.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f34d9e5d3f34f395a497a8747316b04ef3e865b1",
      "tree": "30a779e43cf6323cba5993e6df94acb4f6616faf",
      "parents": [
        "ed3efb7784cb0772558e9cc9440bd6c9a3139be4"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 09:27:52 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify rnc start{io|task} handlers\n\nUnify rnc start{io|task} handlers and delete the state handler\ninfrastructure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "ed3efb7784cb0772558e9cc9440bd6c9a3139be4",
      "tree": "c61c9ec150b30b0c4ba85075a481f6c124a56b33",
      "parents": [
        "c845ae96bcb1625a093003248ffaf13b92a81ac2"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 08:50:23 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify rnc suspend/resume handlers\n\nUnify rnc suspend/resume handlers and delete the state handlers.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c845ae96bcb1625a093003248ffaf13b92a81ac2",
      "tree": "eb9a026332b5770783f1f92f7ab72db51b367d73",
      "parents": [
        "338e386d12c2440e39c987d35fda403d319a79a0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 08:26:56 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify rnc destruct handlers\n\nUnify rnc destruct handlers and delete the state handler.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "338e386d12c2440e39c987d35fda403d319a79a0",
      "tree": "912dec715b326319ed2631aa7dacad4e05d4a641",
      "parents": [
        "6813820c7b892e1a5c2306808a5ccc8a27b7946d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 07:46:59 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify rnc event handlers\n\nUnify rnc event handlers and delete the state handler.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "6813820c7b892e1a5c2306808a5ccc8a27b7946d",
      "tree": "42a10526a557c37ec66cf2b8b45cda83923222fa",
      "parents": [
        "051266caaeb15719553c5316e3d43b533d3cd5a0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 07:16:06 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify port start_io and complete_io handlers\n\nUnify the handlers and kill the state handler infrastructure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "051266caaeb15719553c5316e3d43b533d3cd5a0",
      "tree": "c3db604dbdf2da01ed27d80921cd302b364fcb3e",
      "parents": [
        "13721e186fd31cd8475e635a89383853871fdbf1"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Thu May 12 19:10:14 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify port link_up and link_down handlers\n\nUnify the handlers and kill the state handler implementations.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "13721e186fd31cd8475e635a89383853871fdbf1",
      "tree": "b6509d20bb521c0197b1b5c81087231c25ce8586",
      "parents": [
        "bd6713b416bbfc7d7180114f7cc543b152cc1725"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Thu May 12 19:10:08 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: remove port frame and event handlers\n\nUnused infrastructure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "bd6713b416bbfc7d7180114f7cc543b152cc1725",
      "tree": "46c758cf86fe4068a2b2aa9322a395b138a1afb6",
      "parents": [
        "e6ec5afde9794f50e60788bd10760fcd0d609252"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Thu May 12 19:10:03 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify port reset, add_phy, and remove_phy handlers\n\nUnify the implementations and remove the state handlers.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e6ec5afde9794f50e60788bd10760fcd0d609252",
      "tree": "e72faa18266238c021d7023a492e1ff70f561924",
      "parents": [
        "8bc80d303063d9540493be623df1c9a8dee9ccb8"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Wed May 11 23:52:37 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: remove port destruct handler\n\nThe handler was never used.\n\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "8bc80d303063d9540493be623df1c9a8dee9ccb8",
      "tree": "d19b14ebb64cc8e6afb05fbaeb1e3626494728f4",
      "parents": [
        "d76f71d988ef48384593ad97ebc762d9257d96a8"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Wed May 11 23:52:31 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: unify port stop handlers\n\nImplement the stop handlers directly in scic_sds_port_stop()\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d76f71d988ef48384593ad97ebc762d9257d96a8",
      "tree": "003e8decebcca6f31461acc3fee9d57349d442b9",
      "parents": [
        "e91f41ef809a2d1b8cdba52ac380aecd706c93dd"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Wed May 11 23:52:26 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: remove port start handler\n\nremove the handler from the port state handler table and implement the\nlogic directly in scic_sds_port_start().\n\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\n[remove a level of indirection]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e91f41ef809a2d1b8cdba52ac380aecd706c93dd",
      "tree": "3b3a82136e398355f0b7e07215741798a6007233",
      "parents": [
        "c777c26ca2a06164e1b8c8ccf4cd76cd645a9bbb"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Wed May 11 23:52:21 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:49 2011 -0700"
      },
      "message": "isci: merge port ready substates into primary state machine\n\nThis conversion was complicated by the fact that the ready state exit routine\ntook unconditional action beyond just stopping the substate machine (like in\nprevious conversions).  In order to ensure identical behaviour every state\ntransition needs to be instrumented to catch ready--\u003e!ready transitions and\nexecute scic_sds_port_invalidate_dummy_remote_node()\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\n[fix ready state exit handling]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c777c26ca2a06164e1b8c8ccf4cd76cd645a9bbb",
      "tree": "a55a4d14a746592be6d2361b8bbd09736894791e",
      "parents": [
        "4f20ef4f57aa52fd3356c143a8f3d2bd18dc61fc"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Wed May 11 23:52:16 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: c99 port state handlers\n\nName the table fields for consistancy and clarity.\n\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4f20ef4f57aa52fd3356c143a8f3d2bd18dc61fc",
      "tree": "27c2c01305cad71eb6ebaf96e67ad3ce8d834c30",
      "parents": [
        "5b1d4af25186f5d23dae7a538d8472dacd9486c8"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 06:00:31 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: clarify phy to port lookups\n\nWhile cleaning up the driver it is very tempting to convert scic_sds_get_*\nmacros to their open coded equivalent.  They are all just pointer dereferences\n*except* scic_sds_phy_get_port() which returns NULL if the phy is assigned to\nthe dummy port.  Clarify this by renaming it to phy_get_non_dummy_port().\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5b1d4af25186f5d23dae7a538d8472dacd9486c8",
      "tree": "287de24a436c0efedf7d68cc8facbfa689344d4e",
      "parents": [
        "23506a69e2ee761824c266f6e2cd541a7287c2a5"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:51:41 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy consume_power handlers\n\nUnify the implementations in scic_sds_phy_consume_power_handler(), and kill\nthe state handler plus infrastructure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "23506a69e2ee761824c266f6e2cd541a7287c2a5",
      "tree": "91d6769163a741a238c66848241690fab34873d0",
      "parents": [
        "c4441abc25a33ab259f01dce4b4d63721013f86d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:27:29 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy event handlers\n\nUnify the implementations in scic_sds_phy_event_handler(), and kill the state handler\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c4441abc25a33ab259f01dce4b4d63721013f86d",
      "tree": "85ea42e94f9d993963d6c815f009914c53f865f5",
      "parents": [
        "35b317bec511b4a5f87a637bf78b6d1d635c617d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:17:51 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy frame handlers\n\nUnify the implementations in scic_sds_phy_frame_handler(), and kill the state handler\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "35b317bec511b4a5f87a637bf78b6d1d635c617d",
      "tree": "c088233ba1207f11bc4a6989a8e5889b1c207f80",
      "parents": [
        "0cf36fa9f1197e669ac6f5efc51d0587bcc95e6e"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:10:41 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: remove phy destruct handlers\n\nUnused infrastructure.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "0cf36fa9f1197e669ac6f5efc51d0587bcc95e6e",
      "tree": "570d71d24ba7ffe1410bc04f4004f35e94fd09a4",
      "parents": [
        "931532364e7966f61683bdf40fa1698d6707f523"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:02:07 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy reset handlers\n\nUnify the implementations in scic_sds_phy_reset(), and kill the state handler\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "931532364e7966f61683bdf40fa1698d6707f523",
      "tree": "650417ae7c31cb108ac305a166282e1ede7dae1a",
      "parents": [
        "966699b50c61940e06ff39fb1085bea813f9a51d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 04:01:03 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy stop handlers\n\nMerge all implementations in scic_sds_phy_stop(), and kill the state handler\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "966699b50c61940e06ff39fb1085bea813f9a51d",
      "tree": "e9b7e4fe56a5334ed99964fc931695b0a6368b3f",
      "parents": [
        "4a33c525f0e94b57602abd1e43644cbf6f5418f4"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu May 12 03:44:24 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify phy start handlers\n\nImplement all handlers in scic_sds_phy_start(), and kill the state handler\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "4a33c525f0e94b57602abd1e43644cbf6f5418f4",
      "tree": "4f42dccac26c36af150322c6b7e152d31efe4aa1",
      "parents": [
        "79e2b6b27699c916e3c7cda18a26d47fea6017fb"
      ],
      "author": {
        "name": "Adam Gruchala",
        "email": "adam.gruchala@intel.com",
        "time": "Tue May 10 23:54:23 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: merge phy substates\n\nMerged states and substates into one state machine, as we always\nunconditionally transitioned to the substate machine it was straightforward to\nenter that substate from the starting state.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Adam Gruchala \u003cadam.gruchala@intel.com\u003e\n[fixed construction, starting_state_enter, and starting check]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "79e2b6b27699c916e3c7cda18a26d47fea6017fb",
      "tree": "3d8aa7d0f9b203f210f66d6026d9414327a7309c",
      "parents": [
        "a7e255a34220ba57eeeb75637c911974e54c08e7"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed May 11 08:29:56 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: remove the completion and event state handlers\n\nWith these handlers gone the rest of the state handler infrastructure is\nremoved.\n\nAdded some WARN_ONCEs where previously we would cause NULL pointer\ndereferences or silently run handlers from a previous state.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "a7e255a34220ba57eeeb75637c911974e54c08e7",
      "tree": "5f40bcae968de741393d4ad5c7d16b80d8d1408b",
      "parents": [
        "d1c637c35b33ddd2b405956e04b50939bb10ed2a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed May 11 08:27:47 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: remove request task context completion state handler\n\nUnlike the other conversions this only updates\nscic_sds_io_request_tc_completion() to call the old state handlers directly\n(with less verbose names).  This was done for future patch readability, the\nimplementations have only minor differences for different completion codes.\nWithout a reference to the function name it would be difficult to dicern which\nstate is being updated.  Considered changing the order to look up the\ncompletion code before the state but that was not a clean conversion either.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d1c637c35b33ddd2b405956e04b50939bb10ed2a",
      "tree": "e9283b5d36032d736bfab714283d60c616c546d4",
      "parents": [
        "f4636a7b2ab8288466b83a8459d47c43143a70dc"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed May 11 08:27:47 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify request frame handlers\n\nUnify the implementation in scic_sds_io_request_frame_handler and kill\nthe state handler.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f4636a7b2ab8288466b83a8459d47c43143a70dc",
      "tree": "4b8c8c425b7348c9b2a3ae1cf9a4c353adb3cc06",
      "parents": [
        "f00e6ba4996a34f098fe50c78077f0568fd838ec"
      ],
      "author": {
        "name": "Piotr Sawicki",
        "email": "piotr.sawicki@intel.com",
        "time": "Tue May 10 23:50:32 2011 +0000"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify request start handlers\n\nUnify the implementation in scic_sds_request_start and kill the state\nhandler.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Piotr Sawicki \u003cpiotr.sawicki@intel.com\u003e\n[remove scic_sds_request_constructed_state_start_handler]\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f00e6ba4996a34f098fe50c78077f0568fd838ec",
      "tree": "02bbbc01b8c392ca99b26c194580fc7a0f4f854a",
      "parents": [
        "5dec6f4e41340196d223caf922578c44dfe2295a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:39:11 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:48 2011 -0700"
      },
      "message": "isci: unify request abort handlers\n\nUnify the implementation in scic_sds_io_request_terminate and kill the state\nhandler.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "5dec6f4e41340196d223caf922578c44dfe2295a",
      "tree": "df5c8395f8cbabd1f4b77200b7e339cfbcd72e11",
      "parents": [
        "c72086e3c2897eaca5b99c005dd9844fdc784981"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:49 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: merge stp request substates into primary state machine\n\nRemove usage of the request substate machine for stp requests, and kill\nthe request substate infrastructure.\n\nSimilar to the previous conversions this adds the substates to the\nprimary state machine and arranges for the \u0027started\u0027 state to transition\nto the proper stp substate.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "c72086e3c2897eaca5b99c005dd9844fdc784981",
      "tree": "f15c4895fd0b761b360961bce15b9f07c7099548",
      "parents": [
        "f139303d17c47eff4c5b5407dee0a6d43e8fd146"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:48 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: merge smp request substates into primary state machine\n\nRemove usage of the request substate machine for smp requests identified by:\n\ttask-\u003etask_proto \u003d\u003d SAS_PROTOCOL_SMP\n\nWhile merging over the smp_request infrastructure noticed that all the\nassign buffer implementations are now equal, so moved it to\nscic_sds_general_request_construct.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f139303d17c47eff4c5b5407dee0a6d43e8fd146",
      "tree": "b58d13c01567500e7b0a451bbcd46dd78ceb4da7",
      "parents": [
        "e2f8db509fdd354bb7a68c86515e9d2d8909ccc9"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:47 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: merge ssp task management substates into primary state machine\n\nRemove usage of the request substate machine for ssp task management\nrequests identified by:\n\tireq-\u003ettype \u003d\u003d tmf_task \u0026\u0026 dev-\u003edev_type \u003d\u003d SAS_END_DEV;\n\nThe only routine that checks the base \u0027started\u0027 state is\nscic_sds_io_request_tc_completion which calls the substate machine\nhandler if we are not in the \u0027started\u0027 state or we are \u0027started\u0027 and no\nsubstate machine is defined.  This routine requires no conversion\nbecause we have transitioned out of \u0027started\u0027 and the substate routine\nwill be called naturally as a result.\n\nThere are also no side effects of this conversion on exiting the\n\u0027started\u0027, state because it only stops the substate machine, which is no\nlonger relevant for this transaction type.\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "e2f8db509fdd354bb7a68c86515e9d2d8909ccc9",
      "tree": "e27f2d33290b0c6f7ca20e408ce7f8ff9309dc43",
      "parents": [
        "d35bc1bd18ab9e986cfb67c5a281a70cfd717f05"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:46 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: uplevel port infrastructure\n\n* Move port configuration agent implementation\n* Merge core/scic_sds_port.[ch] into port.[ch]\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "d35bc1bd18ab9e986cfb67c5a281a70cfd717f05",
      "tree": "2f02bc1a855f1ccc2f6201f5300d1d823d80c085",
      "parents": [
        "f1f52e75939b56c40b3d153ae99faf2720250242"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:45 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: uplevel phy infrastructure\n\nMerge core/scic_sds_phy.[ch] into phy.[ch]\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f1f52e75939b56c40b3d153ae99faf2720250242",
      "tree": "9c5ba4f8bb6a589c6a038dac5bbba280f9de3ebe",
      "parents": [
        "3bff9d54ecba84e538da822349a9a6fd6e534539"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue May 10 02:28:45 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: uplevel request infrastructure\n\n* Consolidate tiny header files\n* Move files out of core/ (drop core/scic_sds_ prefix)\n* Merge core/scic_sds_request.[ch] into request.[ch]\n* Cleanup request.c namespace (clean forward declarations and global\n  namespace pollution)\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "3bff9d54ecba84e538da822349a9a6fd6e534539",
      "tree": "9a780a1ed7f1a82c1d381a6676ff742b904ea4be",
      "parents": [
        "63a3a15fb00ef49e50e98ff675094afcd92f113a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun May 08 22:15:10 2011 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sun Jul 03 04:04:47 2011 -0700"
      },
      "message": "isci: uplevel state machine\n\nunify core/sci_base_state.h and core/sci_base_state_machine.[ch] into\nstate_machine.[ch]\n\nReported-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    }
  ],
  "next": "63a3a15fb00ef49e50e98ff675094afcd92f113a"
}
