)]}'
{
  "log": [
    {
      "commit": "9a1a69a1f41cbefebf3172761f197db6aba71e68",
      "tree": "65a2a8fc525e66c50654b30602a8a43826827e36",
      "parents": [
        "c53a284f8be23735dc6b53929640a987055f2933"
      ],
      "author": {
        "name": "Andrew Vasquez",
        "email": "andrew.vasquez@qlogic.com",
        "time": "Wed Apr 29 13:12:39 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri May 15 12:16:46 2009 -0400"
      },
      "message": "[SCSI] fc-transport: Close state transition-window during rport deletion.\n\nAndrew Vasquez wrote:\n\u003e fc-transport: Close state transition-window during rport deletion.\n\u003e\n\u003e After an rport\u0027s state has transitioned to FC_PORTSTATE_BLOCKED,\n\u003e but, prior to making the upcall to \u0027block\u0027 the scsi-target\n\u003e associated with an rport, queued commands can recycle and\n\u003e ultimately run out of retries causing failures to propagate to\n\u003e upper-level drivers.  Close this transition-window by returning\n\u003e the non-\u0027retries\u0027 modifying DID_IMM_RETRY status for submitted\n\u003e I/Os.\n\nThe same can happen for iscsi when transitioning from logged in\nto failed and blocking the sdevs.\n\nThis patch converts iscsi and fc\u0027s transitions back to use DID_IMM_RETRY\ninstead of DID_TRANSPORT_DISRUPTED which has a limited number of retries\nthat we do not want to use for handling this race.\n\nSigned-off-by: Andrew Vasquez \u003candrew.vasquez@qlogic.com\u003e\n[Addition of iscsi and fc port online devloss case conversion by Mike Christie]\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e9da4d7f731dafc2b93ce7b31aa09c4d935ef978",
      "tree": "5394e6dfe88585cab608586f3cd2deb382c27f32",
      "parents": [
        "f8d3a644bec74fd55dbfb11f95af7bf98fa963dc"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Apr 19 19:17:54 2009 +0300"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 11:05:49 2009 -0500"
      },
      "message": "[SCSI] libosd: OSD2r05: on-the-wire changes for latest OSD2 revision 5.\n\nOSC\u0027s OSD2 target: [git clone git://git.open-osd.org/osc-osd/ master]\n(Initiator code prior to this patch must use: \"git checkout CDB_VER_OSD2r01\"\n in the target tree above)\n\nThis is a summery of the wire changes:\n\n * OSDv2_ADDITIONAL_CDB_LENGTH \u003d\u003d 192 \u003d\u003e 228 (Total CDB is now 236 bytes)\n * Attributes List Element Header grew, so attribute values are 8 bytes\n   aligned.\n * Cryptographic keys and signatures are 20 \u003d\u003e 32\n * Few new definitions.\n\n(Still missing new standard definitions attribute values, these do not change\n wire format and will be added later when needed)\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f8d3a644bec74fd55dbfb11f95af7bf98fa963dc",
      "tree": "ed34f7b0c573ecceea9a1b73ea6bba2f0752d527",
      "parents": [
        "71f32e31e5638df37904697e2d04182935add85d"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Apr 19 19:13:39 2009 +0300"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 11:05:41 2009 -0500"
      },
      "message": "[SCSI] libosd: OSD2r05: OSD_CRYPTO_KEYID_SIZE will grow 20 \u003d\u003e 32 bytes\n\nIn OSD2r04 draft, cryptographic key size changed to 32 bytes from\nOSD1\u0027s 20 bytes. This causes a couple of on-the-wire structures\nto change, including the CDB.\n\nIn this patch the OSD1/OSD2 handling is separated out in regard\nto affected structures, but on-the-wire is still the same. All\non the wire changes will be submitted in one patch for bisect-ability.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "71f32e31e5638df37904697e2d04182935add85d",
      "tree": "2f1ab62477f8d5129cbae751c219a2c069fa31b8",
      "parents": [
        "bf5e84f69618f416e89a5a53434a8c865e70252e"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Apr 19 19:11:42 2009 +0300"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 11:05:40 2009 -0500"
      },
      "message": "[SCSI] libosd: OSD2r05: Prepare for rev5 attribute list changes\n\nIn OSD2r05 draft each attribute list element header was changed\nso attribute-value would be 8 bytes aligned. In OSD2r01-r04\nit was aligned on 2 bytes. (This is because in OSD2r01 the complete\nelement was 8 bytes padded at end but the header was not adjusted\nand caused permanent miss-alignment.)\n\nOSD1 elements are not padded and might be or might not be aligned.\nOSD1 is still supported.\n\nIn this code we do all the code re-factoring to separate OSD1/OSD2\ndifferences but do not change actual wire format. All wire format\nchanges will happen in one patch later, for bisect-ability.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a29e7646f42a325a7f6cce34adbeb52e8db15566",
      "tree": "f45244f4f3394815a8991e5a05695f427033f40c",
      "parents": [
        "dd3fd72e692c8af007f70df4433c0cffe8582d8b"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Apr 21 16:27:41 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:19:31 2009 -0500"
      },
      "message": "[SCSI] libfc: Fix compilation warnings with allmodconfig\n\nWhen building with a .config generated from \u0027make allmodconfig\u0027\nsome build warnings are generated. This patch corrects the warnings,\nadds a FC_FID_NONE (\u003d 0) enumeration for FC-IDs and cleans up one\nvariable naming to meet our variable naming conventions. For example,\nfc_lport\u0027s should be named \"lport,\" not \"lp.\"\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b4c6f54632ad664a3d9e7f05e4ea0f1803e32755",
      "tree": "6d419c4a2cdf1e58ae8044d006c53df9cb856f07",
      "parents": [
        "76f6804e7e7bb836cbdf4a73fe6c5485e4cc04c2"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Tue Apr 21 16:27:04 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:18:57 2009 -0500"
      },
      "message": "[SCSI] libfc: Track rogue remote ports\n\nRogue ports are currently not tracked on any list. The only reference\nto them is through any outstanding exchanges pending on the rogue ports.\nIf the module is removed while a retry is set on a rogue port\n(say a Plogi retry for instance), this retry is not cancelled because there\nis no reference to the rogue port in the discovery rports list. Thus the\nlocal port can clean itself up, delete the exchange pool, and then the\nrogue port timeout can fire and try to start up another exchange.\n\nThis patch tracks the rogue ports in a new list disc-\u003erogue_rports. Creating\na new list instead of using the disc-\u003erports list keeps remote port code\nchange to a minimum.\n\n1)  Whenever a rogue port is created, it is immediately added to the\ndisc-\u003erogue_rports list.\n\n2) When the rogues port goes to ready, it is removed from the rogue list\nand the real remote port is added to the disc-\u003erports list\n\n3) The removal of the rogue from the disc-\u003erogue_rports list is done in\nthe context of the fc_rport_work() workQ thread in discovery callback.\n\n4) Real rports are removed from the disc-\u003erports list like before. Lookup\nis done only in the real rports list. This avoids making large changes\nto the remote port code.\n\n5) In fc_disc_stop_rports, the rogues list is traversed in addition to the\nreal list to stop the rogue ports and issue logoffs on them. This way, rogue\nports get cleaned up when the local port goes away.\n\n6) rogue remote ports are not removed from the list right away, but\nremoved late in fc_rport_work() context, multiple threads can find the same\nremote port in the list and call rport_logoff(). Rport_logoff() only\ncontinues with the logoff if port is not in NONE state, thus preventing\nmultiple logoffs and multiple list deletions.\n\n7) Since the rport is removed from the disc list at a later stage\n(in the disc callback), incoming frames can find the rport even if\nrport_logoff() has been called on the rport. When rport_logoff() is called,\nthe rport state is set to NONE, and we are trying to cancel all exchanges\nand retries on that port. While in this state, if an incoming\nPlogi/Prli/Logo or other frames match the rport, we should not reply\nbecause the rport is in the NONE state. Just drop the frame, since the\nrport will be deleted soon in the disc callback (fc_rport_work)\n\n8)  In fc_disc_single(), remove rport lookup and call to fc_disc_del_target.\nfc_disc_single() is called from recv_rscn_req() where rport lookup\nand rport_logoff is already done.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6b5d6c443a9b4fd71b633cef66b5db4de8a85787",
      "tree": "6b0ca6eaba58d51d3a0715ba9be40bf5449b40ed",
      "parents": [
        "9a6510eb3f030cedba32664498a610dc6d084d46"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Apr 21 15:32:32 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Apr 27 10:09:54 2009 -0500"
      },
      "message": "[SCSI] cxgb3i, iser, iscsi_tcp: set target can queue\n\nSet target can queue limit to the number of preallocated\nsession tasks we have.\n\nThis along with the cxgb3i can_queue patch will fix a throughput\nproblem where it could only queue one LU worth of data at a time.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "c751085943362143f84346d274e0011419c84202",
      "tree": "5323da4e3eba8126bf44e5107960ee2323d28a16",
      "parents": [
        "7b11428d37fe65643172feff66cd0a4d72d1932a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Apr 12 20:06:56 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 13 11:37:07 2009 -0700"
      },
      "message": "PM/Hibernate: Wait for SCSI devices scan to complete during resume\n\nThere is a race between resume from hibernation and the asynchronous\nscanning of SCSI devices and to prevent it from happening we need to\ncall scsi_complete_async_scans() during resume from hibernation.\n\nIn addition, if the resume from hibernation is userland-driven, it\u0027s\nbetter to wait for all device probes in the kernel to complete before\nattempting to open the resume device.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97c8389d54b9665c38105ea72a428a44b97ff2f6",
      "tree": "1548f9a3739241101f4e6f972418a16b45b52d57",
      "parents": [
        "af5f428763eefb6547d2bee055b559c903f2a749"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Mar 17 11:42:40 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:08 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfcoe: Add support for FIP. FCoE discovery and keep-alive.\n\nFIP is the new standard way to discover Fibre-Channel Forwarders (FCFs)\nby sending solicitations and listening for advertisements from FCFs.\n\nIt also provides for keep-alives and period advertisements so that both\nparties know they have connectivity.  If the FCF loses connectivity to\nthe storage fabric, it can send a Link Reset to inform the E_node.\n\nThis version is also compatible with pre-FIP implementations, so no\nconfigured selection between FIP mode and non-FIP mode is required.\n\nWe wait a couple seconds after sending the initial solicitation\nand then send an old-style FLOGI.  If we receive any FIP frames,\nwe use FIP only mode.  If the old FLOGI receives a response,\nwe disable FIP mode.  After every reset or link up, this\ndetermination is repeated.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "af5f428763eefb6547d2bee055b559c903f2a749",
      "tree": "d0546a73f55fa8465d0a0676b9a599f23622a093",
      "parents": [
        "a0a25da2a495a889664dc946942b8666665cd1e1"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Mar 17 11:42:35 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:07 2009 -0500"
      },
      "message": "[SCSI] fcoe: Add a header file defining the FIP protocol for FCoE.\n\nAdds include/scsi/fc/fc_fip.h for FIP protocol definitions.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a0a25da2a495a889664dc946942b8666665cd1e1",
      "tree": "f3ac1dd6adb76490afa828298e71992ba5045d8f",
      "parents": [
        "fdd78027fd472351783fb6110a72d991c1a07402"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Mar 17 11:42:29 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:07 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: fix double fcoe_softc memory alloc\n\nThe foce_softc mem was reserved by libfc_host_alloc as well as\nby fcoe_host_alloc.\n\nRemoves one liner fcoe_host_alloc completely, instead directly calls\nlibfc_host_alloc to alloc scsi_host with libfc for just one fcoe_softc\nas fcoe private data.\n\nMoves libfc_host_alloc to libfc.h since it is a libfc API, placed\nlport_priv API adjacent to libfc_host_alloc since this is related\nto scsi_host priv data.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "fdd78027fd472351783fb6110a72d991c1a07402",
      "tree": "47b4ba0804601873cb15a739a1f5c91e46660655",
      "parents": [
        "5e80f7f7c87990ffe7856a0d35a94ea52b8f4c59"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Mar 17 11:42:24 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:06 2009 -0500"
      },
      "message": "[SCSI] fcoe: cleans up libfcoe.h and adds fcoe.h for fcoe module\n\nRemoves no where used several inline functions prefixed with skb_*\nand be16_to_cpu.\n\nMoves fcoe module specific func prototypes to fcoe.c from libfcoe.h,\nmoved only need for build.\n\nAdds fcoe module header file fcoe.h and then moves fcoe module\nspecific fcoe_percpu_s and fcoe_softc to fcoe.h from libfcoe.h.\n\nMoves all defines from fcoe.c to fcoe.h since now fcoe module\nhas its own header file fcoe.h.\n\n[jejb: removed EXPORT_SYMBOL_GPL(fcoe_fc_crc) which caused a section mismatch]\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "7f3491429553cbff20367851fb897c449d028393",
      "tree": "403bc31bd97e48f6a197eb52db41b0dd827cae95",
      "parents": [
        "61e17afa89ad042c356e37d6d6f5654cba869036"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Mar 27 09:06:31 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:02 2009 -0500"
      },
      "message": "[SCSI] fcoe: removes default sw transport code file fcoe_sw.c\n\nMoves only required code from fcoe_sw.c to libfcoe.c towards having\njust one source file for fcoe module, this gets rid off default sw\ntransport code in a separate fcoe_sw.c file.\n\nVery minor renaming along this move, dropped _sw_ or _SW_ use\nin names and replaced them by _if_ as a auxiliary interface\nfunctions. Now some of these funcs can be removed or merged with\nother func after fcoe transport is gone, but that should be\nin another patch to keep this patch simple.\n\nNow the libfcoe.c file name for fcoe module doesn\u0027t go along well,\nso the libfcoe.c file renaming to fcoe.c as the only single fcoe\nmodule file is done in next patch to keep this patch clean\nand small for review.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "61e17afa89ad042c356e37d6d6f5654cba869036",
      "tree": "ee44fe999b7119d16e6eac38c6117e73e85c99b2",
      "parents": [
        "5919a59503577c2dc6eaa8bfba0f7bde3f9924ba"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Mar 27 09:05:17 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:01 2009 -0500"
      },
      "message": "[SCSI] fcoe: removes fc_transport_fcoe.[ch] code files\n\nRemove unused fc_transport_fcoe.c and fc_transport_fcoe.h\nfiles.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "5919a59503577c2dc6eaa8bfba0f7bde3f9924ba",
      "tree": "8b24bf78c4d21296990a598128cd334b59e4b0db",
      "parents": [
        "8976f424d43c80ea32b6e847226e1a8ccdb6e748"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Mar 27 09:03:29 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:23:00 2009 -0500"
      },
      "message": "[SCSI] fcoe: prep work to completely remove fc_transport_fcoe code\n\nThe fcoe transport code was added for generic FCoE transport\ninfrastructure to allow additional offload related module loading\non demand, this is not required anymore after recently added\ndifferent offload approach by having offload related func ops\nin netdev.\n\nThis patch removes fcoe transport related code use, calls functions\ndirectly between existing libfcoe.c and fcoe_sw.c for now, for\nexample fcoe_sw_destroy and fcoe_sw_create calling.\n\nThe fcoe_sw.c and libfcoe.c code will be further consolidated in\nlater patches and then also the default fcoe sw transport code\nfile fcoe_sw.c will be completely removed.\n\nThe fcoe transport code files are completely removed in next\npatch to keep this patch simple for reviewing.\n\n[This patch is an update to a previous patch. This update\nresolves a build error as well as fixes a defect related to\nnot calling fc_release_transport().]\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "582b45bc577f78b5bfff3db874594ce2d962b846",
      "tree": "b0cfe95b235aeca9b967cba8446db58b8a102533",
      "parents": [
        "5e5e92df49d4dfbef9ba981297c7f76d189376ac"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Mar 31 15:51:50 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:22:58 2009 -0500"
      },
      "message": "[SCSI] fcoe: Use per-CPU kernel function for dev_stats instead of an array\n\nRemove the hotplug creation of dev_stats, we allocate for all possible CPUs\nnow when we allocate the lport.\n\nv2: Durring the 2.6.30 merge window, before these patches were comitted,\n\u0027percpu_ptr\u0027 was renamed \u0027per_cpu_ptr\u0027. This latest update updates this\npatch for the name change.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "5e5e92df49d4dfbef9ba981297c7f76d189376ac",
      "tree": "aab8a56ee9cf9721e2189e745aeb758ab58cddcc",
      "parents": [
        "38eccabd1067b93af0fedbf447ab846e7df1ca66"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Mar 17 11:41:35 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:22:57 2009 -0500"
      },
      "message": "[SCSI] fcoe: Use percpu kernel funcs for struct fcoe_percpu_s\n\nConvert fcoe_percpu array to use the per-cpu variables\nthat the kernel provides. Use the kernel\u0027s functions to\naccess this structure.\n\nThe cpu member of the fcoe_percpu_s is no longer needed,\nso this patch removes it too.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "38eccabd1067b93af0fedbf447ab846e7df1ca66",
      "tree": "10f648d5b4cb1fc3754ec048da53be68117d467a",
      "parents": [
        "2df71b1a5bea7955872dbab5cf89183da697d0f9"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Mar 17 11:41:30 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Apr 03 09:22:57 2009 -0500"
      },
      "message": "[SCSI] fcoe: Initialize all possilbe skb_queue(s) when module is loaded\n\nCurrently the skb_queue is initialized every time the associated\nCPU goes online. This patch has libfcoe initializing the skb_queue\nfor all possible CPUs when the module is loaded.\n\nThis patch also re-orders some declarations in the fcoe_rcv()\nfunction so the structure declarations are grouped before\nthe primitive declarations.\n\nLastly, this patch converts all CPU indicies to use unsigned int\nsince CPU indicies should not be negative.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "5e7facb77ff4b6961d936773fb1f175f7abf76b7",
      "tree": "d94349cb57a1ef07528e23ac043ca0e1a3eeceb3",
      "parents": [
        "40a06e755d8524cd0b24f795e8bdce5ad19fc41b"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:06 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:29:39 2009 -0500"
      },
      "message": "[SCSI] iscsi class: remove host no argument from session creation callout\n\nWe do not need to have llds set the host no for the session\u0027s\nparent, because we know the session\u0027s parent is going to be\nthe host. This removes it from the session creation callback\nand converts the drivers.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "40a06e755d8524cd0b24f795e8bdce5ad19fc41b",
      "tree": "63e2ecb26254460fcadaaea612e5ab411625ba13",
      "parents": [
        "4d1083509a69a36cc1394f188b7b8956e5526a16"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:05 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:29:12 2009 -0500"
      },
      "message": "[SCSI] libiscsi: pass session failure a session struct\n\nThe api for conn and session failures is akward because\none takes a conn from the lib and one takes a session\nfrom the class. This syncs up the interfaces to use\nstructs from the lib.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "4d1083509a69a36cc1394f188b7b8956e5526a16",
      "tree": "7afdc7d1e1ae88ee5199d57d3fc8952f985620b7",
      "parents": [
        "32ae763e3fce4192cd008956a340353a2e5c3192"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:04 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:28:55 2009 -0500"
      },
      "message": "[SCSI] iscsi lib: remove qdepth param from iscsi host allocation\n\nThe qdepth setting was useful when we needed libiscsi to verify\nthe setting. Now we just need to make sure if older tools\npassed in zero then we need to set some default.\n\nSo this patch just has us use the sht-\u003ecmd_per_lun or if\nfor LLD does a host per session then we can set it on per\nhost basis.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "32ae763e3fce4192cd008956a340353a2e5c3192",
      "tree": "af13b359c4e54fe60c8eb76c8927b41468dcbe57",
      "parents": [
        "06d25af4edb60f9e9c7e74d342a6963a32e3392f"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:03 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:28:37 2009 -0500"
      },
      "message": "[SCSI] iscsi lib: have lib create work queue for transmitting IO\n\nWe were using the shost work queue which ended up being\na little akward since all iscsi hosts need a thread for\nscanning, but only drivers hooked into libiscsi need\na workqueue for transmitting. So this patch moves the\nxmit workqueue to the lib.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "06d25af4edb60f9e9c7e74d342a6963a32e3392f",
      "tree": "7a65886c2f0e1d6ff4a95e1f4fd5f005079a715d",
      "parents": [
        "e28f3d5b51ed07d822f135cd941b01e2d485270e"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:02 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:28:22 2009 -0500"
      },
      "message": "[SCSI] iscsi class: fix lock dep warning on logout\n\nWe never should hit the lock up that is spit out when\nlock dep is on and we logout. But we have been using the\nshost work queue in a odd way. This patch has us use the\nwork queue for scanning instead of creating our own,\nand this ends up also killing the lock dep warnings.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e28f3d5b51ed07d822f135cd941b01e2d485270e",
      "tree": "e64637e1e4f3bf6921f91729b6f299165929d6df",
      "parents": [
        "c93f87c727ad4e6a5d94cfab219b1492ccc5ca5e"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:46:01 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:28:06 2009 -0500"
      },
      "message": "[SCSI] libiscsi: don\u0027t cap queue depth in iscsi modules\n\nThere is no need to cap the queue depth in the modules. We set\nthis in userspace and can do that there. For performance testing\nwith ram based targets, this is helpful since we can have very\nhigh queue depths.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "1b2c7af877f427a2b25583c9033616c9ebd30aed",
      "tree": "9093ff19581e0366567ec359b3f41bc70f239f99",
      "parents": [
        "48a237a26db0a31404c83a88e984b37a30ddcf5a"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Mar 05 14:45:58 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:27:09 2009 -0500"
      },
      "message": "[SCSI] libiscsi: replace scsi_debug logging with session/conn logging\n\nThis makes the logging a compile time option and replaces\nthe scsi_debug macro with session and connection ones\nthat print out a driver model id prefix.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b277d2aa9a4d969002c4157bf77b76b9ad9ca04a",
      "tree": "1054ff4ab2d03eaaa527919380ed6334233f632b",
      "parents": [
        "39ca9a065a5a0a6f2f0cd648090a979ba3f4f018"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Feb 27 14:07:21 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:15:15 2009 -0500"
      },
      "message": "[SCSI] libfc: add support of large receive offload by ddp in fc_fcp\n\nWhen LLD supports direct data placement (ddp) for large receive of an scsi\ni/o coming into fc_fcp, we call into libfc_function_template\u0027s ddp_setup()\nto prepare for a ddp of large receive for this read I/O. When I/O is complete,\nwe call the corresponding ddp_done() to get the length of data ddped as well\nas to let LLD do clean up.\n\nfc_fcp_ddp_setup()/fc_fcp_ddp_done() are added to setup and complete a ddped\nread I/O described by the given fc_fcp_pkt. They would call into corresponding\nddp_setup/ddp_done implemented by the fcoe layer. Eventually, fcoe layer calls\ninto LLD\u0027s ddp_setup/ddp_done provided through net_device\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ea1e9a9df5e1fde7ad8878c85b4a097cad0ddcea",
      "tree": "5594c002619125f8976c7d3dacdd6791db497d2e",
      "parents": [
        "4d288d5767f853bfca25adc7b6030dc95518cb2e"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Feb 27 14:07:04 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:13:48 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: check offload features from LLD through netdev\n\nThis checks if net_devices supports FCoE offload ops in netdev_ops and it\nif it does, then sets up the corresponding flags in the associated fc_lport.\n\nFor large send offload, the maximum length supported in one large send is now\ndescribed by the added lso_max in fc_lport, which is setup initially from\nnetdev-\u003egso_max_size.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "211c738d86f3f423f1b218ab3a356c9538e38047",
      "tree": "b94677af2975bd2a455beb9ad3056e86d73cba70",
      "parents": [
        "7687fb9209422d35334995b8ace38de92e595d16"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Feb 27 14:06:37 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 13 15:09:00 2009 -0500"
      },
      "message": "[SCSI] net, fcoe: add ETH_P_FCOE for Fibre Channel over Ethernet (FCoE)\n\nThis adds eth type ETH_P_FCOE for Fibre Channel over Ethernet (FCoE),\nconsequently, the ETH_P_FCOE from fc_fcoe.h and fcoe skb-\u003eprotocol\nis not set as ETH_P_FCOE.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nAcked-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f290f1970f01287eaaffc798a677594a57ebd65e",
      "tree": "534b3ab262c3c791f80c8fd32dee7192395973dc",
      "parents": [
        "97218a1499391b174ea95e05b7a40fbb73e79813"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Feb 08 21:59:48 2009 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:13 2009 -0500"
      },
      "message": "[SCSI] Make scsi.h independent of the rest of the scsi includes\n\nThis allows it to compile and be used on the ps3 platform that wants\nto use the #define values in scsi.h without actually having\nCONFIG_SCSI set.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f078727b250c2653fc9a564f15547c17ebac3f99",
      "tree": "60cbd84965cbebc6a2898aa7664c25977d128b46",
      "parents": [
        "26243043f207b3faa00594a33e10b2103205f27b"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Sun Dec 14 01:23:45 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:10 2009 -0500"
      },
      "message": "[SCSI] remove scsi_req_map_sg\n\nNo one uses scsi_execute_async with data transfer now. We can remove\nscsi_req_map_sg.\n\nOnly scsi_eh_lock_door uses scsi_execute_async. scsi_eh_lock_door\ndoesn\u0027t handle sense and the callback. So we can remove\nscsi_io_context too.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "98f3aea2bd4b4f9cd7a6a6479ed9410787f756fd",
      "tree": "6b5eeab307ab09372c62e7aac4516548d763b030",
      "parents": [
        "1b9dce94c8a24a3f1a01fcdf688f2d903b32acdf"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 17:15:16 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:09 2009 -0500"
      },
      "message": "[SCSI] libosd: SCSI/OSD Sense decoding support\n\nImplementation of the osd_req_decode_sense() API. Can be called by\nlibrary users to decode what failed in command executions.\n\nAdd SCSI_OSD_DPRINT_SENSE Kconfig variable. Possible values are:\n0 - Do not print any errors to messages file \u003cKERN_ERR\u003e\n1 - (Default) Print only decoded errors that are not recoverable.\n    Recoverable errors are those that the target has complied with\n    the request but with a warning. For example read passed end of\n    object will return zeros after the last valid byte.\n2- Print all errors.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "1b9dce94c8a24a3f1a01fcdf688f2d903b32acdf",
      "tree": "c0e17494a5eb8f8701d3674afff26b91ccf593b3",
      "parents": [
        "c6572c983726fe3f3bb5f07e9afe3a9b8e402d1b"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 17:13:38 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:08 2009 -0500"
      },
      "message": "[SCSI] libosd: OSDv2 auto detection\n\nAuto detect an OSDv2 or OSDv1 target at run time. Note how none\nof the OSD API calls change. The tests do not know what device\nversion it is.\n\nThis test now passes against both the IBM-OSD-SIM OSD1 target\nas well as OSC\u0027s OSD2 target.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nReviewed-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "c6572c983726fe3f3bb5f07e9afe3a9b8e402d1b",
      "tree": "e5d1b19779db4d94dded752c2f8a940d9843ff5b",
      "parents": [
        "ae30c994a4bb70510fdcb9e7223805bb2a8bc9ee"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 17:09:40 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:08 2009 -0500"
      },
      "message": "[SCSI] libosd: OSD version 2 Support\n\nAdd support for OSD2 at run time. It is now possible to run with\nboth OSDv1 and OSDv2 targets at the same time. The actual detection\nshould be preformed by the security manager, as the version is encoded\nin the capability structure.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nReviewed-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "4ef1a3d70d02663f6bfe901db629e8e608da15b1",
      "tree": "f3b7f1f6ad65fcbc81af1dbdd0b0080d315e4df2",
      "parents": [
        "b799bc7da0ce5ba4a988c521a8fb10452eb419f0"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 16:59:50 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:07 2009 -0500"
      },
      "message": "[SCSI] libosd: attributes Support\n\nSupport for both List-Mode and Page-Mode osd attributes. One of\nthese operations may be added to most other operations.\n\nDefine the OSD standard\u0027s attribute pages constants and structures\n(osd_attributes.h)\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nReviewed-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b799bc7da0ce5ba4a988c521a8fb10452eb419f0",
      "tree": "47f1c70c15419a6da81cb718329326f4c1a7e246",
      "parents": [
        "95b05a7db5865855c32e0bb8b244c3a7aac1cfeb"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 16:58:03 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:07 2009 -0500"
      },
      "message": "[SCSI] osd_uld: API for retrieving osd devices from Kernel\n\nKernel clients like exofs can retrieve struct osd_dev(s)\nby means of below API.\n\n+ osduld_path_lookup() - given a path (e.g \"/dev/osd0\") locks and\nreturns the corresponding struct osd_dev, which is then needed\nfor subsequent libosd use.\n\n+ osduld_put_device() - free up use of an osd_dev.\n\nDevices can be shared by multiple clients. The osd_uld_device\u0027s\nlife time is governed by an embedded kref structure.\n\nThe osd_uld_device holds an extra reference to both it\u0027s\nchar-device and it\u0027s scsi_device, and will release these just\nbefore the final deallocation.\n\nThere are three possible lock sources of the osd_uld_device\n1. First and for most is the probe() function called by\n  scsi-ml upon a successful login into a target. Released in release()\n  when logout.\n2. Second by user-mode file handles opened on the char-dev.\n3. Third is here by Kernel users.\nAll three locks must be removed before the osd_uld_device is freed.\n\nThe MODULE has three lock sources as well:\n1. scsi-ml at probe() time, removed after release(). (login/logout)\n2. The user-mode file handles open/close.\n3. Import symbols by client modules like exofs.\n\nTODO:\n  This API is not enough for the pNFS-objects LD. A more versatile\n  API will be needed. Proposed API could be:\n  struct osd_dev *osduld_sysid_lookup(const char id[OSD_SYSTEMID_LEN]);\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "95b05a7db5865855c32e0bb8b244c3a7aac1cfeb",
      "tree": "48f1af3fb003ff537f6288a169e863ba194dba70",
      "parents": [
        "02941a530ef736210b4cf8b24dd34c238d5d5a40"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 16:56:47 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:06 2009 -0500"
      },
      "message": "[SCSI] osd_uld: OSD scsi ULD\n\nAdd a Linux driver module that registers as a SCSI ULD and probes\nfor OSD type SCSI devices.\n\nWhen an OSD-type SCSI device is found a character device is created\nin the form of /dev/osdX - where X goes from 0 up to hard coded 64.\nThe Major character device number used is 260.\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nReviewed-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "de258bf5e63863f42e0f9a7c5ffd29916a41e399",
      "tree": "c90aa5f4dd86b61df7915864589562ef9fabe625",
      "parents": [
        "82443a58d361123d418033e9e32ac29a842fce68"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 16:54:10 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:06 2009 -0500"
      },
      "message": "[SCSI] libosd: OSDv1 Headers\n\nHeaders only patch.\n\nosd_protocol.h\n\tContains a C-fied definition of the T10 OSD standard\nosd_types.h\n\tContains CPU order common used types\nosd_initiator.h\n\tAPI definition of the osd_initiator library\nosd_sec.h\n\tContains High level API for the security manager.\n\n[Note that checkpatch spews errors on things that are valid in this context\nand will not be fixed]\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nReviewed-by: Benny Halevy \u003cbhalevy@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "82443a58d361123d418033e9e32ac29a842fce68",
      "tree": "33b940f139a6744838b7611796b1bb092ff38891",
      "parents": [
        "71969fd9e2c523d22bf1742eb31f1562247710eb"
      ],
      "author": {
        "name": "Boaz Harrosh",
        "email": "bharrosh@panasas.com",
        "time": "Sun Jan 25 16:51:33 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:05 2009 -0500"
      },
      "message": "[SCSI] add OSD_TYPE\n\n- Define the OSD_TYPE scsi device and let it show up in scans\n\nSigned-off-by: Boaz Harrosh \u003cbharrosh@panasas.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "1c9fbafc8c629c89183d6dccec67a8415513b0d1",
      "tree": "895ca90bbf8255568d691b6603414e15b4161887",
      "parents": [
        "5a9ef25b14d39b8413364df12cb8d9bb7a673a32"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Sun Jan 04 03:14:11 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:58:02 2009 -0500"
      },
      "message": "[SCSI] Remove SUGGEST flags\n\nThe SUGGEST_* flags in the SCSI command result have been out of fashion\nfor a while and we don\u0027t actually use them in the error handling.\nRemove the remaining occurrences.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0762a4824d6c6f8eb5d2646dfda95581d99afaa5",
      "tree": "dcf60e311f6ead5f706fa8956c5c7cfcee12c93f",
      "parents": [
        "71fa7421822a251fc3e9ffb54653395b6b964309"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Mon Jan 12 09:28:55 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:57:56 2009 -0500"
      },
      "message": "[SCSI] Check for deleted device in scsi_device_online()\n\nscsi_device_online() is not just a negation of SDEV_OFFLINE,\nalso devices in state SDEV_DEL are actually offline.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "881a256d84e658d14ca1c162fe56e9cbbb1cdd49",
      "tree": "76f77b27d87f823b6a2429a04ff925bee6c3107d",
      "parents": [
        "5fa0ae19822d60307059ee64b80ba9e5effdce58"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Wed Dec 31 13:12:46 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Mar 12 12:57:54 2009 -0500"
      },
      "message": "[SCSI] Add VPD helper\n\nBased on prior work by Martin Petersen and James Bottomley, this patch\nadds a generic helper for retrieving VPD pages from SCSI devices.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "c826a3145736e3baabebccfd0aecfbb6dae059f2",
      "tree": "4c156c85a8eec039973b369cff052206da128cbe",
      "parents": [
        "e904158159e9812d06646767b7c81846dc3b05e6"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Feb 27 10:56:27 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Mar 10 09:09:21 2009 -0500"
      },
      "message": "[SCSI] fcoe: Out of order tx frames was causing several check condition SCSI status\n\nframes followed by these errors in log.\n\n\t[sdp] Result: hostbyte\u003dDID_OK driverbyte\u003dDRIVER_SENSE,SUGGEST_OK\n\t[sdp] Sense Key : Aborted Command [current]\n\t[sdp] Add. Sense: Data phase error\n\nThis was causing some test apps to exit due to write failure under heavy\nload.\n\nThis was due to a race around adding and removing tx frame skb in\nfcoe_pending_queue, Chris Leech helped me to find that brief unlocking\nperiod when pulling skb from fcoe_pending_queue in various contexts\n(fcoe_watchdog and fcoe_xmit) and then adding skb back into fcoe_pending_queue\nup on a failed fcoe_start_io could change skb/tx frame order in\nfcoe_pending_queue. Thanks Chris.\n\nThis patch allows only single context to pull skb from fcoe_pending_queue\nat any time to prevent above described ordering issue/race by use of\nfcoe_pending_queue_active flag.\n\nThis patch simplified fcoe_watchdog with modified fcoe_check_wait_queue by\nuse of FCOE_LOW_QUEUE_DEPTH instead previously used several conditionals\nto clear and set lp-\u003eqfull.\n\nI think FCOE_MAX_QUEUE_DEPTH with FCOE_LOW_QUEUE_DEPTH  will work better\nin re/setting lp-\u003eqfull and these could be fine tuned for performance.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "74846bf85e42b4ba851d3f0dd67aa1df245895f9",
      "tree": "a5dcf0b3d125be5bf7a90ab0bc22430758c8bff7",
      "parents": [
        "422819cfa3a2605a0b3bdc33aaef0bc2feaeaada"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Feb 27 10:56:16 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Mar 10 09:07:09 2009 -0500"
      },
      "message": "[SCSI] fcoe: ETH_P_8021Q is already in if_ether and fcoe is not using it anyway\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "fc47ff6b1b27fb736f255ed8cd490356e0cd228f",
      "tree": "6be2387ebfcff7a1a729061b35f1ea6fdd115a46",
      "parents": [
        "b2ab99c9a300e572105d6db7f6efe0a4d1572167"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Feb 27 10:55:55 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Mar 10 09:05:35 2009 -0500"
      },
      "message": "[SCSI] libfc, fcoe: Remove unnecessary cast by removing inline wrapper\n\nComment from \"Andrew Morton \u003cakpm@linux-foundation.org\u003e\"\n\n\u003e +{\n\u003e +     return (struct fcoe_softc *)lport_priv(lp);\n\nunneeded/undesirable cast of void*.  There are probably zillions of\ninstances of this - there always are.\n\nThis whole inline function was unnecessary. The FCoE layer knows\nthat it\u0027s data structure is stored in the lport private data, it\ncan just access it from lport_priv().\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "34f42a070fc98f5dc07e9fa2338b7b8d1dc347eb",
      "tree": "7e08edd537159be8a4fa341e7022cafd6f13b9e4",
      "parents": [
        "0ae4d4ae47d2ccbcad813b0d6d8fe12590c7d648"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Feb 27 10:55:45 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Mar 10 09:04:40 2009 -0500"
      },
      "message": "[SCSI] libfc, fcoe: Fix kerneldoc comments\n\n1) Added \u0027()\u0027 for function names in kerneldoc comments\n\n2) Changed comment bookends from \u0027**/\u0027 to \u0027*/\u0027. The comment on the the\n   mailing list was that \u0027**/\u0027 \"is consistently unconventional.  Not\n   wrong, just odd.\" The Documentation/kernel-doc-nano-HOWTO.txt\n   states that kerneldoc comment blocks should end with \u0027**/\u0027 but most\n   (if not all) instance I found under drivers/scsi/ were only using\n   the \u0027*/\u0027 so I converted to that style.\n\n3) Removed incorrect linebreaks in kerneldoc comments where found\n\n4) Removed a few unnecessary blank comment lines in kerneldoc comment\n   blocks\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0ae4d4ae47d2ccbcad813b0d6d8fe12590c7d648",
      "tree": "a58434d723ef74a7282c29835dec8496326a14a9",
      "parents": [
        "efaf5c085dd2d31757b0ff7886970dfddd8d1808"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Feb 27 10:55:39 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 06 15:45:32 2009 -0600"
      },
      "message": "[SCSI] libfc: Cleanup libfc_function_template comments\n\nMade the comments more like the comments for struct scsi_host_template.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "5101ff99f59aefb72e0c96e82aa32048ac9f8425",
      "tree": "83fba57c7cf542eed4466265619632e7d804eb88",
      "parents": [
        "f7db2c150cf5082cf74555f30a1305938041de80"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Feb 27 10:55:18 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 06 15:41:01 2009 -0600"
      },
      "message": "[SCSI] libfc: Don\u0027t violate transport template for rogue port creation\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6755db1cd4587084be85f860b7aa7c0cc9d776dc",
      "tree": "cdc50e934f61d73a7aa8f5fdc5c454e0375071b9",
      "parents": [
        "bc0e17f691085315ae9303eb5b0883fe16dfe6b1"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Feb 27 10:55:02 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 06 15:39:34 2009 -0600"
      },
      "message": "[SCSI] libfc: rport retry on LS_RJT from certain ELS\n\nThis allows any rport ELS to retry on LS_RJT.\n\nThe rport error handling would only retry on resource allocation failures\nand exchange timeouts.  I have a target that will occasionally reject PLOGI\nwhen we do a quick LOGO/PLOGI.  When a critical ELS was rejected, libfc would\nfail silently leaving the rport in a dead state.\n\nThe retry count and delay are managed by fc_rport_error_retry.  If the retry\ncount is exceeded fc_rport_error will be called.  When retrying is not the\ncorrect course of action, fc_rport_error can be called directly.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "bc0e17f691085315ae9303eb5b0883fe16dfe6b1",
      "tree": "53138e80aec810604d4eca4626e4f8df65376ccc",
      "parents": [
        "a7e84f2b83f17f8f11da34ccef3ba5a862dc0182"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Feb 27 10:54:57 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 06 15:37:49 2009 -0600"
      },
      "message": "[SCSI] libfc, fcoe: fixed locking issues with lport-\u003elp_mutex around lport-\u003elink_status\n\nThe fcoe_xmit could call fc_pause in case the pending skb queue len is larger\nthan FCOE_MAX_QUEUE_DEPTH, the fc_pause was trying to grab lport-\u003elp_muex to\nchange lport-\u003elink_status and that had these issues :-\n\n1. The fcoe_xmit was getting called with bh disabled, thus causing\n\"BUG: scheduling while atomic\" when grabbing lport-\u003elp_muex with bh disabled.\n\n2. fc_linkup and fc_linkdown function calls lport_enter function with\nlport-\u003elp_mutex held and these enter function in turn calls fcoe_xmit to send\nlport related FC frame, e.g. fc_linkup \u003d\u003e fc_lport_enter_flogi to send flogi\nreq. In this case grabbing the same lport-\u003elp_mutex again in fc_puase from\nfcoe_xmit would cause deadlock.\n\nThe lport-\u003elp_mutex was used for setting FC_PAUSE in fcoe_xmit path but\nFC_PAUSE bit was not used anywhere beside just setting and clear this\nbit in lport-\u003elink_status, instead used a separate field qfull in fc_lport\nto eliminate need for lport-\u003elp_mutex to track pending queue full condition\nand in turn avoid above described two locking issues.\n\nAlso added check for lp-\u003eqfull in fc_fcp_lport_queue_ready to trigger\nSCSI_MLQUEUE_HOST_BUSY when lp-\u003eqfull is set to prevent more scsi-ml cmds\nwhile lp-\u003eqfull is set.\n\nThis patch eliminated FC_LINK_UP and FC_PAUSE and instead used dedicated\nfields in fc_lport for this, this simplified all related conditional\ncode.\n\nAlso removed fc_pause and fc_unpause functions and instead used newly added\nlport-\u003eqfull directly in fcoe.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "1f6ff364ceda516f88351a8ab640e656beed0b26",
      "tree": "227a5f6e39372eaf3c898d1de8feb2b88df707b0",
      "parents": [
        "33dd6f92a1a7ad85c54d47fd9d73371a32c0bde4"
      ],
      "author": {
        "name": "Abhijeet Joglekar",
        "email": "abjoglek@cisco.com",
        "time": "Fri Feb 27 10:54:35 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Mar 06 15:35:47 2009 -0600"
      },
      "message": "[SCSI] libfc: Pass lport in exch_mgr_reset\n\nfc_exch_mgr structure is private to fc_exch.c. To export exch_mgr_reset to\ntransport, transport needs access to the exch manager. Change\nexch_mgr_reset to use lport param which is the shared structure between\nlibFC and transport.\n\nAlternatively, fc_exch_mgr definition can be moved to libfc.h so that lport\ncan be accessed from mp*.\n\nSigned-off-by: Abhijeet Joglekar \u003cabjoglek@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "2856830bd395fbc2f0c5327effe71fb025dd262d",
      "tree": "213afd49b7705e653f6273db1183befde67068ed",
      "parents": [
        "2f4c782c2e06fbaef2ac2b6b7abd796b96abd98b"
      ],
      "author": {
        "name": "Karen Xie",
        "email": "kxie@chelsio.com",
        "time": "Sat Jan 10 19:06:07 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Jan 13 10:41:34 2009 -0600"
      },
      "message": "[SCSI] iscsi_tcp: make padbuf non-static\n\nvirt_to_page() call should not be used on kernel text and data\naddresses.  virt_to_page() is used by sg_init_one(). So change padbuf\nto be allocated within iscsi_segment.\n\nSigned-off-by: Karen Xie \u003ckxie@chelsio.com\u003e\nAcked-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "4be98c0ca304c8a47998b29a7993664f71791250",
      "tree": "f24eb119e2b3332c5d27473055e7d83493b6a225",
      "parents": [
        "58607b30fc0f2230a189500112c7a7cca02804cf"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Mon Jan 05 12:14:18 2009 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Jan 06 09:43:33 2009 -0600"
      },
      "message": "[SCSI] fc transport: restore missing dev_loss_tmo callback to LLDD\n\nWhen we reworked the transport for the rport lifetimes, in cases where the\nrport was reused as a container for tgt id bindings, we inadvertantly\nremoved the callback to the driver indicating that dev_loss_tmo had fired.\n\nThis patch restores that functionality.\n\nSigned-off-by: James Smart \u003cjames.smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "85b4aa4926a50210b683ac89326e338e7d131211",
      "tree": "127b6586573194f2d37b5a298e12c8b7d24a6fac",
      "parents": [
        "42e9a92fe6a9095bd68a379aaec7ad2be0337f7a"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Dec 09 15:10:24 2008 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:33 2008 -0600"
      },
      "message": "[SCSI] fcoe: Fibre Channel over Ethernet\n\nEncapsulation protocol for running Fibre Channel over Ethernet interfaces.\nCreates virtual Fibre Channel host adapters using libfc.\n\nThis layer is the LLD to the scsi-ml. It allocates the Scsi_Host, utilizes\nlibfc for Fibre Channel protocol processing and interacts with netdev to\nsend/receive Ethernet packets.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "42e9a92fe6a9095bd68a379aaec7ad2be0337f7a",
      "tree": "344f8d9f72a3d926d652632abb8d319f8e32343a",
      "parents": [
        "f032c2f7cdaae0e8907cd3b26426fc651dc5c275"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Dec 09 15:10:17 2008 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:33 2008 -0600"
      },
      "message": "[SCSI] libfc: A modular Fibre Channel library\n\nlibFC is composed of 4 blocks supported by an exchange manager\nand a framing library. The upper 4 layers are fc_lport, fc_disc,\nfc_rport and fc_fcp. A LLD that uses libfc could choose to\neither use libfc\u0027s block, or using the transport template\ndefined in libfc.h, override one or more blocks with its own\nimplementation.\n\nThe EM (Exchange Manager) manages exhcanges/sequences for all\ncommands- ELS, CT and FCP.\n\nThe framing library frames ELS and CT commands.\n\nThe fc_lport block manages the library\u0027s representation of the\nhost\u0027s FC enabled ports.\n\nThe fc_disc block manages discovery of targets as well as\nhandling changes that occur in the FC fabric (via. RSCN events).\n\nThe fc_rport block manages the library\u0027s representation of other\nentities in the FC fabric. Currently the library uses this block\nfor targets, its peer when in point-to-point mode and the\ndirectory server, but can be extended for other entities if\nneeded.\n\nThe fc_fcp block interacts with the scsi-ml and handles all\nI/O.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\n[jejb: added include of delay.h to fix ppc64 compile prob spotted by sfr]\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f032c2f7cdaae0e8907cd3b26426fc651dc5c275",
      "tree": "a8ee4e4aee28c9d5173cd2c39d83dbbc0b7ebcdb",
      "parents": [
        "21465eda9eafa275ed11c27779d90aa95559b6f6"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Dec 09 15:10:11 2008 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:32 2008 -0600"
      },
      "message": "[SCSI] FC protocol definition header files\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f4f4e47e4af6b02dd1c425b931c65d0165356e33",
      "tree": "1bca97ce56703d7a101674cf6bf0d28576cf7201",
      "parents": [
        "a528ab7a324f1dbb3598ae0ecd238ab7dd974294"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Thu Dec 04 14:24:39 2008 +0900"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:24 2008 -0600"
      },
      "message": "[SCSI] add residual argument to scsi_execute and scsi_execute_req\n\nscsi_execute() and scsi_execute_req() discard the residual length\ninformation. Some callers need it. This adds residual argument\n(optional) to scsi_execute and scsi_execute_req.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6df19a791bdd5d820cccd8c7a12679888ae62099",
      "tree": "5afebc101c362d0a41275337dced617fb06f8a89",
      "parents": [
        "ae15f80172d95f978b60d40408353943d5bc099b"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:16 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:23 2008 -0600"
      },
      "message": "[SCSI] libiscsi_tcp: support padding offload\n\ncxgb3i does not offload the processing of the header,\nbut it will always process the padding. This patch\nadds a padding offload flag to detect when the LLD\nsupports this.\n\nThe patch also modifies the header processing so that\nwe do not try to read/bypass the header dugest in the\nskb. cxgb3i will not include it with the header like\nwith other offload cards.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "2ff79d52d56eebcffd83e9327b89d7daedf1e897",
      "tree": "66746804ba4965f7ffdc9ed32ce2f8c29e8dbac9",
      "parents": [
        "262ef63627977acb7d8dd38c4f0f290bf49fbbfd"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:14 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:23 2008 -0600"
      },
      "message": "[SCSI] libiscsi: pass opcode into alloc_pdu callout\n\nWe do not need to allocate a itt for data_out, so this\npasses the opcode to the alloc_pdu callout.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "262ef63627977acb7d8dd38c4f0f290bf49fbbfd",
      "tree": "fc8e01280968470f2d3d122614508fe5e402e0a2",
      "parents": [
        "38e1a8f5479d7d75a68d797c7159f5b7e2ef44e4"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:13 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:22 2008 -0600"
      },
      "message": "[SCSI] libiscsi: allow drivers to modify the itt sent to the target\n\nbnx2i and cxgb3i need to encode LLD info in the itt so that\nthe firmware/hardware can process the pdu. This patch allows\nthe LLDs to encode info in the task-\u003ehdr-\u003eitt that they\nsetup in the alloc_pdu callout (any resources that are allocated\ncan be freed with the pdu in the cleanup_task callout). If\nthe LLD encodes info in the itt they should implement a\nparse_pdu_itt callout. If parse_pdu_itt is not implemented\nlibiscsi will do the right thing for the LLD.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a081c13e39b5c17052a7b46fafa61019c4c110ff",
      "tree": "d00093d2e869b825d4e6aea62ff3b69b0c38c7b9",
      "parents": [
        "30b4915015c112547e930cadf734d875aec8438d"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:11 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:22 2008 -0600"
      },
      "message": "[SCSI] iscsi_tcp: split module into lib and lld\n\nAs explained in the previous mails, cxgb3i needs iscsi_tcp\u0027s\nr2t/data_out and data_in procesing so this just moves functions\nthat both drivers want to use to a new module libiscsi_tcp. The\nnext patch will hook iscsi_tcp in.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "577577da6d197ea3dcf3ee19c4f902fbd3a9390a",
      "tree": "624b991f45dc12da557469daed0deea2bffb47ac",
      "parents": [
        "63c62f1cb980241513c82cacd5b9f878527c6647"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:05 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:20 2008 -0600"
      },
      "message": "[SCSI] libiscsi: prepare libiscsi for new offload engines by modifying unsol data code\n\ncxgb3i offloads data transfers. It does not offload the entire scsi/iscsi\nprocssing like qla4xxx and it does not offload the iscsi sequence\nprocessing like how bnx2i does. cxgb3i relies on iscsi_tcp for the\nseqeunce handling so this changes how we transfer unsolicitied data by\nadding a common r2t struct and helpers.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "63c62f1cb980241513c82cacd5b9f878527c6647",
      "tree": "929f7609d410db8654ed1e262725ca2d3203f199",
      "parents": [
        "b29f841378460c37e99a2398d0015d9bd7901a09"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Dec 02 00:32:04 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:20 2008 -0600"
      },
      "message": "[SCSI] iscsi_tcp: prepare helpers for LLDs that can offload some operations\n\ncxgb3i is unlike qla4xxx and bnx2i in that it does not offload entire\nscsi commands or iscsi sequences. Instead it only offloads the transfer\nof a ISCSI DATA_IN pdu\u0027s data, the digests and padding. This patch fixes up the\niscsi tcp recv path so that it exports its skb recv processing so\ncxgb3i and other drivers can call them. All they have to do is pass\nthe function the skb with the hdr or data pdu header and this function\nwill do the rest.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b29f841378460c37e99a2398d0015d9bd7901a09",
      "tree": "0ef4dcdde5364119a2e1745cea611c9d620fd3c6",
      "parents": [
        "a02488ed73488f316aa00eb973407f4229c6c2bf"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Nov 30 10:39:01 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Dec 29 11:24:20 2008 -0600"
      },
      "message": "[SCSI] remove timeout from struct scsi_device\n\nby removing the unused timeout parameter we ensure a compile failure if\nanyone is accidentally still using it rather than the block timeout.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "21098c68df7115554fe041170899bdff709efd08",
      "tree": "4d1d6d5c35af423b1a8ee21550990e76f7631a9f",
      "parents": [
        "2a3a59e5c977654d3aad5bc11cc0aca2303a7f44"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Thu Nov 20 10:58:01 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Nov 21 17:30:53 2008 +0900"
      },
      "message": "[SCSI] fc_transport: fix old bug on bitflag definitions\n\nWhen the fastfail flag was added, it did not account for the flags\nbeing bit fields. Correct the definition so there is no longer a\nconflict.\n\nSigned-off-by: James Smart \u003cjames.smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "3070f69b66b7ab2f02d8a2500edae07039c38508",
      "tree": "508c5f64ac507d8248f591d9e1a6da93379004e5",
      "parents": [
        "1d63e726408dfdb3e10ed8f00c383b30ebb333d3"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Oct 27 19:20:59 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Oct 27 19:25:30 2008 +0100"
      },
      "message": "scsi: make sure that scsi_init_shared_tag_map() doesn\u0027t overwrite existing map\n\nRight now callers have to check whether scsi_host-\u003ebqt is already\nset up, it\u0027s much cleaner to just have scsi_init_shared_tag_map()\ndoes this check on its own.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "83ff6fe8580a7c834dba4389d742332fff9b9929",
      "tree": "7708b57bdf42961749320adbbce526e551dbe6c7",
      "parents": [
        "633a08b81206122469365b4c72eaeb71f04f2cb4"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Mar 02 08:15:49 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Oct 21 07:47:28 2008 -0400"
      },
      "message": "[PATCH] don\u0027t mess with file in scsi_nonblockable_ioctl()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6f481e3cefeb33094e87af176587e6a3027f104e",
      "tree": "676ee530f74210d0518b519036594a7bdb64e1af",
      "parents": [
        "8e12452549ba2dfa17db97bc495172fac221a7ab"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Sep 24 11:46:13 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:29:00 2008 -0400"
      },
      "message": "[SCSI] iscsi_tcp: return a descriptive error value during connection errors\n\nThe segment-\u003edone functions return a iscsi error value which gives\na lot more info than conn failed, so this patch has us return\nthat value. I also add a new one for xmit failures.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "8e12452549ba2dfa17db97bc495172fac221a7ab",
      "tree": "6f1617afb90ad9e5c50698d39bcb2c850feece6a",
      "parents": [
        "21536062d98938dfcfbae593a26c154e359749dc"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Sep 24 11:46:12 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:59 2008 -0400"
      },
      "message": "[SCSI] libiscsi: rename host reset to target reset\n\nI had this in my patchset to add target reset support, but\nit got dropped due to patching conflicts. This initial patch\njust renames the function and users. We are actually just\ndropping the session, and so this does not have anything to do\nwith the host exactly. It does for software iscsi because\nwe allocate a host per session, but for cxgb3i this makes no\nsense.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "21536062d98938dfcfbae593a26c154e359749dc",
      "tree": "4615523a9c38cfc502c9f830832d76e37f725511",
      "parents": [
        "e5bd7b54e93ef7151469a12b8c28d863b9f8a088"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Sep 24 11:46:11 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:59 2008 -0400"
      },
      "message": "[SCSI] iscsi class: fix endpoint id handling\n\nSome endpoint code was using unsigned int and some\nwas using uint64_t. This converts it all to uint64_t.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "e5bd7b54e93ef7151469a12b8c28d863b9f8a088",
      "tree": "b1e63758dc0272346b7d5e9af6435a87fd94a7ad",
      "parents": [
        "1d9edf0270cb5a434d32e95279ce9493581906b3"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Sep 24 11:46:10 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:59 2008 -0400"
      },
      "message": "[SCSI] libiscsi: Support drivers initiating session removal\n\nIf the driver knows when hardware is removed like with cxgb3i,\nbnx2i, qla4xxx and iser then we will want to remove the sessions/devices\nthat are bound to that device before removing the host.\n\ncxgb3i and in the future bnx2i will remove the host and that will\nremove all the sessions on the hba. iser can call iscsi_kill_session\nwhen it gets an event that indicates that a hca is removed.\nAnd when qla4xxx is hooked in to the lib (it is only hooked into\nthe class right now) it can call iscsi remove host like the\npartial offload card drivers.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f46e307da925a7b71a0018c0510cdc6e588b87fc",
      "tree": "7bb9e8af0c33ed8fef53ea98e6ceceff7f9f3528",
      "parents": [
        "56d7fcfa815564b40a1b0ec7a30ea8cb3bc0713e"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Aug 19 18:45:27 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:49 2008 -0400"
      },
      "message": "[SCSI] fc class: Add support for new transport errors\n\nIf the target is blocked and fast io fail tmo has not fired\nthen we requeue with DID_TRANSPORT_DISRUPTED. Once that\ntmo fires we fail with DID_TRANSPORT_FAILFAST.\n\nv2\n- seperate from\n\"fc class: unblock target after calling terminate callback\"\nto make it easier to review.\n- Add JamesS\u0027s ack from list.\nv2\n- initial patch\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nAcked-by: James Smart \u003cJames.Smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a4dfaa6f2e55b736adf2719133996f7e7dc309bc",
      "tree": "770132bb154b0e4c395b45485580563c0b660286",
      "parents": [
        "9cc328f502eacfcc52ab1c1bf9a7729cf12f14be"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Aug 19 18:45:25 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:48 2008 -0400"
      },
      "message": "[SCSI] scsi: add transport host byte errors (v3)\n\nCurrently, if there is a transport problem the iscsi drivers will return\noutstanding commands (commands being exeucted by the driver/fw/hw) with\nDID_BUS_BUSY and block the session so no new commands can be queued.\nCommands that are caught between the failure handling and blocking are\nfailed with DID_IMM_RETRY or one of the scsi ml queuecommand return values.\nWhen the recovery_timeout fires, the iscsi drivers then fail IO with\nDID_NO_CONNECT.\n\nFor fcp, some drivers will fail some outstanding IO (disk but possibly not\ntape) with DID_BUS_BUSY or DID_ERROR or some other value that causes a retry\nand hits the scsi_error.c failfast check, block the rport, and commands\ncaught in the race are failed with DID_IMM_RETRY. Other drivers, may\nhold onto all IO and wait for the terminate_rport_io or dev_loss_tmo_callbk\nto be called.\n\nThe following patches attempt to unify what upper layers will see drivers\nlike multipath can make a good guess. This relies on drivers being\nhooked into their transport class.\n\nThis first patch just defines two new host byte errors so drivers can\nreturn the same value for when a rport/session is blocked and for\nwhen the fast_io_fail_tmo fires.\n\nThe idea is that if the LLD/class detects a problem and is going to block\na rport/session, then if the LLD wants or must return the command to scsi-ml,\nthen it can return it with DID_TRANSPORT_DISRUPTED. This will requeue\nthe IO into the same scsi queue it came from, until the fast io fail timer\nfires and the class decides what to do.\n\nWhen using multipath and the fast_io_fail_tmo fires then the class\ncan fail commands with DID_TRANSPORT_FAILFAST or drivers can use\nDID_TRANSPORT_FAILFAST in their terminate_rport_io callbacks or\nthe equivlent in iscsi if we ever implement more advanced recovery methods.\nA LLD, like lpfc, could continue to return DID_ERROR and then it will hit\nthe normal failfast path, so drivers do not have fully be ported to\nwork better. The point of the patches is that upper layers will\nnot see a failure that could be recovered from while the rport/session is\nblocked until fast_io_fail_tmo/recovery_timeout fires.\n\nV3\nRemove some comments.\nV2\nFixed patch/diff errors and renamed DID_TRANSPORT_BLOCKED to\nDID_TRANSPORT_DISRUPTED.\nV1\ninitial patch.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "fff9d40ce0eb4b46f3e186823ceab6bc02c3e5d3",
      "tree": "d36626195678a7b2b8cd60c5e7bae1af9f04ab62",
      "parents": [
        "a93ce0244f2e94dd48e0b4a2742a4e3bf196ab53"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Tue Aug 19 18:45:23 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:47 2008 -0400"
      },
      "message": "[SCSI] fc class: unblock target after calling terminate callback (take 2)\n\nWhen we block a rport and the driver implements the terminate\ncallback we will fail IO that was running quickly. However\nIO that was in the scsi_device/block queue sits there until\nthe dev_loss_tmo fires, and this can make it look like IO is\nlost because new IO will get executed but that IO stuck in\nthe blocked queue sits there for some time longer.\n\nWith this patch when the fast io fail tmo fires, we will\nfail the blocked IO and any new IO. This patch also allows\nall drivers to partially support the fast io fail tmo. If the\nterminate io callback is not implemented, we will still fail blocked\nIO and any new IO, so multipath can handle that.\n\nThis patch also allows the fc and iscsi classes to implement the\nsame behavior. The timers are just unfornately named differently.\n\nThis patch also fixes the problem where drivers were unblocking\nthe target in their terminate callback, which was needed for\nrport removal, but for fast io fail timeout it would cause\nIO to bounce arround the scsi/block layer and the LLD queuecommand.\nAnd it for drivers that could have IO stuck but did not have\na terminate callback the unblock calls in the class will fix\nthem.\n\nv2.\n- fix up bit setting style to meet JamesS\u0027s pref.\n- Broke out new host byte error changes to make it easier to read.\n- added JamesS\u0027s ack from list.\nv1\n- initial patch\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nAcked-by: James Smart \u003cJames.Smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "f0c0a376d0fcd4c5579ecf5e95f88387cba85211",
      "tree": "16b97ab71a22106cb1e5c1a177ab6c8103fe5a48",
      "parents": [
        "4480f15b3306f43bbb0310d461142b4e897ca45b"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Sun Aug 17 15:24:38 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Mon Oct 13 09:28:46 2008 -0400"
      },
      "message": "[SCSI] Add helper code so transport classes/driver can control queueing (v3)\n\nSCSI-ml manages the queueing limits for the device and host, but\ndoes not do so at the target level. However something something similar\ncan come in userful when a driver is transitioning a transport object to\nthe the blocked state, becuase at that time we do not want to queue\nio and we do not want the queuecommand to be called again.\n\nThe patch adds code similar to the exisiting SCSI_ML_*BUSY handlers.\nYou can now return SCSI_MLQUEUE_TARGET_BUSY when we hit\na transport level queueing issue like the hw cannot allocate some\nresource at the iscsi session/connection level, or the target has temporarily\nclosed or shrunk the queueing window, or if we are transitioning\nto the blocked state.\n\nbnx2i, when they rework their firmware according to netdev\ndevelopers requests, will also need to be able to limit queueing at this\nlevel. bnx2i will hook into libiscsi, but will allocate a scsi host per\nnetdevice/hba, so unlike pure software iscsi/iser which is allocating\na host per session, it cannot set the scsi_host-\u003ecan_queue and return\nSCSI_MLQUEUE_HOST_BUSY to reflect queueing limits on the transport.\n\nThe iscsi class/driver can also set a scsi_target-\u003ecan_queue value which\nreflects the max commands the driver/class can support. For iscsi this\nreflects the number of commands we can support for each session due to\nsession/connection hw limits, driver limits, and to also reflect the\nsession/targets\u0027s queueing window.\n\nChanges:\nv1 - initial patch.\nv2 - Fix scsi_run_queue handling of multiple blocked targets.\nPreviously we would break from the main loop if a device was added back on\nthe starved list. We now run over the list and check if any target is\nblocked.\nv3 - Rediff for scsi-misc.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ef5bef357cdf49f3a386c7102dbf3be5f7e5c913",
      "tree": "48d9dc86768e3e146267ea21d0c898f9008275a1",
      "parents": [
        "e26feff647ef34423b048b940540a0059001ddb0",
        "41bfcf90101601f9507240ff0435c1b73d28a132"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 10:53:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 10:53:26 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (37 commits)\n  [SCSI] zfcp: fix double dbf id usage\n  [SCSI] zfcp: wait on SCSI work to be finished before proceeding with init dev\n  [SCSI] zfcp: fix erp list usage without using locks\n  [SCSI] zfcp: prevent fc_remote_port_delete calls for unregistered rport\n  [SCSI] zfcp: fix deadlock caused by shared work queue tasks\n  [SCSI] zfcp: put threshold data in hba trace\n  [SCSI] zfcp: Simplify zfcp data structures\n  [SCSI] zfcp: Simplify get_adapter_by_busid\n  [SCSI] zfcp: remove all typedefs and replace them with standards\n  [SCSI] zfcp: attach and release SAN nameserver port on demand\n  [SCSI] zfcp: remove unused references, declarations and flags\n  [SCSI] zfcp: Update message with input from review\n  [SCSI] zfcp: add queue_full sysfs attribute\n  [SCSI] scsi_dh: suppress comparison warning\n  [SCSI] scsi_dh: add Dell product information into rdac device handler\n  [SCSI] qla2xxx: remove the unused SCSI_QLOGIC_FC_FIRMWARE option\n  [SCSI] qla2xxx: fix printk format warnings\n  [SCSI] qla2xxx: Update version number to 8.02.01-k8.\n  [SCSI] qla2xxx: Ignore payload reserved-bits during RSCN processing.\n  [SCSI] qla2xxx: Additional residual-count corrections during UNDERRUN handling.\n  ...\n"
    },
    {
      "commit": "242f9dcb8ba6f68fcd217a119a7648a4f69290e9",
      "tree": "1bfe245ffbc50d204d76665cd8f90d85100f86a1",
      "parents": [
        "608aeef17a91747d6303de4df5e2c2e6899a95e8"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Sun Sep 14 05:55:09 2008 -0700"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:13 2008 +0200"
      },
      "message": "block: unify request timeout handling\n\nRight now SCSI and others do their own command timeout handling.\nMove those bits to the block layer.\n\nInstead of having a timer per command, we try to be a bit more clever\nand simply have one per-queue. This avoids the overhead of having to\ntear down and setup a timer for each command, so it will result in a lot\nless timer fiddling.\n\nSigned-off-by: Mike Anderson \u003candmike@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a30c3f69e6336cb9b09a989595e417367e4e9b1b",
      "tree": "219211924d44553b97579682cd8c27750b47b631",
      "parents": [
        "7404ad3b6d04efbd918e9e2e776bf560fbedf47d"
      ],
      "author": {
        "name": "Andrew Vasquez",
        "email": "andrew.vasquez@qlogic.com",
        "time": "Fri Jul 18 08:32:52 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Oct 03 11:46:15 2008 -0500"
      },
      "message": "[SCSI] fc_transport: Add an API to allow an LLD to create vports\n\nThere\u0027s already a fc_vport_termintate() call exported by\nthe transport.  This patch adds a symmetric call to the API to allow\nan NPIV-capable LLD to instantiate vports sans user intervention.\n\nAdditional comments/updates:\n\n   Re: scsi_fc_transport.txt\n     Add a function prototype for fc_vport_terminate similar to what\u0027s\n     done for fc_vport_create\n\n   Re: fc_vport_create\n     I recommend we pass the channel number in fc_vport_create rather\n     than fixing it at zero.\n\n     Also, ids-\u003evport_type should be set to FC_PORTTYPE_NPIV prior to\n     calling fc_vport_create. The comment is also meaningless.\n\nAdded-by and\nSigned-off-by: James Smart \u003cjames.smart@emulex.com\u003e\nSigned-off-by: Andrew Vasquez \u003candrew.vasquez@qlogic.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6f4267e3bd1211b3d09130e626b0b3d885077610",
      "tree": "e9350f919238866c3bcd9c340ffea639a0c5de1d",
      "parents": [
        "0f1d87a2acb8fd1f2ef8af109a785123ddc1a6cb"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Aug 22 16:53:31 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Oct 03 11:46:13 2008 -0500"
      },
      "message": "[SCSI] Update the SCSI state model to allow blocking in the created state\n\nBrian King \u003cbrking@linux.vnet.ibm.com\u003e reported that fibre channel\ndevices can oops during scanning if their ports block (because the\ndevice goes from CREATED -\u003e BLOCK -\u003e RUNNING rather than CREATED -\u003e\nBLOCK -\u003e CREATED).\n\nFix this by adding a new state: CREATED_BLOCK which can only transition\nback to CREATED and disallow the CREATED -\u003e BLOCK transition.  Now both\nthe created and blocked states that the mid-layer recognises can include\nCREATED_BLOCK.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "0f1d87a2acb8fd1f2ef8af109a785123ddc1a6cb",
      "tree": "c59113a5f6ba81983e1bc4abad235436b1842f28",
      "parents": [
        "22447be7d15aefcfab84e9bec4859a28198b0c62"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Aug 22 16:43:59 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Oct 03 11:46:13 2008 -0500"
      },
      "message": "[SCSI] add inline functions for recognising created and blocked states\n\nThe created and blocked states are very shortly going to correspond to\nmixed sdev_state states.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "22447be7d15aefcfab84e9bec4859a28198b0c62",
      "tree": "7bb58323dfdbfbc85759c668a876b85d2084a3da",
      "parents": [
        "557cc476c04146ee610f4bc77bfe20ce1c823d7c"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Fri Aug 08 02:14:18 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Oct 03 11:46:13 2008 -0500"
      },
      "message": "[SCSI] scsi_netlink: Add transport and LLD recieve and event support\n\nThis patch adds scsi netlink recieve and event support for transport\nand scsi LLDD\u0027s.  It is a reimplementation of the patch posted last\nweek by David Somayajulu.\nhttp://marc.info/?l\u003dlinux-scsi\u0026m\u003d121745486221819\u0026w\u003d2\n\nThere are a few things done differently:\n\n- Transport support is included\n\n- Event delivery is included\n\n- The vendor message is now its own unique message type, considered\n  part of the generic \"SCSI Transport\".\n\n- LLDD entry points are now registered rather than included in the\n  scsi_host_template.\n\n  Background: When I started to implement the event handler via template,\n  I had to either: muck up scsi_add_host and scsi_remove_host;  or have\n  the event handler search all possible shosts. Neither was acceptable.\n  Moving to a registration solves this, and also limits the scope of\n  the changes to something that could be backported to a distro without\n  breaking an already-released-distro kabi. However, I admit it isn\u0027t\n  as elegant, as the passing of the LLDD host template in the\n  registration and the complexity around dynamic add/remove shows.\n\n- The receive path was augmented to require a unique identifier for\n  the LLDD before the message was allowed to be handed off to the\n  driver. Given how quickly very fatal errors occur if there\u0027s msg\n  mismatches (which I saw in testing my own tools :), I believe this\n  to be a very good thing. The id plays off the vendor id scheme already\n  introduced for the vendor unique event messages used by FC.\n  Additionally, the id use as the basis of the registration/deregistration.\n\n- Send assist functions, for both the transport and LLDDs are included.\n\n[fujita.tomonori@lab.ntt.co.jp: fix missing cast]\nSigned-off-by: James Smart \u003cjames.smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "01b291bd66564b4bd826326af6bd0b6d17e99439",
      "tree": "89ba1f339a68827c1ea0e434629759a9252b0a69",
      "parents": [
        "bb0003c1e189d5766b6b39299b08c690c985c4dc"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Aug 21 15:14:14 2008 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Aug 29 09:19:11 2008 -0500"
      },
      "message": "[SCSI] fix check of PQ and PDT bits for WLUNs\n\nFor IBM z series certain LUNs can no longer be accessed.\n\nThis is because kernel version 2.6.19 a check was introduced not to\ncreate a generic SCSI device for devices that return PQ\u003d1 and\nPDT\u003d0x1f. For WLUNs (see SAM-3, p. 41ff) generic SCSI devices should\nbe created unconditionally without looking at the PQ bit, so add a\ncheck for WLUNs in with this test.\n\nAcked-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d211f052fa58a053639bc51501cb64421157d362",
      "tree": "8850e9490295e2697ecfd3ec72729a867b376d65",
      "parents": [
        "0967d61ea0d8e8a7826bd8949cd93dd1e829ac55"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Wed Aug 06 18:21:18 2008 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Wed Aug 06 10:49:23 2008 -0700"
      },
      "message": "[SCSI] sd: fix USB devices incorrectly reporting DIF support\n\nSome USB devices set the protect bit in the INQUIRY data which\ncurrently causes the DIF code in sd to assume (incorrectly) that they\nsupport READ_CAPACITY(16).  Fix this (only for the time being) by\nmaking sure we only believe the protect bit in the inquiry data if the\ndevice claims conformance to SCSI-3 or above.\n\nAcked-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "18351070b86d155713cf790b26af4f21b1fd0b29",
      "tree": "66e98f59de072733af7ae65cebf135c37caab249",
      "parents": [
        "e63e03273b89f7248baa56cf242474f661e776e1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 21:42:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 05 21:42:21 2008 -0700"
      },
      "message": "Re-introduce \"[SCSI] extend the last_sector_bug flag to cover more sectors\"\n\nThis re-introduces commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8,\nwhich was reverted due to the regression it caused by commit\nfca082c9f1e11ec07efa8d2f9f13688521253f36.\n\nThat regression was not root-caused by the original commit, it was just\nuncovered by it, and the real fix was done by Alan Stern in commit\n580da34847488b404218d1d7f53b156f245f5555 (\"Fix USB storage hang on\ncommand abort\").\n\nWe can thus re-introduce the change that was confirmed by Alan Jenkins\nto be still required by his odd card reader.\n\nCc: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fca082c9f1e11ec07efa8d2f9f13688521253f36",
      "tree": "94a18d0aed308b44ba606261c603c63860c35c30",
      "parents": [
        "8f616cd5249e03c9e1b371623d85e76d4b86bbc1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 16:36:20 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 04 16:36:20 2008 -0700"
      },
      "message": "Revert \"[SCSI] extend the last_sector_bug flag to cover more sectors\"\n\nThis reverts commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8, since it\nseems to break some other USB storage devices (at least a JMicron USB to\nATA bridge).  As such, while it apparently fixes some cardreaders, it\nwould need to be made conditional on the exact reader it fixes in order\nto avoid causing regressions.\n\nCc: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2b142900784c6e38c8d39fa57d5f95ef08e735d8",
      "tree": "e7d51b58df76e864c91ff7ffca0229027328c588",
      "parents": [
        "4cfc51017db3e3f4eaaa2cb436a905097a4f08e2"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Sun Jul 27 09:38:42 2008 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sun Jul 27 10:16:13 2008 -0400"
      },
      "message": "[SCSI] extend the last_sector_bug flag to cover more sectors\n\nThe last_sector_bug flag was added to work around a bug in certain usb\ncardreaders, where they would crash if a multiple sector read included the\nlast sector. The original implementation avoids this by e.g. splitting an 8\nsector read which includes the last sector into a 7 sector read, and a single\nsector read for the last sector.  The flag is enabled for all USB devices.\n\nThis revealed a second bug in other usb cardreaders, which crash when they\nget a multiple sector read which stops 1 sector short of the last sector.\nAffected hardware includes the Kingston \"MobileLite\" external USB cardreader\nand the internal USB cardreader on the Asus EeePC.\n\nExtend the last_sector_bug workaround to ensure that any access which touches\nthe last 8 hardware sectors of the device is a single sector long.  Requests\nare shrunk as necessary to meet this constraint.\n\nThis gives us a safety margin against potential unknown or future bugs\naffecting multi-sector access to the end of the device.  The two known bugs\nonly affect the last 2 sectors.  However, they suggest that these devices\nare prone to fencepost errors and that multi-sector access to the end of the\ndevice is not well tested.  Popular OS\u0027s use multi-sector accesses, but they\nrarely read the last few sectors.  Linux (with udev \u0026 vol_id) automatically\nreads sectors from the end of the device on insertion.  It is assumed that\nsingle sector accesses are more thoroughly tested during development.\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nTested-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "12265709ac6e197f4d40d9ec1fd3af97b4196a35",
      "tree": "479b48c2082e374b20f1767fef7768b6ea696f84",
      "parents": [
        "af55ff675a8461da6a632320710b050af4366e0c"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Jul 21 10:25:52 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:56 2008 -0400"
      },
      "message": "[SCSI] scsi_eh_prep_cmnd should save scmd-\u003eunderflow\n\nThis patch (as1116) fixes a bug in scsi_eh_prep_cmnd() and\nscsi_eh_restore_cmnd().  These routines are supposed to save any\nvalues they change and restore them later, but someone forgot to\nsave \u0026 restore scmd-\u003eunderflow.\n\nThis fixes part of the problem reported in Bugzilla #9638.\n\n[jejb: fix up rejections around DIF/DIX]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "7027ad72a689797475973c6feb5f0b673382f779",
      "tree": "4f6daa1d509708fb340d09608d79557a9af57f00",
      "parents": [
        "db007fc5e20c00b356e9ffe2d0e007398c65c837"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Thu Jul 17 17:08:48 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:55 2008 -0400"
      },
      "message": "[SCSI] Support devices with protection information\n\nImplement support for DMA of protection information for devices that\nare data integrity capable.\n\n - Add support for mapping an extra scatter-gather list containing\n   the protection information.\n\n - Allocate protection scsi_data_buffer if host is DIX (integrity DMA)\n   capable.\n\n - Accessor function for checking whether a device has protection\n   enabled.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "db007fc5e20c00b356e9ffe2d0e007398c65c837",
      "tree": "ab0483beff7abaddb9648bc0b2ef1ceacfeb02a9",
      "parents": [
        "4469f9878059f1707f021512e6b34252c4096ee7"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Thu Jul 17 04:28:31 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:54 2008 -0400"
      },
      "message": "[SCSI] Command protection operation\n\nControllers that support DMA of protection information must be told\nexplicitly how to handle the I/O.  The controller has no knowledge of\nthe protection capabilities of the target device so this information\nmust be passed in the scsi_cmnd.\n\n - The protection operation tells the HBA whether to generate, strip or\n   verify protection information.\n\n - The protection type tells the HBA which layout the target is\n   formatted with.  This is necessary because the controller must be\n   able to correctly interpret the included protection information in\n   order to verify it.\n\n - When a scsi_cmnd is reused for error handling the protection\n   operation must be cleared and saved while error handling is in\n   progress.\n\n - prot_op and prot_type are placed in an existing hole in scsi_cmnd\n   and don\u0027t cause the structure to grow.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "4469f9878059f1707f021512e6b34252c4096ee7",
      "tree": "3bc8ea358bea85235a8d9691c8b999626e685e0d",
      "parents": [
        "7c32c7a2d36c52d2b9ed040a9171364020ecc6a2"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Thu Jul 17 04:28:30 2008 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:54 2008 -0400"
      },
      "message": "[SCSI] Host protection capabilities\n\nControllers that support protection information must indicate this to\nthe SCSI midlayer so that the ULD can prepare scsi_cmnds accordingly.\n\nThis patch implements a host mask and various types of protection:\n\n - DIF Type 1-3 (between HBA and disk)\n - DIX Type 0-3 (between OS and HBA)\n\nThe patch also allows the HBA to set the guard type to something\ndifferent than the T10-mandated CRC.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ae11b1b36da726a8a93409b896704edc6b4f3402",
      "tree": "737e3602cb426c87f64ad26ccbfc12ce707d7b9e",
      "parents": [
        "057ea7c9683c3d684128cced796f03c179ecf1c2"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jul 17 17:49:02 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:53 2008 -0400"
      },
      "message": "[SCSI] scsi_dh: attach to hardware handler from dm-mpath\n\nmultipath keeps a separate device table which may be\nmore current than the built-in one.\nSo we should make sure to always call -\u003eattach whenever\na multipath map with hardware handler is instantiated.\nAnd we should call -\u003edetach on removal, too.\n\n[sekharan: update as per comments from agk]\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "057ea7c9683c3d684128cced796f03c179ecf1c2",
      "tree": "ff9494b4da41258c06ef44ab5f7a6ed04daf3d98",
      "parents": [
        "ca9f0089867c9e476cf2e6d4615d2aae887171b2"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jul 17 16:53:21 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:52 2008 -0400"
      },
      "message": "[SCSI] scsi_dh: add generic SPC-3 alua handler\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "b6ff1b14cdf4b4cb5403f3af2c3272f7e609a241",
      "tree": "d3a8231c0c4f6c647a8546dcea4659c19ea33949",
      "parents": [
        "4c05ae52fcb0e27a2ee4a16d1f31f8c547fd4886"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jul 17 16:53:03 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:51 2008 -0400"
      },
      "message": "[SCSI] scsi_dh: Update EMC handler\n\nThis patch converts the EMC device handler to use a proper\nstate machine. We now also parse the extended INQUIRY\ninformation to determine if long trespass commands are\nsupported. And we\u0027re now using the long trespass command\ncorrectly. And finally there\u0027s now an check at init time\nto refuse to attach to devices not supporting EMC-specific\nVPD pages.\n\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "765cbc6dad16b87724803e359d6be792ddf08614",
      "tree": "2cedfbe6b55c9f7a3e4cc3fb4f0d1f4d9d18f625",
      "parents": [
        "6d49f63b415ca02223e01e187076cb69a5a38eaf"
      ],
      "author": {
        "name": "Hannes Reinecke",
        "email": "hare@suse.de",
        "time": "Thu Jul 17 16:52:51 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:51 2008 -0400"
      },
      "message": "[SCSI] scsi_dh: Implement common device table handling\n\nInstead of having each and every driver implement its own\ndevice table scanning code we should rather implement a common\nroutine and scan the device tables there.\nThis allows us also to implement a general notifier chain\ncallback for all device handler instead for one per handler.\n\n[sekharan: Fix rejections caused by conflicting bug fix]\nSigned-off-by: Hannes Reinecke \u003chare@suse.de\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "6d49f63b415ca02223e01e187076cb69a5a38eaf",
      "tree": "0a55faae5505c1fb55d40e5a8c6caf69f2f215da",
      "parents": [
        "f27bac2761cab5a2e212dea602d22457a9aa6943"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Tue Jul 15 14:54:16 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 26 15:14:50 2008 -0400"
      },
      "message": "[SCSI] Make host_no an unsigned int\n\nDaniel Debonzi reports that he has managed to wrap host_no.  Increasing\nthe number of host numbers available to 32-bit from 16-bit allows the\nproblem to be evaded for another hundred years.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "aab0de245150c09e61c30962feb16aacde508dc3",
      "tree": "cd9cfa1e2c09aeb4cdeee605efa45fef90f0d38a",
      "parents": [
        "f75b1c60fc1e53c4004a79ea0be071aa3318cdcc"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri May 02 06:02:41 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:54:52 2008 -0700"
      },
      "message": "driver core: remove KOBJ_NAME_LEN define\n\nKobjects do not have a limit in name size since a while, so stop\npretending that they do.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "89a93f2f4834f8c126e8d9dd6b368d0b9e21ec3d",
      "tree": "e731456fec0cab1225ad3e806dc8d3efefa0a78b",
      "parents": [
        "260eddf4391f162a69d1d163729249635fa7a78f",
        "fe9233fb6914a0eb20166c967e3020f7f0fba2c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 18:58:04 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (102 commits)\n  [SCSI] scsi_dh: fix kconfig related build errors\n  [SCSI] sym53c8xx: Fix bogus sym_que_entry re-implementation of container_of\n  [SCSI] scsi_cmnd.h: remove double inclusion of linux/blkdev.h\n  [SCSI] make struct scsi_{host,target}_type static\n  [SCSI] fix locking in host use of blk_plug_device()\n  [SCSI] zfcp: Cleanup external header file\n  [SCSI] zfcp: Cleanup code in zfcp_erp.c\n  [SCSI] zfcp: zfcp_fsf cleanup.\n  [SCSI] zfcp: consolidate sysfs things into one file.\n  [SCSI] zfcp: Cleanup of code in zfcp_aux.c\n  [SCSI] zfcp: Cleanup of code in zfcp_scsi.c\n  [SCSI] zfcp: Move status accessors from zfcp to SCSI include file.\n  [SCSI] zfcp: Small QDIO cleanups\n  [SCSI] zfcp: Adapter reopen for large number of unsolicited status\n  [SCSI] zfcp: Fix error checking for ELS ADISC requests\n  [SCSI] zfcp: wait until adapter is finished with ERP during auto-port\n  [SCSI] ibmvfc: IBM Power Virtual Fibre Channel Adapter Client Driver\n  [SCSI] sg: Add target reset support\n  [SCSI] lib: Add support for the T10 (SCSI) Data Integrity Field CRC\n  [SCSI] sd: Move scsi_disk() accessor function to sd.h\n  ...\n"
    },
    {
      "commit": "fe9233fb6914a0eb20166c967e3020f7f0fba2c9",
      "tree": "45d6f25301e41ff9323f2eee20fce6ae341cda7f",
      "parents": [
        "d7f305e9a08040649b0800245e67708df58cdb55"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Fri May 23 18:16:40 2008 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Jul 15 09:16:43 2008 -0500"
      },
      "message": "[SCSI] scsi_dh: fix kconfig related build errors\n\nDo not automatically \"select\" SCSI_DH for dm-multipath. If SCSI_DH\ndoesn\u0027t exist,just do not allow  hardware handlers to be used.\n\nHandle SCSI_DH being a module also. Make sure it doesn\u0027t allow DM_MULTIPATH\nto be compiled in when SCSI_DH is a module.\n\n[jejb: added comment for Kconfig syntax]\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "d2886ea368a67704ecc13e69075f18a9d74cb12b",
      "tree": "54593ba6b45d1a4cdec66da4aa7d8d813cc49a3a",
      "parents": [
        "bce7f793daec3e65ec5c5705d2457b81fe7b5725"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun May 11 00:34:07 2008 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 14 13:00:17 2008 +0200"
      },
      "message": "scsi: sd: optionally set power condition in START STOP UNIT\n\nAdds a new scsi_device flag, start_stop_pwr_cond:  If enabled, the sd\ndriver will not send plain START STOP UNIT commands but ones with the\npower condition field set to 3 (standby) or 1 (active) respectively.\n\nSome FireWire disk firmwares do not stop the motor if power condition is\nzero.  Or worse, they become unresponsive after a START STOP UNIT with\npower condition \u003d 0 and start \u003d 0.\n\nhttp://lkml.org/lkml/2008/4/29/704\n\nThis patch only adds the necessary code to sd_mod but doesn\u0027t activate\nit.  Follow-up patches to the FireWire drivers will add detection of\naffected devices and enable the code for them.\n\nI did not add power condition values to scsi_error.c::scsi_eh_try_stu()\nfor now.  The three firmwares which suffer from above mentioned problems\ndo not need START STOP UNIT in the error handler, and they are not\nadversely affected by START STOP UNIT with power condition \u003d 0 and start\n\u003d 1 (like scsi_eh_try_stu() sends it if scsi_device.allow_restart is\nenabled).\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nTested-by: Tino Keitel \u003ctino.keitel@gmx.de\u003e\n"
    },
    {
      "commit": "02a1e3ce7df624ba91e8ff06e172f448746ad76a",
      "tree": "443b230d71fbfb82f5dc30049bdc10d7f511ff57",
      "parents": [
        "453cd0f3ff3bf25d86c96e62d271ba238f06d5ff"
      ],
      "author": {
        "name": "Alexander Beregalov",
        "email": "a.beregalov@gmail.com",
        "time": "Sun Jul 06 17:01:34 2008 +0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 08:22:37 2008 -0500"
      },
      "message": "[SCSI] scsi_cmnd.h: remove double inclusion of linux/blkdev.h\n\nSigned-off-by: Alexander Beregalov \u003ca.beregalov@gmail.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "feac6a07c4a3578bffd6769bb4927e8a7e1f3ffe",
      "tree": "991f87dc67519beef0b6e6513a750babb25af056",
      "parents": [
        "5d4e226246331087799a01c267ec72e5931ff190"
      ],
      "author": {
        "name": "Martin Petermann",
        "email": "martin@linux.vnet.ibm.com",
        "time": "Wed Jul 02 10:56:35 2008 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Sat Jul 12 08:22:34 2008 -0500"
      },
      "message": "[SCSI] zfcp: Move status accessors from zfcp to SCSI include file.\n\nMove the accessor functions for the scsi_cmnd status from zfcp to the\nSCSI include file. Change the interface to the functions to pass the\nscsi_cmnd pointer instead of the status pointer.\n\nSigned-off-by: Martin Petermann \u003cmartin@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    }
  ],
  "next": "39120e11705782c77d3a47d7d2927676fd8e3aaa"
}
