)]}'
{
  "log": [
    {
      "commit": "33cf23b0a535475aead57707cb9f4fe135a93544",
      "tree": "67e14f77f0eeab847a26a6cbfcb44eecb5fa2fda",
      "parents": [
        "7a9b149212f3716c598afe973b6261fd58453b7a",
        "95bb335c0ebe96afe926387a1ef3a096bd884a82"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 07:19:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 07:19:18 2010 -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: (182 commits)\n  [SCSI] aacraid: add an ifdef\u0027d device delete case instead of taking the device offline\n  [SCSI] aacraid: prohibit access to array container space\n  [SCSI] aacraid: add support for handling ATA pass-through commands.\n  [SCSI] aacraid: expose physical devices for models with newer firmware\n  [SCSI] aacraid: respond automatically to volumes added by config tool\n  [SCSI] fcoe: fix fcoe module ref counting\n  [SCSI] libfcoe: FIP Keep-Alive messages for VPorts are sent with incorrect port_id and wwn\n  [SCSI] libfcoe: Fix incorrect MAC address clearing\n  [SCSI] fcoe: fix a circular locking issue with rtnl and sysfs mutex\n  [SCSI] libfc: Move the port_id into lport\n  [SCSI] fcoe: move link speed checking into its own routine\n  [SCSI] libfc: Remove extra pointer check\n  [SCSI] libfc: Remove unused fc_get_host_port_type\n  [SCSI] fcoe: fixes wrong error exit in fcoe_create\n  [SCSI] libfc: set seq_id for incoming sequence\n  [SCSI] qla2xxx: Updates to ISP82xx support.\n  [SCSI] qla2xxx: Optionally disable target reset.\n  [SCSI] qla2xxx: ensure flash operation and host reset via sg_reset are mutually exclusive\n  [SCSI] qla2xxx: Silence bogus warning by gcc for wrap and did.\n  [SCSI] qla2xxx: T10 DIF support added.\n  ...\n"
    },
    {
      "commit": "95bb335c0ebe96afe926387a1ef3a096bd884a82",
      "tree": "56115332b4f2f7ef300c36248a6a7d20db2e639d",
      "parents": [
        "1b4d0d8ea7b3cbd107f345ab766416f9b38ce66a",
        "9cccde93fed1ca988eb2fb17ab9194bf7b5ed1b0"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue May 18 10:33:43 2010 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue May 18 10:37:41 2010 -0400"
      },
      "message": "[SCSI] Merge scsi-misc-2.6 into scsi-rc-fixes-2.6\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "58ea91c05346f7c6336e6248b743aa9a8e1c19a9",
      "tree": "aa8fafa3a049a482eb9f2600fec40c03ae10935a",
      "parents": [
        "f73a2b03c59b95a3ee8eebcc127350c77c950e87"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon May 17 10:00:07 2010 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon May 17 10:00:16 2010 +0200"
      },
      "message": "[S390] avoid default_llseek in s390 drivers\n\nUse nonseekable_open for a couple of s390 device drivers. This avoids\nthe use of default_llseek function which has a dependency on the BKL.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6e51f085f64a79c7647e88a8a019b7bd84f42255",
      "tree": "68f12d1b527fff00e215923791e838743de33e88",
      "parents": [
        "64deb6efdc5504ce97b5c1c6f281fffbc150bd93"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 30 18:09:37 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 02 15:42:34 2010 -0400"
      },
      "message": "[SCSI] zfcp: Zero memory for gpn_ft and adisc requests\n\nWith debug kernels, the memory allocated with kmem_cache_alloc might\nbe initialized with the poison values 6b and a5. Use kmem_cache_zalloc\ninstead of kmem_cache_alloc to get zeroed memory and not send invalid\nrequests.\n\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "64deb6efdc5504ce97b5c1c6f281fffbc150bd93",
      "tree": "dac0645d128d00b19ca55fe11f6d51b6e9f19d8e",
      "parents": [
        "6b9e1520094a8aa68009c265eb694e0be9f5be3f"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 30 18:09:36 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 02 15:42:33 2010 -0400"
      },
      "message": "[SCSI] zfcp: Use status_read_buf_num provided by FCP channel\n\nThe FCP channel provides the number of status read buffers to issue.\nUse the provided number instead of the hardcoded number in zfcp.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "6b9e1520094a8aa68009c265eb694e0be9f5be3f",
      "tree": "d6abee81a84fe8e43c26c0db75a9917599f0b835",
      "parents": [
        "1674b4054744c2cfd6573e43eca45d86ff581d0e"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 30 18:09:35 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 02 15:42:32 2010 -0400"
      },
      "message": "[SCSI] zfcp: Move sbal_get function to zfcp_qdio.c\n\nWaiting for a free sbal is a operation on the qdio queue. Move the\ncode implementing the wait to zfcp_qdio.c and rename the functions\naccordingly.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1674b4054744c2cfd6573e43eca45d86ff581d0e",
      "tree": "6a59f4f00b15b30313c330e9636b36c88c93a1c9",
      "parents": [
        "683229845f1780b10041ee7a1043fc8f10061455"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 30 18:09:34 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 02 15:42:30 2010 -0400"
      },
      "message": "[SCSI] zfcp: Move sbale handling to zfcp_qdio files\n\nMove the code accessing the qdio sbales and zfcp_qdio_req struct to\nthe zfcp_qdio files and provide helper functions for accessing the\nqdio related parts.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "683229845f1780b10041ee7a1043fc8f10061455",
      "tree": "88f58f214666762a71d1458a72646dd65372a1a6",
      "parents": [
        "883c98feaab708d0fc976225b146aa9307023c85"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Fri Apr 30 18:09:33 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 02 15:42:29 2010 -0400"
      },
      "message": "[SCSI] zfcp: Report scatter-gather limits to SCSI and block layer\n\nInstead of dealing with large segments in the scatter-gather lists in\nzfcp_qdio.c, report the limits to the upper layers. With these limits\nin place, the code for mapping large data blocks to multiple sbales\ncan be removed.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5bbf297cc652713a0a6511004b8d4c1cc21a3b02",
      "tree": "d13d5789c81b80827046db49a538fc76173addc1",
      "parents": [
        "07bbd0facdcda64f2c77fc6a505afd32e45fa506"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Apr 01 13:04:08 2010 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 13:31:20 2010 -0500"
      },
      "message": "[SCSI] zfcp: Fix tracing of requests with error status\n\nWhen a FSF request is returned with an error it should be reported\nthrough blktrace for the ziomon tools, but the latency information\nshould not be read. Fix this by also calling zfcp_fsf_req_trace for\nthe error case, but skip reading the latencies inside the function.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a1dbfddd02d2b3e75f8750c68563e1d6eec16260",
      "tree": "130622cc131439bb4883d94ca862b2152109ad6e",
      "parents": [
        "2f2eb58762b4dcddfe25c90800323765c1257eca"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Mar 24 16:50:31 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:49:35 2010 -0500"
      },
      "message": "[SCSI] zfcp: Pass return code from fc_block_scsi_eh to scsi eh\n\nThe return code FAST_IO_FAIL from fc_block_scsi_eh indicates that the\npending I/O requests have been terminated as a result of the\nfast_io_fail_tmo. Pass this return code back to the scsi eh to stop\nthe scsi eh in this case.\n\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "584dfddfce1bd81d877f14de2b56d4bc747af821",
      "tree": "e91ae4e2c9fceaf96918276d8cc74adf49613155",
      "parents": [
        "b1e2ba8da973535e62839915403b6f5450081d8c"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "ursula.braun@de.ibm.com",
        "time": "Mon Mar 08 12:25:20 2010 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@mschwide.boeblingen.de.ibm.com",
        "time": "Mon Mar 08 12:25:30 2010 +0100"
      },
      "message": "[S390] remove unused qdio flags in zfcp and qeth\n\nzfcp and qeth are setting flags for the qdio-layer, but these flags\nare not used in qdio. Patch removes the flag definitions from qdio\nand their settings in zfcp and qeth.\n\nCc: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nCc: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "654451748b779b28077d9058442d0f354251870d",
      "tree": "ff889a2f6226e16b1121789f809927666a9ccf13",
      "parents": [
        "64d497f55379b1e320a08ec2426468d96f5642ec",
        "77c9cfc51b0d732b2524799810fb30018074fd60"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 26 16:55:27 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 26 16:55:27 2010 -0800"
      },
      "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: (158 commits)\n  [SCSI] Fix printing of failed 32-byte commands\n  [SCSI] Fix printing of variable length commands\n  [SCSI] libsrp: fix bug in ADDITIONAL CDB LENGTH interpretation\n  [SCSI] scsi_dh_alua: Add IBM Power Virtual SCSI ALUA device to dev list\n  [SCSI] scsi_dh_alua: add netapp to dev list\n  [SCSI] qla2xxx: Update version number to 8.03.02-k1.\n  [SCSI] qla2xxx: EEH: Restore PCI saved state during pci slot reset.\n  [SCSI] qla2xxx: Add firmware ETS burst support.\n  [SCSI] qla2xxx: Correct loop-resync issues during SNS scans.\n  [SCSI] qla2xxx: Correct use-after-free issue in terminate_rport_io callback.\n  [SCSI] qla2xxx: Correct EH bus-reset handling.\n  [SCSI] qla2xxx: Proper clean-up of BSG requests when request times out.\n  [SCSI] qla2xxx: Initialize payload receive length in failure path of vendor commands\n  [SCSI] fix duplicate removal on error path in scsi_sysfs_add_sdev\n  [SCSI] fix refcounting bug in scsi_get_host_dev\n  [SCSI] fix memory leak in scsi_report_lun_scan\n  [SCSI] lpfc: correct PPC build failure\n  [SCSI] raid_class: add raid1e\n  [SCSI] mpt2sas: Do not call sas_is_tlr_enabled for RAID volumes.\n  [SCSI] zfcp: Introduce header file for qdio structs and inline functions\n  ...\n"
    },
    {
      "commit": "34c2b712992540ca436e97432ffc57c84c8f8c18",
      "tree": "94ee5b92c29c1c79a87c861b8f69de5060bc1f72",
      "parents": [
        "2d8e62bbf7e83facd5701c100f62fbf0df4ee486"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:59 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:35 2010 -0600"
      },
      "message": "[SCSI] zfcp: Introduce header file for qdio structs and inline functions\n\nMove the qdio related structs and some helper functions to a new\nzfcp_qdio.h header file. While doing this, rename the struct\nzfcp_queue_req to zfcp_qdio_req to adhere to the naming scheme used in\nzfcp. This allows a better seperation of the qdio code and inlining\nthe helper functions will save some function calls.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "2d8e62bbf7e83facd5701c100f62fbf0df4ee486",
      "tree": "836259af89d5ca843d6445c1907fbb492d758777",
      "parents": [
        "ab72528a4498251a702fa7693b51b9311b2432f8"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:58 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:33 2010 -0600"
      },
      "message": "[SCSI] zfcp: Replace FC4 constants with information from exchange port\n\nThe FC4 types are already available from exchange port.  Use this for\nreporting the FC4 types, instead of having the value hardcoded in\nzfcp.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ab72528a4498251a702fa7693b51b9311b2432f8",
      "tree": "3413362ef1838a6ddbf2ab6316685a18c547ba66",
      "parents": [
        "615f59e0daaf56e43dcaaf3ea228967d9bc21584"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:57 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:31 2010 -0600"
      },
      "message": "[SCSI] zfcp: Move scsi result tracing decision to zfcp_dbf.h\n\nMove the decision which trace tag and trace level to use for the scsi\nresult trace to zfcp_dbf.h. zfcp_dbf_scsi_result is already an inline\nfunction, so move the trace code there, simplifying the response\nhandling in zfcp_fsf.c.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "615f59e0daaf56e43dcaaf3ea228967d9bc21584",
      "tree": "846366936a5077153b8f07b3125e868d7f6bce4e",
      "parents": [
        "5bdecd2248d4af6f3b311b4d8ca7f3f5f83a7191"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:56 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:30 2010 -0600"
      },
      "message": "[SCSI] zfcp: Rename sysfs_device attribute to dev in zfcp_unit and zfcp_port\n\nKernel code uses dev as short name for the struct device. Rename the\nsysfs_device in zfcp_unit and zfcp_port to match this convention.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5bdecd2248d4af6f3b311b4d8ca7f3f5f83a7191",
      "tree": "852b9183b0dd24b7426994fc5cdeb681d7938cb7",
      "parents": [
        "d21e9daa63e009ce5b87bbcaa6d11ce48e07bbbe"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:55 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:28 2010 -0600"
      },
      "message": "[SCSI] zfcp: Remove duplicate assignment of req_seq_no\n\nzfcp_fsf_req_create assigns the same value twice to req_seq_no.\nRemove one assignment and move the req_id and seq_no assignments to\none place.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d21e9daa63e009ce5b87bbcaa6d11ce48e07bbbe",
      "tree": "e09b0f6c6e6016ad0a425afe0a7e10b89c3138ac",
      "parents": [
        "22ed130719987d1081831dc1481160b216224ffd"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:54 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:27 2010 -0600"
      },
      "message": "[SCSI] zfcp: Dont use 0 to indicate invalid LUN in rec trace\n\n0 is a valid value for a LUN. It is slightly confusing to also see 0\nin the trace entries relating to adapter and port. Change this to use\n0xFFFFFFFFFFFFFFFF in the LUN field when the trace entry does not\nrelate to a LUN or unit.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "22ed130719987d1081831dc1481160b216224ffd",
      "tree": "df4d50cb0222d80755cb44ed398bc6afbcc06ca8",
      "parents": [
        "67feeebaa7038129ad58ae0dcece8142186b36a9"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:53 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:24 2010 -0600"
      },
      "message": "[SCSI] zfcp: Fix warnings from smatch\n\nThe smatch tool from http://repo.or.cz/w/smatch.git warns about this:\n\ndrivers/s390/scsi/zfcp_scsi.c +64 zfcp_scsi_command_fail(5) warn: variable dereferenced before check \u0027scpnt-\u003edevice\u0027\ndrivers/s390/scsi/zfcp_scsi.c +64 zfcp_scsi_command_fail(5) warn: variable dereferenced before check \u0027scpnt-\u003edevice-\u003ehost\u0027\ndrivers/s390/scsi/zfcp_scsi.c +93 zfcp_scsi_queuecommand(23) warn: variable dereferenced before check \u0027unit\u0027\n\nFix the first two warnings by removing the checks for scpnt-\u003edevice\nand -\u003e host: As long as the SCSI command exists, there is also a\nscsi_device and a Scsi_Host.\n\nFix the last warning by removing the BUG_ON checks in\nzfcp_scsi_queuecommand, they are leftovers from previous paranoia\nabout wrong pointers between data structures.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "67feeebaa7038129ad58ae0dcece8142186b36a9",
      "tree": "2f5dcdaeb157a880a4ae36e77b2632a7d6544c1c",
      "parents": [
        "452b505c5ada345103bdfdb39dc550df3ffe9eea"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:52 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:22 2010 -0600"
      },
      "message": "[SCSI] zfcp: Remove unused payload field from zfcp_dbf_san_record\n\nRemove the unused payload field from the struct zfcp_dbf_san_record,\nsaving some space in the SAN trace.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "452b505c5ada345103bdfdb39dc550df3ffe9eea",
      "tree": "de88e7fb6c42de0fc9522d959abc9c82f57d0fe5",
      "parents": [
        "b6bd2fb92a7bb9f1f3feecd9945c21e6c227dd51"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:51 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:21 2010 -0600"
      },
      "message": "[SCSI] zfcp: Remove two FIXME comments\n\nOn a link down, the adapter reopen is not strictly necessary, but it\nhelps flushing pending requests as quickly as possible. Add a comment\nmentioning this.\n\nqdio returning a problem on the response queue is an unlikely event.\nThe recovery mentioned in the comment might resolve it, so implement\nit. This also has the advantage that it creates an entry in the\nrecovery trace to see if and when this is occurring.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b6bd2fb92a7bb9f1f3feecd9945c21e6c227dd51",
      "tree": "764374b8317b504336ef0c9ba4160ff7124c3e10",
      "parents": [
        "e60a6d69f1f84c2ef1cc63aefaadfe7ae9f12934"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:50 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:19 2010 -0600"
      },
      "message": "[SCSI] zfcp: Move FSF request tracking code to new file\n\nMove the code for tracking FSF requests to new file to have this code\nin one place. The functions for adding and removing requests on the\nI/O path are already inline. The alloc and free functions are only\ncalled once, so it does not hurt to inline them and add them to the\nsame file.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e60a6d69f1f84c2ef1cc63aefaadfe7ae9f12934",
      "tree": "82d93610abd9c859eb43675b095583b17253309d",
      "parents": [
        "cae727db30e9bcbc0256ec3282edce98b4a85433"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Feb 17 11:18:49 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 17:46:17 2010 -0600"
      },
      "message": "[SCSI] zfcp: Remove function zfcp_reqlist_find_safe\n\nAlways use the FSF request id as a reference to the FSF request. With\nthis change the function zfcp_reqlist_find_safe is no longer needed\nand can be removed.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "7dec9cf1dfa283feca4b761160112ea4838a6a8c",
      "tree": "cf61e7ea19d4b34bfccf68b983b935e497a93676",
      "parents": [
        "9858ae38011d699d4c2fa7f3493a47accf43a0f5"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Jan 26 17:49:19 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 08 13:40:17 2010 -0600"
      },
      "message": "[SCSI] zfcp: Report FC BSG errors in correct field\n\nThe status FC_CTELS_STATUS_REJECT for all FC BSG errors is not\nappropriate. Instead, report -EIO in the result field if there was a\nproblem in zfcp with the FC BSG request. If the request is good from\nour point of view, report result 0, status FC_CTELS_STATUS_OK and let\nuserspace read the Accept or Reject from the payload (as documented in\nscsi_bsg_fc.h).\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "51375ee8374dd7fa574e1a14ebac406c6d28543b",
      "tree": "cfc822b99af2a8bb894c4a549093f92ea917ff8e",
      "parents": [
        "491ca4426ba153f79e72d1ca2a30c926484282b7"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Thu Jan 14 17:19:02 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Jan 17 12:40:13 2010 -0600"
      },
      "message": "[SCSI] zfcp: Set hardware timeout as requested by BSG request.\n\nThe hardware used with zfcp provides a timer for CT and ELS requests\ninstead of an abort capability for these commands. To correctly handle\nthe FC BSG timeouts, pass the timeout from the BSG requests to the\nhardware.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "491ca4426ba153f79e72d1ca2a30c926484282b7",
      "tree": "44ad459ae8fa2521632d5a7f0f74bdf52409003c",
      "parents": [
        "b8f08645f80a0c93246f3539ce53d3cae6a91fa0"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Thu Jan 14 17:19:01 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Jan 17 12:40:12 2010 -0600"
      },
      "message": "[SCSI] zfcp: Introduce bsg_timeout callback.\n\nIntroduce a zfcp callback for timeouts triggered from FC BSG.  With\nzfcp, the underlying hardware cannot abort CT or ELS requests, so\nthere is nothing to do when the block layer timeout expires.  To avoid\ninterference with the block layer timeout, simply indicate that the\nblock layer timer should be reset. The timer running in the hardware\nfor the pending CT or ELS request will return the request when it\nexpires.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9e2ab1fabdbd88669fdebd368fb5cda32ad5438d",
      "tree": "8707b3baccb3814cc8038423157758930e3e06b3",
      "parents": [
        "5a3fb3081a0166cdc5df0d9200234d09ad8d6083"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Jan 13 17:52:38 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Jan 17 12:38:49 2010 -0600"
      },
      "message": "[SCSI] zfcp: add missing compat ptr conversion\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5a3fb3081a0166cdc5df0d9200234d09ad8d6083",
      "tree": "d3de0fbea19a24a16b482b8921deade14b66e1ce",
      "parents": [
        "f09d5454576b9aabd4ce454937cd86263428090b"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Jan 13 17:52:37 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Jan 17 12:38:47 2010 -0600"
      },
      "message": "[SCSI] zfcp: Fix linebreak in hba trace\n\nAdvance the correct pointer when inserting the linebreak for the HBA\ntrace. It was missing in the output since the pointer to the output\nbuffer was never advanced, and the linebreak character was overwritten\nlater.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f09d5454576b9aabd4ce454937cd86263428090b",
      "tree": "538175bae5fc1906646052fc16111f325963b5cb",
      "parents": [
        "22c24734ce5e7cee9a63e02e5aa7ed108f8fad4d"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Jan 13 17:52:36 2010 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Jan 17 12:38:46 2010 -0600"
      },
      "message": "[SCSI] zfcp: Issue zfcp_fc_wka_port_put after FC CT BSG request\n\nThe patch \"zfcp: Simplify handling of ct and els requests\"\naccidentally removed the call to zfcp_fc_wka_port_put for FC CT BSG\nrequests, thus not issuing a \"close\" request for the WKA ports.\nIntroduce a CT specific handler to first call zfcp_fc_wka_port_put and\nthen continue with the generic handler when returning from FC CT BSG\nrequests.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "54987386ee3790f3900de4df2ed4deb0e18dfc9f",
      "tree": "a73d7975dadda2fb66c27883dc692de2e09b734c",
      "parents": [
        "0fdd21330a9d7bc6790eae0aed768052c315ae44"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:18 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:18 2009 -0600"
      },
      "message": "[SCSI] zfcp: Remove flag ZFCP_STATUS_FSFREQ_TMFUNCNOTSUPP\n\nThe flag ZFCP_STATUS_FSFREQ_TMFUNCNOTSUPP is never set and hence can\nbe removed. This is a leftover from the time when zfcp had to decide\nwhether the target supports a \"logical unit reset\" or not. Nowadays,\nthe SCSI midlayer calls the eh_device_reset_handler or the\neh_target_reset_handler and zfcp simply maps this to a \"logical unit\nreset\" or a \"target reset\".\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "0fdd21330a9d7bc6790eae0aed768052c315ae44",
      "tree": "fbc514e9f4732180a567b69fce9943606530c29e",
      "parents": [
        "af4de36d911ab907b92c5f3f81ceff8474ed7485"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:17 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:18 2009 -0600"
      },
      "message": "[SCSI] zfcp: Activate fc4s attributes for zfcp in FC transport class\n\nEnable the display of supported and active fc4s for zfcp in the FC\ntransport class. zfcp only supports FCP, so simply hard-code this\ninformation.  The zfcp hbaapi already has this information hardcoded,\nbut this would allow to switch from the coding in the zfcp hbaapi to\nthe common FC transport attributes in the future.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "af4de36d911ab907b92c5f3f81ceff8474ed7485",
      "tree": "3c10fe6223de5ff2ff1e19b4f28173f0dd948862",
      "parents": [
        "4c571c659e9d41332b6981ca5379047681ce9d2f"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:16 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:17 2009 -0600"
      },
      "message": "[SCSI] zfcp: Block scsi_eh thread for rport state BLOCKED\n\nIn case the SCSI error recovery starts because of a SCSI command\ntimeout, but then something else triggers the rport to be deleted, the\nSCSI error recovery will run to the end and set the SCSI device\noffline. To prevent this, call the FC transport function\nfc_block_scsi_eh which waits until the rport leaves the BLOCKED state.\nThis guarantees that communication is possible if the rport is ONLINE,\nor the SCSI devices will be removed if the rport state switches to\nNOT_PRESENT.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "4c571c659e9d41332b6981ca5379047681ce9d2f",
      "tree": "57221fdc1d2e0450dbed56e0255ff1ddf14a861a",
      "parents": [
        "ee744622c65cd66824e8dd1b9509e515c800de14"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:15 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:16 2009 -0600"
      },
      "message": "[SCSI] zfcp: Update FSF error reporting\n\nThe SCSI midlayer retries commands based on the remote port state and\nthe command status reported by the driver. Returning\nDID_TRANSPORT_DISRUPTED is a better approach, use this for reporting\nFSF errors back to the SCSI midlayer.  See\nhttp://marc.info/?l\u003dlinux-scsi\u0026m\u003d125668044215051\u0026w\u003d2 as reference.\n\nThere is also no need in special treatment of ABORTED commands, so\nremove the ZFCP_STATUS_FSFREQ_ABORTED, the commands are then returned\nwith DID_TRANSPORT_DISRUPTED.\n\nAlso remove the ZFCP_STATUS_FSFREQ_RETRY: It is useless, no retry is\nhappening in the FSF layer and nobody checks the state of this flag.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ee744622c65cd66824e8dd1b9509e515c800de14",
      "tree": "4925603f5170400b07cde7cc18d2519cfcf788e2",
      "parents": [
        "7c7dc196814b9e1d5cc254dc579a5fa78ae524f7"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:14 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:16 2009 -0600"
      },
      "message": "[SCSI] zfcp: Improve ELS ADISC handling\n\nIntroduce kmem_cache for ELS ADISC data to guarantee the required\nhardware alignment and free the allocated memory in case the send\nfailes.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "7c7dc196814b9e1d5cc254dc579a5fa78ae524f7",
      "tree": "efe4800a456fa97e1f10876840fbde0983264b18",
      "parents": [
        "800c0cad962dcf630cabf3efdc5983619e73d4c9"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:13 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:15 2009 -0600"
      },
      "message": "[SCSI] zfcp: Simplify handling of ct and els requests\n\nRemove some redundancies in FC related code and trace:\n- drop redundant data from SAN trace (local s_id that only changes\n  during link down, ls_code that is already part of payload, d_id in\n  ct response trace that is always the same as in ct request trace)\n- use one common fsf struct to hold zfcp data for ct and els requests\n- leverage common fsf struct for FC passthrough job data, allocate it\n  with dd_bsg_data for passthrough requests and unify common code for\n  ct and els passthrough request\n- simplify callback handling in zfcp_fc\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "800c0cad962dcf630cabf3efdc5983619e73d4c9",
      "tree": "4d593b6ec683b524bb2e503483696218aa1eb167",
      "parents": [
        "bd0072ecc449fb2ea8f6a2c9f6ff308f3ae0b078"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:12 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:14 2009 -0600"
      },
      "message": "[SCSI] zfcp: Remove ZFCP_DID_MASK\n\nInstead of assigning 4 bytes with the highest byte masked out, use a 3\nbyte array with the ntoh24 and h24ton helper functions, thus\neliminating the need for the ZFCP_DID_MASK.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "bd0072ecc449fb2ea8f6a2c9f6ff308f3ae0b078",
      "tree": "d58dc3bbac4a7e5c7fa44c009c4946b091eb9a88",
      "parents": [
        "dbf5dfe9dbcecf159139eec25ad256738cbc3715"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:11 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:14 2009 -0600"
      },
      "message": "[SCSI] zfcp: Move WKA port to zfcp FC code\n\nThe well-known-address (WKA) port handling code is part of the FC code\nin zfcp. Move everything WKA related to the zfcp_fc files and use the\ncommon zfcp_fc prefix for structs and functions. Drop the unused key\nmanagement service while renaming the struct, no request could ever\nreach this service in zfcp and it is obsolete anyway.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "dbf5dfe9dbcecf159139eec25ad256738cbc3715",
      "tree": "1f1703cf4a270beb3e7046244123e62188de53f4",
      "parents": [
        "9d05ce2c0a6704ff84df02cbb3baef94fcac4f5d"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:10 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:13 2009 -0600"
      },
      "message": "[SCSI] zfcp: Use common code definitions for FC CT structs\n\nUse common code definitions for FC GPN_FT and GID_PN\ninstead of inventing private ones. Move the private structs still\nrequired inside zfcp to zfcp_fc header file.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9d05ce2c0a6704ff84df02cbb3baef94fcac4f5d",
      "tree": "2388ff365f068511ceb6e9bfbc13fe2425f0ae4c",
      "parents": [
        "4318e08c84e4916ac463002ffb7f9901ddb3c385"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:09 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:11 2009 -0600"
      },
      "message": "[SCSI] zfcp: Use common code definitions for FC ELS structs\n\nUse common code definitions for FC plogi, logo, rscn and adisc structs\ninstead of inventing private ones. Move the private struct for issuing\nELS ADISC inside zfcp to zfcp_fc header file.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "4318e08c84e4916ac463002ffb7f9901ddb3c385",
      "tree": "ebce82e85a0d2010c98d0585a5b94113981ee357",
      "parents": [
        "8830271c4819d86d8e87202a1fe8da0bb58912a2"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:08 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:10 2009 -0600"
      },
      "message": "[SCSI] zfcp: Update FCP protocol related code\n\nUse common data structures for FCP CMND, FCP RSP and related\ndefinitions and remove zfcp private definitions. Split the FCP CMND\nsetup and FCP RSP evaluation code in seperate functions. Use inline\nfunctions to not negatively impact the I/O path.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "8830271c4819d86d8e87202a1fe8da0bb58912a2",
      "tree": "95069a94b64fc94ca24fec6d040b037097ef42ce",
      "parents": [
        "9eae07ef6bb5988163d8bb82cd952905db47b721"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:07 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:09 2009 -0600"
      },
      "message": "[SCSI] zfcp: Dont fail SCSI commands when transitioning to blocked fc_rport\n\nIf an error occurs that triggers the call to fc_remote_port_delete,\nideally this call would happen before any I/O is passed back to the\nSCSI midlayer through scsi_done. The SCSI midlayer will retry the\ncommands and fc_remote_port_chkready will return the correct status\ncode.  But with the delay between calling scsi_done in softirq context\nand the call to fc_remote_port_delete from the workqueue, there is a\nwindow where zfcp returns DID_ERROR. This leads to SCSI error recovery\nwhich then leads to offline SCSI devices since all recovery actions\nwill fail with the rport now being blocked.\n\nIn this window, zfcp has to return DID_IMM_RETRY just as the FC\ntransport class would do in fc_remote_port_chkready for the blocked\nfc_rport. As soon as the fc_rport is BLOCKED, fc_remote_port_chkready\nwill do the right thing.\n\nAdditionally, there are two more cases to catch in zfcp_scsi_queuecommand:\n- After the port has been opened, the unit has to be opened. During\n  this period I/O has to be retried. This can also be handled with\n  DID_IMM_RETRY.\n- If the access to the unit fails, but the port is good, then\n  this single unit cannot be accessed and I/O to this unit has to fail\n  without involving the FC transport class.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9eae07ef6bb5988163d8bb82cd952905db47b721",
      "tree": "97a7f5c98c760b6232e5cdb60e5da58414079981",
      "parents": [
        "6b183334c23969d52d4d9f775da554480d05ca4d"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:54:06 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:08 2009 -0600"
      },
      "message": "[SCSI] zfcp: Assign scheduled work to driver queue\n\nThe port_scan work was scheduled to the work_queue provided by the\nkernel. This resulted on SMP systems to a likely situation that more\nthan one scan_work were processed in parallel. This is not required\nand openes the possibility of race conditions between the removal of\ninvalid ports and the enqueue of just scanned ports.  This patch\nsynchronizes the scan_work tasks by scheduling them to adapter local\nwork_queue.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "6b183334c23969d52d4d9f775da554480d05ca4d",
      "tree": "32f791e10aff8be2acaede6c3881b6561a65cc5a",
      "parents": [
        "c1fad4176464281e776022dee7d029144afbeb13"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:54:05 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:07 2009 -0600"
      },
      "message": "[SCSI] zfcp: Remove STATUS_COMMON_REMOVE flag as it is not required anymore\n\nThe flag ZFCP_STATUS_COMMON_REMOVE was used to indicate that a\nresource is not ready to be used or about to be removed from the\nsystem. This is now better done by an improved list handling\nand therefore the additional indicator is not required anymore.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "c1fad4176464281e776022dee7d029144afbeb13",
      "tree": "c21502a9be5c0e500f4224565a054efbfa3d0254",
      "parents": [
        "d9742b42b5c76e2a3a39de0d187fac4f6852134e"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:04 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:06 2009 -0600"
      },
      "message": "[SCSI] zfcp: Implement module unloading\n\nWith the reference counting for zfcp data structures, it is now\npossible to implement module unloading again. Module unloading\nrequires to free all data structures in the module exit function. This\nis done by unregistering zfcp from s390 cio and the SCSI midlayer\nfirst in the module exit function.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d9742b42b5c76e2a3a39de0d187fac4f6852134e",
      "tree": "361b95354ff266e85b5da2131be9532a5bff0d78",
      "parents": [
        "25458eb791acf0e5e65183c5adb3918d8d71d756"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:03 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:05 2009 -0600"
      },
      "message": "[SCSI] zfcp: Merge trace code for fsf requests in one function\n\nThe latencies traced per fsf request are traced for sysfs output and\nfor blktrace, each in one function. Simplify the tracing code by\nmerging both tracing functions into one.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "25458eb791acf0e5e65183c5adb3918d8d71d756",
      "tree": "e634ee6be885b096c8a8840f6b6a1184d1fb341d",
      "parents": [
        "b42aeceb35c59484056b0eea81203a0911ebb50d"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Nov 24 16:54:02 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:04 2009 -0600"
      },
      "message": "[SCSI] zfcp: Access ports and units with container_of in sysfs code\n\nWhen accessing port and unit attributes, use container_of instead of\ndev_get_drvdata. This eliminates some code checker warnings about\naliased access of data structures.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b42aeceb35c59484056b0eea81203a0911ebb50d",
      "tree": "f3e2cb6eaf976fcfe00be0ef2d71f708710c73f3",
      "parents": [
        "de3dc57214a1466034ecc4d4ffb10331d34c09a3"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:54:01 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:03 2009 -0600"
      },
      "message": "[SCSI] zfcp: Remove suspend callback\n\nThe callback for suspend is not required because it contains exactly\nthe same functionality as the _set_offline routine does.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "de3dc57214a1466034ecc4d4ffb10331d34c09a3",
      "tree": "63eb490d66f9db2cf032041392fb2f4d5ac4785c",
      "parents": [
        "f3450c7b917201bb49d67032e9f60d5125675d6a"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:54:00 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:02 2009 -0600"
      },
      "message": "[SCSI] zfcp: Remove global config_mutex\n\nThe global config_mutex was required for the serialization of a\nconfiguration change within the zfcp driver.  This global locking is\nnow obsolete and can be removed.  The requirement of serializing the\naccess to a zfcp_adapter reference via a ccw_device is realized wth a\nstatic spinlock.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f3450c7b917201bb49d67032e9f60d5125675d6a",
      "tree": "404b1c23490b0a5ba3d6cbbb14e64381a12a108a",
      "parents": [
        "ecf0c7721b104c0ce9c8ca534c911f6310cf92a8"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:53:59 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:02 2009 -0600"
      },
      "message": "[SCSI] zfcp: Replace local reference counting with common kref\n\nReplace the local reference counting by already available mechanisms\noffered by kref. Where possible existing device structures were used,\nincluding the same functionality.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ecf0c7721b104c0ce9c8ca534c911f6310cf92a8",
      "tree": "639032b36bcbbe905c98c6f0b3b521dc2f0b1806",
      "parents": [
        "0a55256d158c18e4821c248a295b7f8f4423660f"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Nov 24 16:53:58 2009 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:02:01 2009 -0600"
      },
      "message": "[SCSI] zfcp: Replace global config_lock with local list locks\n\nThe global config_lock was used to protect the configuration organized\nin independent lists. It is not necessary to have a lock on driver\nlevel for this purpose.  This patch replaces the global config_lock\nwith a set of local list locks.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "42e62a74377bcbb526565a31aa18da8f712b93ee",
      "tree": "61692fdff92370cb58fbe3fe7a82162ee58de831",
      "parents": [
        "229b8d72f3eccf97e8a9e22436e8fc303b3483cd"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Oct 15 17:47:11 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:45 2009 -0600"
      },
      "message": "[SCSI] zfcp: Adapt change_queue_depth for queue full tracking\n\nAdapt the change_queue_depth callback in zfcp for the new reason\nparameter. Simply pass each call back to the SCSI midlayer, there are\nno resource adjustments necessary for zfcp.\n\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\n\nRemoves check for (depth \u003c\u003d default_depth) in case of\nSCSI_QDEPTH_RAMP_UP call back, not needed after added\nmax_queue_depth per sdev.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e881a172dac4d9ea3b2a1540041d872963c269bd",
      "tree": "9eb1f344b107806c0041c4e0a64192a055117289",
      "parents": [
        "dbf9bfe615717d1145f263c0049fe2328e6ed395"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Thu Oct 15 17:46:39 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:41 2009 -0600"
      },
      "message": "[SCSI] modify change_queue_depth to take in reason why it is being called\n\nThis patch modifies scsi_host_template-\u003echange_queue_depth so that\nit takes an argument indicating why it is being called. This will be\nused so that if a LLD needs to do some extra processing when\nhandling queue fulls or later ramp ups, it can do so.\n\nThis is a simple port of the drivers setting a change_queue_depth\ncallback. In the patch I just have these LLDs adjust the queue depth\nif the user was requesting it.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\n\n[Vasu.Dev: v2\n\tAlso converted pmcraid_change_queue_depth and then verified\nall modules compile  using \"make allmodconfig\" for any new build\nwarnings on X86_64.\n\n\tUpdated original description after combing two original\npatches from Mike to make this patch git bisectable.]\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\n[jejb: fixed up 53c700]\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9e820afd0c4f3c8e8894aa91f5671fd7d11a787b",
      "tree": "5cc2c79cdf223eb30b43c85caf7a281edbf24be3",
      "parents": [
        "9d38500de156fb28ffa8741acb90c4dc90a9fb4b"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Oct 13 10:44:11 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Oct 22 09:38:51 2009 +0900"
      },
      "message": "[SCSI] zfcp: Flush SCSI registration work when adding unit\n\nWhen configuring a LUN for use in zfcp, flush the SCSI work to ensure\nthe SCSI device has been created before returning. This means that a\nconfiguration procedure can run these commands in a script and the\nSCSI device is available immediately after the unit_add:\n\necho 1 \u003e /sys/bus/ccw/drivers/zfcp/0.0.181d/online\necho 0x401040C300000000 \u003e \\\n        /sys/bus/ccw/drivers/zfcp/0.0.181d/0x500507630313c562/unit_add\nlsscsi\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9d38500de156fb28ffa8741acb90c4dc90a9fb4b",
      "tree": "51a9cf9bfea2c1e20ce50d091dce61b128be633a",
      "parents": [
        "10d00f78e67223ef429fa5f4abfc9ea4ad740490"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Oct 13 10:44:10 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Oct 22 09:38:49 2009 +0900"
      },
      "message": "[SCSI] zfcp: Fix timer initialization for ct and els requests\n\nAdd HZ since the start_timer function expects jiffies, not seconds.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "10d00f78e67223ef429fa5f4abfc9ea4ad740490",
      "tree": "f5187aaacfdde4e5ce03929c5036bdfd5339f9fd",
      "parents": [
        "934aeb587bab3173b6dec8e7717b909d8efc77b0"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Oct 13 10:44:09 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Oct 22 09:38:47 2009 +0900"
      },
      "message": "[SCSI] zfcp: Warn about storage devices with broken PLOGI data\n\nAfter opening a remote port zfcp checks if the WWPN returned in the\nPLOGI maches the WWPN of the port that should have been opened. On a\nmismatch zfcp assumes that the DID just changed, queries the FC\nnameserver and tries again. If the situation persists the erp will\ngive up.\n\nWith this strategy, if the remote port always returns the wrong PLOGI\ndata, the remote port will not be opened. Introduce a warning, so that\nthe system administrator knows why the remote port is not being opened\nand to have a pointer to investigate the problem on the storage\nsystem.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "934aeb587bab3173b6dec8e7717b909d8efc77b0",
      "tree": "051a4836be95f529bf82914ba09847694d9673c2",
      "parents": [
        "d10c0858f618c20547d4eda8aee9c3afd91599cf"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Wed Oct 14 11:00:43 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Oct 22 09:38:45 2009 +0900"
      },
      "message": "[SCSI] zfcp: Handle WWPN mismatch in PLOGI payload\n\nFor ports, zfcp gets the DID from the FC nameserver and tries to open\nthe port. If the open succeeds, zfcp compares the WWPN from the\nnameserver with the WWPN in the PLOGI payload. In case of a mismatch,\nzfcp assumes that the DID of the port just changed and we opened the\nwrong port. This means that zfcp has to forget the DID, lookup the DID\nagain and retry.\n\nThis error case had a problem that zfcp forgets the DID, but never\nlooks up a new one, stalling the ERP in this case. Fix this by\ntriggering the DID lookup and properly exit from the ERP. The DID\nlookup will trigger a new ERP action.\n\nAlso ensure when trying to open the port again with the new DID, first\nclose the open port, even in the NOESC case.\n\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d10c0858f618c20547d4eda8aee9c3afd91599cf",
      "tree": "df1c20b8d735c50dd3847d95c6c1083093748649",
      "parents": [
        "37e6ba00720c2786330dec2a9a5081e9e049422f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Oct 13 10:44:07 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Oct 22 09:38:42 2009 +0900"
      },
      "message": "[SCSI] zfcp: fix kfree handling in zfcp_init_device_setup\n\nThe pointer that is allocated with kmalloc() is passed to strsep()\nwhich modifies it. Later on the modified pointer value will be passed\nto kfree. Save the original pointer and pass that one to kfree\ninstead.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d74cf7c3e9c4a6a659e0442aafb550b162d15e72",
      "tree": "2608dca9dd748a1234ea0e44679e9902b1d3b35b",
      "parents": [
        "f45a54214a0770582af06bb1e807493d1b7268ab"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Sep 24 10:23:25 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Oct 02 09:50:21 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix hang when offlining device with offline chpid\n\nRunning chchp --vary 0 and chccwdev -d on a FCP device with scsi\ndevices attached can lead to this thread hanging:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nSTACK TRACE FOR TASK: 0x2fbfcc00 (kslowcrw)\n\n STACK:\n 0 schedule+1136 [0x45f99c]\n 1 schedule_timeout+534 [0x46054e]\n 2 wait_for_common+374 [0x45f442]\n 3 blk_execute_rq+160 [0x217a2c]\n 4 scsi_execute+278 [0x26daf2]\n 5 scsi_execute_req+150 [0x26dc86]\n 6 sd_sync_cache+138 [0x28460a]\n 7 sd_shutdown+130 [0x28486a]\n 8 sd_remove+104 [0x284c84]\n 9 __device_release_driver+152 [0x257430]\n10 device_release_driver+56 [0x2575c8]\n11 bus_remove_device+214 [0x25672a]\n12 device_del+352 [0x25456c]\n13 __scsi_remove_device+108 [0x272630]\n14 scsi_remove_device+66 [0x2726ba]\n15 zfcp_ccw_remove+824 [0x335558]\n16 ccw_device_remove+62 [0x2b3f2a]\n17 __device_release_driver+152 [0x257430]\n18 device_release_driver+56 [0x2575c8]\n19 bus_remove_device+214 [0x25672a]\n20 device_del+352 [0x25456c]\n21 ccw_device_unregister+92 [0x2b48c4]\n22 io_subchannel_remove+108 [0x2b4950]\n23 css_remove+62 [0x2af7ee]\n24 __device_release_driver+152 [0x257430]\n25 device_release_driver+56 [0x2575c8]\n26 bus_remove_device+214 [0x25672a]\n27 device_del+352 [0x25456c]\n28 device_unregister+38 [0x25464a]\n29 css_sch_device_unregister+68 [0x2af97c]\n30 ccw_device_call_sch_unregister+78 [0x2b581e]\n31 worker_thread+604 [0x69eb0]\n32 kthread+154 [0x6ff42]\n33 kernel_thread_starter+6 [0x1c952]\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nThe problem is that the chchp --vary 0 leads to zfcp first calling\nfc_remote_port_delete which blocks all scsi devices on the remote\nport. Calling scsi_remove_device later lets the sd driver issue a\nSYNCHRONIZE_CACHE command. This command stays on the \"stopped\" request\nrequeue because the SCSI device is blocked. Fix this by first removing\nthe scsi and fc hosts which removes all scsi devices and do not use\nscsi_remove_device.\n\nReviewed-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f45a54214a0770582af06bb1e807493d1b7268ab",
      "tree": "af6accf710d9494eff076985f0b21379eb311277",
      "parents": [
        "1f99bd4cbfa50be144aee24905befc1209d90d47"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Sep 24 10:23:24 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Oct 02 09:50:10 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix lockdep warning when offlining device with offline chpid\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: possible circular locking dependency detected ]\n2.6.31-39.x.20090917-s390xdefault #1\n-------------------------------------------------------\nkslowcrw/83 is trying to acquire lock:\n (\u0026adapter-\u003escan_work){+.+.+.}, at: [\u003c0000000000169c5c\u003e] __cancel_work_timer+0x64/0x3d4\n\nbut task is already holding lock:\n (\u0026zfcp_data.config_mutex){+.+.+.}, at: [\u003c00000000004671ea\u003e] zfcp_ccw_remove+0x66/0x384\n\nwhich lock already depends on the new lock.\n\nthe existing dependency chain (in reverse order) is:\n\n-\u003e #1 (\u0026zfcp_data.config_mutex){+.+.+.}:\n       [\u003c0000000000189962\u003e] __lock_acquire+0xe26/0x1834\n       [\u003c000000000018a4b6\u003e] lock_acquire+0x146/0x178\n       [\u003c000000000058cb5a\u003e] mutex_lock_nested+0x82/0x3ec\n       [\u003c0000000000477170\u003e] zfcp_fc_scan_ports+0x3ec/0x728\n       [\u003c0000000000168e34\u003e] worker_thread+0x278/0x3a8\n       [\u003c000000000016ff08\u003e] kthread+0x9c/0xa4\n       [\u003c0000000000109ebe\u003e] kernel_thread_starter+0x6/0xc\n       [\u003c0000000000109eb8\u003e] kernel_thread_starter+0x0/0xc\n\n-\u003e #0 (\u0026adapter-\u003escan_work){+.+.+.}:\n       [\u003c0000000000189e60\u003e] __lock_acquire+0x1324/0x1834\n       [\u003c000000000018a4b6\u003e] lock_acquire+0x146/0x178\n       [\u003c0000000000169c9a\u003e] __cancel_work_timer+0xa2/0x3d4\n       [\u003c0000000000465cb2\u003e] zfcp_adapter_dequeue+0x32/0x14c\n       [\u003c00000000004673e4\u003e] zfcp_ccw_remove+0x260/0x384\n       [\u003c00000000004250f6\u003e] ccw_device_remove+0x42/0x1ac\n       [\u003c00000000003cb6be\u003e] __device_release_driver+0x9a/0x10c\n       [\u003c00000000003cb856\u003e] device_release_driver+0x3a/0x4c\n       [\u003c00000000003ca94c\u003e] bus_remove_device+0xcc/0x114\n       [\u003c00000000003c8506\u003e] device_del+0x162/0x21c\n       [\u003c0000000000425ff2\u003e] ccw_device_unregister+0x5e/0x7c\n       [\u003c000000000042607e\u003e] io_subchannel_remove+0x6e/0x9c\n       [\u003c000000000041ff9a\u003e] css_remove+0x3e/0x7c\n       [\u003c00000000003cb6be\u003e] __device_release_driver+0x9a/0x10c\n       [\u003c00000000003cb856\u003e] device_release_driver+0x3a/0x4c\n       [\u003c00000000003ca94c\u003e] bus_remove_device+0xcc/0x114\n       [\u003c00000000003c8506\u003e] device_del+0x162/0x21c\n       [\u003c00000000003c85e8\u003e] device_unregister+0x28/0x38\n       [\u003c0000000000420152\u003e] css_sch_device_unregister+0x46/0x58\n       [\u003c00000000004276a6\u003e] io_subchannel_sch_event+0x28e/0x794\n       [\u003c0000000000420442\u003e] css_evaluate_known_subchannel+0x46/0xd0\n       [\u003c0000000000420ebc\u003e] slow_eval_known_fn+0x88/0xa0\n       [\u003c00000000003caffa\u003e] bus_for_each_dev+0x7e/0xd0\n       [\u003c000000000042188c\u003e] for_each_subchannel_staged+0x6c/0xd4\n       [\u003c0000000000421a00\u003e] css_slow_path_func+0x54/0xd8\n       [\u003c0000000000168e34\u003e] worker_thread+0x278/0x3a8\n       [\u003c000000000016ff08\u003e] kthread+0x9c/0xa4\n       [\u003c0000000000109ebe\u003e] kernel_thread_starter+0x6/0xc\n       [\u003c0000000000109eb8\u003e] kernel_thread_starter+0x0/0xc\n\ncancel_work_sync is called while holding the config_mutex. But the\nwork that is being cancelled or flushed also uses the config_mutex.\nFix the resulting deadlock possibility by calling cancel_work_sync\nearlier without holding the mutex. The best place to do is is after\nofflining the device.  No new port scan work will be scheduled for the\noffline device, so this is a safe place to call cancel_work_sync.\n\nReviewed-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1f99bd4cbfa50be144aee24905befc1209d90d47",
      "tree": "623218f3c760153a5a5103f961cf1726af18ff9e",
      "parents": [
        "c5afd81e5d7ebacc9dd23954e169ac79a34fe399"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Sep 24 10:23:23 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Oct 02 09:49:59 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix oops during shutdown of offline device\n\nWith the change that the zfcp_adapter struct is only allocated when\nthe device is set online, the shutdown handler has to check for a\nnon-existing zfcp_adapter struct. On the other hand, this check is not\nnecessary in the offline callback, since an online device has the\nzfcp_adapter allocated and we go through the offline callback before\nremoving the ccw device.\n\nReviewed-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "c5afd81e5d7ebacc9dd23954e169ac79a34fe399",
      "tree": "91de28df6297b9823d6eb10533b7728a4b48e6ba",
      "parents": [
        "b1a58985853574346f1518531bdd82069501b317"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Sep 24 10:23:22 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Oct 02 09:49:47 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix initial device and cfdc for delayed adapter allocation\n\nWith the change for delaying the allocation of zfcp_adapter, the\ninitial device parameter function has to first call\nccw_device_set_online which allocates the zfcp_adapter structure.\nChange this and adapt the cfdc part accordingly.\n\nReviewed-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b1a58985853574346f1518531bdd82069501b317",
      "tree": "96a426970c5885d5c77bf5944c80b732b11b4faf",
      "parents": [
        "dac3bbd643cd54e2383e88b4f0f86db68c921701"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Thu Sep 24 10:23:21 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Oct 02 09:49:35 2009 -0500"
      },
      "message": "[SCSI] zfcp: correctly initialize unchained requests\n\nThe common initialization of ct/gs and els requests missed the\ninitialization of unchained requests. Fix this by moving the common\nparts to a place that is called for all ct/gs and els requests.\n\nReviewed-by: Felix Beck \u003cfelix.beck@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a419aef8b858a2bdb98df60336063d28df4b272f",
      "tree": "1736f6650ec0bfc01074c489fc47396114099c5e",
      "parents": [
        "2944fcbe03d65a704f07e43efe14adb0d226fd09"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 18 11:18:35 2009 -0700"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Sep 21 15:14:58 2009 +0200"
      },
      "message": "trivial: remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "41e05a12c7aae16f0381103af3e5ca791e87ce59",
      "tree": "3db57f11d9f2183215a52796fea113ce96b5abd8",
      "parents": [
        "b592e89ac9af521be164490e45c53c93e89c776f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Aug 18 15:43:32 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:49 2009 -0500"
      },
      "message": "[SCSI] zfcp: optimize zfcp_qdio_account\n\nRemove expensive ktime_get()/ktime_us_delta() functions from the hot\npath and use get_clock_monotonic() instead. This elimates seven\nfunction calls and avoids a lot of unnecessary calculations.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b592e89ac9af521be164490e45c53c93e89c776f",
      "tree": "d344abae4fc3a829389df72adcd91f5f3a7603b8",
      "parents": [
        "0fac3f477b6b520ae7d972ceb6e958e6807c8e1a"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:31 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:48 2009 -0500"
      },
      "message": "[SCSI] zfcp: Remove duplicated code for debug timestamps\n\nThe timestamp calculation used for s390dbf output is the same in a\nprivate zfcp function and in debug.c. Replace both with a common\ninline function.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "0fac3f477b6b520ae7d972ceb6e958e6807c8e1a",
      "tree": "bef6ee15c92486613dd918de6a8ff00311fc379d",
      "parents": [
        "f4395b652636398eb4712e6f3caf79c9a6c02e21"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:30 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:46 2009 -0500"
      },
      "message": "[SCSI] zfcp: Handle failures during device allocation correctly\n\ndev_set_name tries to allocate memory, so check the return value for\nallocation failures. After dev_set_name succeeds, call device_register\nas next step to be able to use put_device during error handling.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f4395b652636398eb4712e6f3caf79c9a6c02e21",
      "tree": "178529e316a42de451f5620275b1e505c1a24145",
      "parents": [
        "24680defdb55e073c5e43d14318a164b842d8ce7"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Aug 18 15:43:29 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:44 2009 -0500"
      },
      "message": "[SCSI] zfcp: proper use of device register\n\nDon\u0027t use kfree directly after device registration started.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "24680defdb55e073c5e43d14318a164b842d8ce7",
      "tree": "d1d054c831d85b175e560c562694a265f00a9191",
      "parents": [
        "143bb6bfe36d20618d8bf667915fe14d14b8ae2f"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:28 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:42 2009 -0500"
      },
      "message": "[SCSI] zfcp: Replace config semaphore with mutex\n\nThe config semaphore is only used as a mutex, so replace it with a\nsimple mutex.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "143bb6bfe36d20618d8bf667915fe14d14b8ae2f",
      "tree": "c0c1dad94d0ec49f25b3652581931f2b499b5f07",
      "parents": [
        "98fc4d5c8cd9bd1a412cca922feecb54c1c22d8e"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:27 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:41 2009 -0500"
      },
      "message": "[SCSI] zfcp: Defer resource allocation to first ccw_set_online call\n\nSo far, zfcp allocated all resources required for FCP\nadapters/subchannels when the device was discovered in the ccw_probe\ncallback. If there are lots of unused FCP subchannels attached to a\nsystem, this is a waste of resources. To alleviate this, defer the\nresource allocation to the first call to ccw_set_online. To avoid\ndisruptions during possible following calls to ccw_set_offline and\nthen ccw_set_online, keep the adapter resources until the device is\nfinally being removed via ccw_remove. While doing this, also manage\nthe zfcp erp thread together with all other adapter resources in\nzfcp_adapter_enqueue/dequeue.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "98fc4d5c8cd9bd1a412cca922feecb54c1c22d8e",
      "tree": "ba2985e12e493bad9a2d1b76476b9697f8aba7eb",
      "parents": [
        "347c6a965dc110c91a77f65181fc011ee257a4a6"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:26 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:38 2009 -0500"
      },
      "message": "[SCSI] zfcp: Simplify and update ct/gs and els timeout handling\n\nThe recommendation for a timeout of 2 * R_A_TOV is the same for ct/gs\nand els requests, so set it in the common function used for\ninitializing both request types. Besides, the timer inside zfcp should\nonly run longer than the timeout set for the channel, so 10 seconds\nmore should be enough (instead of 60 seconds).\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "347c6a965dc110c91a77f65181fc011ee257a4a6",
      "tree": "9f25d7da6b49f9d23029edc0221fe4f27fe61745",
      "parents": [
        "ea945ff84c2ce1089edb7914ffdd998c24c25903"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:25 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:37 2009 -0500"
      },
      "message": "[SCSI] zfcp: Use kthread API for zfcp erp thread\n\nSwitch the creation of the zfcp erp thread from the deprecated\nkernel_thread API to the kthread API. This allows also the removal of\nsome flags in zfcp since the kthread API handles thread creation and\nshutdown internally. To allow the usage of the kthread_stop function,\nreplace the erp ready semaphore with a waitqueue for waiting until erp\nactions arrive on the ready queue.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ea945ff84c2ce1089edb7914ffdd998c24c25903",
      "tree": "e4d47ff2b8ae9c71a6da87b8d1651c355016e9f1",
      "parents": [
        "6f53a2d2ecaefa3ffff8864f51a3ae38737e1152"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:24 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:35 2009 -0500"
      },
      "message": "[SCSI] zfcp: resolve false usage of dd_data in fc_rport\n\nThe fc_rport structure reserves a reference where a LLD can put\ninformation required in a situation where the fc transport class is\ntriggering LLD callbacks. The zfcp driver was using this variable\ndirectly which is discouraged. This patch solves this issue by making\nthis reference unnecessary.  In addition the dev_loss_tmo callback is\nremoved, it is not required: zfcp does not access the fc_rport after\ncalling fc_remote_port_delete.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "6f53a2d2ecaefa3ffff8864f51a3ae38737e1152",
      "tree": "2975fa475fdfb3fcd71d3066fb098a403af6200f",
      "parents": [
        "d5a282a1c5084ec7ebd9e6ab9723317f6b3fcd7b"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:23 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:33 2009 -0500"
      },
      "message": "[SCSI] zfcp: Apply common naming conventions to zfcp_fc\n\nUpdate the Fibre Channel related code to use the zfcp_fc prefix.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d5a282a1c5084ec7ebd9e6ab9723317f6b3fcd7b",
      "tree": "a215cde519ca65b129d35d8d435061b48ab3864c",
      "parents": [
        "5771710bd5edfafcb8656f49b93690a6fae5a4d2"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:22 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:32 2009 -0500"
      },
      "message": "[SCSI] zfcp: introduce _setup, _destroy for qdio and FC\n\nExtract independent data structures and introduce common _setup and\n_destroy routines for QDIO and Fibre Channel related data structures\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5771710bd5edfafcb8656f49b93690a6fae5a4d2",
      "tree": "f7ca88bc0f3d780794aa564855c0ed0ddeb9af18",
      "parents": [
        "799b76d09aeee558d18c1f5b93e63f58f1d1fc11"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:21 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:30 2009 -0500"
      },
      "message": "[SCSI] zfcp: Update dbf calls\n\nChange the dbf data and functions to use the zfcp_dbf prefix\nthroughout the code. Also change the calls to dbf to use zfcp_dbf\ninstead of zfcp_adapter.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "799b76d09aeee558d18c1f5b93e63f58f1d1fc11",
      "tree": "a1a05faa773b329246a4fa97ba7c0ac5201b5d40",
      "parents": [
        "564e1c86c810f9ccfe4300afa402815e3db4886d"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:20 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:28 2009 -0500"
      },
      "message": "[SCSI] zfcp: Decouple gid_pn requests from erp\n\nDon\u0027t let the erp wait for gid_pn requests to complete. Instead, queue\nthe gid_pn work, exit erp and let the finished gid_pn work trigger a\nnew port reopen.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "564e1c86c810f9ccfe4300afa402815e3db4886d",
      "tree": "ecb88038c443d6486e9df352c79b3c78be5454ef",
      "parents": [
        "42428f747a8a0db9c6de03e105932316defad65d"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:19 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:27 2009 -0500"
      },
      "message": "[SCSI] zfcp: Move qdio related data out of zfcp_adapter\n\nThe zfcp_adapter structure was growing over time to a size of almost\none memory page. To reduce the size of the data structure and to\nseperate different layers, put all qdio related data in the new\nzfcp_qdio data structure.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "42428f747a8a0db9c6de03e105932316defad65d",
      "tree": "84cd4b28678c94e5c6780517f89e803121cd73a7",
      "parents": [
        "4544683a4b1d4e65ccca8c736bac56a195a5206b"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:18 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:24 2009 -0500"
      },
      "message": "[SCSI] zfcp: Separate qdio attributes from zfcp_fsf_req\n\nSplit all qdio related attributes out of zfcp_fsf_req and put it in\nnew structure.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "4544683a4b1d4e65ccca8c736bac56a195a5206b",
      "tree": "0d536db8c6820405b69768922a8a61b8d1dcf00c",
      "parents": [
        "09a46c6e34ba152169b7400d266d2efb4c391a43"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:17 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:23 2009 -0500"
      },
      "message": "[SCSI] zfcp: Move workqueue to adapter struct\n\nRemove the global driver work queue and replace it with a workqueue\nlocal to the adapter. The usage of this workqueue makes this the\ncorrect place for the structure. In addition multiple adapters won\u0027t\nblock each other due to the serialization of the queued work.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "09a46c6e34ba152169b7400d266d2efb4c391a43",
      "tree": "208b6b62a0f760db3f29551af266e070c0490bea",
      "parents": [
        "a4623c467ff76f9258555d44d68371e10c5406c2"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:16 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:21 2009 -0500"
      },
      "message": "[SCSI] zfcp: Remove the useless ZFCP_REQ_AUTO_CLEANUP flag\n\nThe flag ZFCP_REQ_AUTO_CLEANUP was useless as the\nZFCP_STATUS_FSFREQ_CLEANUP flag is there for exactly the same purpose.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a4623c467ff76f9258555d44d68371e10c5406c2",
      "tree": "e310a629eb7fbd4da4d9ab05049af16176b2b551",
      "parents": [
        "058b8647892ed49ba6a0d2c0966a72e20e2e69ff"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:15 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:20 2009 -0500"
      },
      "message": "[SCSI] zfcp: Improve request allocation through mempools\n\nRemove the special case for NO_QTCB requests and optimize the\nmempool and cache processing for fsfreqs. Especially use seperate\nmempools for the zfcp_fsf_req and zfcp_qtcb structs.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "058b8647892ed49ba6a0d2c0966a72e20e2e69ff",
      "tree": "ba8baad2244bbacc5974207fb2274fb6c355d385",
      "parents": [
        "bd63eaf4b8d783e6033930e377e516169abcadc4"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:14 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:18 2009 -0500"
      },
      "message": "[SCSI] zfcp: Replace fsf_req wait_queue with completion\n\nThe combination wait_queue/wakeup in conjunction with the flag\nZFCP_STATUS_FSFREQ_COMPLETED to signal the completion of an fsfreq\nwas not race-safe and can be better solved by a completion.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "bd63eaf4b8d783e6033930e377e516169abcadc4",
      "tree": "cbb160657a3c6e0366c3d8b69275008f88e43fb9",
      "parents": [
        "55c770fa11d21456e02dc7afb9a37404da9c7b4c"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:13 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:16 2009 -0500"
      },
      "message": "[SCSI] zfcp: fix layering oddities between zfcp_fsf and zfcp_qdio\n\nThere is no need for the QDIO layer to have knowledge or do things\nwich are done better by the FSF layer and vice versa.  Straighten a\nfew things to improve vividness.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "55c770fa11d21456e02dc7afb9a37404da9c7b4c",
      "tree": "26d0d750f7864f6fec9acf2aa1610757e5417caf",
      "parents": [
        "14e242ea55a8b807dc1fb7654941caf68a20cd81"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:12 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:15 2009 -0500"
      },
      "message": "[SCSI] zfcp: Implicitly close all wka ports\n\nAn adapter shutdown implicitly closes all open ports. Make sure to\nmark all WKA ports as offline, not only the directory server. Also\nmake sure that no pending wka port work is running when the adapter is\nbeing removed.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "14e242ea55a8b807dc1fb7654941caf68a20cd81",
      "tree": "8a11024d41ec344c88877d6c4127e5fd2b5a8fca",
      "parents": [
        "44f09f73766a97d9c1ff8bf787cfe6b932eabc2c"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:11 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:13 2009 -0500"
      },
      "message": "[SCSI] zfcp: Only issue one test link command per port\n\nWhen the FCP channel returns a series of commands with the error\nstatus \"test link\", zfcp will send a series of ELS ADISC commands.\nThis is technically no problem, but it is enough to only issue one\ntest command per remote port. So, track whether a ELS ADISC command is\nalready pending, and do not send a new one if there is already a\npending command.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "44f09f73766a97d9c1ff8bf787cfe6b932eabc2c",
      "tree": "03c6f016b7016fa59afd8109b3b8b4526b2f5dc5",
      "parents": [
        "2e261af84cdb6a6008a9c361443e35ea646ec683"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:10 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:12 2009 -0500"
      },
      "message": "[SCSI] zfcp: Remove useless assignment\n\nUsing a bitwise OR to not set anything at all is pointless so remove\nthe useless statement.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "2e261af84cdb6a6008a9c361443e35ea646ec683",
      "tree": "a17d7de8aa4d57de11117ba194e7b1ac22b59c56",
      "parents": [
        "dcd20e2316cdc333dfdee09649dbe3642eb30e75"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:09 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:10 2009 -0500"
      },
      "message": "[SCSI] zfcp: Only collect FSF/HBA debug data for matching trace levels\n\nThe default trace level is to only trace failed FSF commands. Thus it\nis not necessary to collect trace data for most FSF commands, since\nit will be thrown away later. Restructure the FSF/HBA trace\ninfrastructure to first check the trace level in a inline function and\nonly do the expensive data collection for matching trace levels.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "dcd20e2316cdc333dfdee09649dbe3642eb30e75",
      "tree": "fc565dd134841075a215a18ab7622ed8b2ea5c11",
      "parents": [
        "d46f384a89c2378cb7858747faa1935db17e22a8"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:08 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:08 2009 -0500"
      },
      "message": "[SCSI] zfcp: Only collect SCSI debug data for matching trace levels\n\nThe default trace level is to only trace failed SCSI commands. Thus it\nis not necessary to collect trace data for most SCSI commands since it\nwill be thrown away later. Restructure the SCSI trace infrastructure\nto first check the trace level in a inline function and only do the\nexpensive data collection for matching trace levels.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d46f384a89c2378cb7858747faa1935db17e22a8",
      "tree": "c57deb3db03c23a615123ccd856823dc5245c35a",
      "parents": [
        "a67417ab7eeff45bba55666c0e1083260f3624ee"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Tue Aug 18 15:43:07 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:06 2009 -0500"
      },
      "message": "[SCSI] zfcp: Move debug data from zfcp_data to own data structure\n\nThe struct zfcp_adapter includes everything related to the debug\ntraces. This introduces dependences between the definitions in\nzfcp_def.h and zfcp_dbf.h. Move all debug related data structures to a\nnew data structure to break those dependencies and manage the debug\ndata in zfcp_dbf.[hc].\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a67417ab7eeff45bba55666c0e1083260f3624ee",
      "tree": "7f52c070bc9eeb7f5bdbb7f35e26e6ddb2624772",
      "parents": [
        "cdf69bb91b0ef14f0e0a987a4430764e6c290644"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Tue Aug 18 15:43:06 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 08:49:04 2009 -0500"
      },
      "message": "[SCSI] zfcp: invalid usage after free of port resources\n\nIn certain error scenarios ports, rports are getting attached,\nvalidated and removed from the systems environment. Depending on the\nlayer this occurs asynchronously. This patch fixes the few races\nwhich existed and ensures all references and cross references are\ncleared at the time they\u0027re invalid. In addition fc transports\nactions are only scheduled when required.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a11a52be115889a5d1f738ed2e154807bceed4ee",
      "tree": "62902970026519ad5e994944281a95dd01b13b40",
      "parents": [
        "27f492ccec94b6acd8440c83bfe0515ce4db0af0"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:14 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:59 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix tracing of request id for abort requests\n\nThe trace record for SCSI abort requests has a field for the request\nid of the request to be aborted. Put the real request id instead of\nzero.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "27f492ccec94b6acd8440c83bfe0515ce4db0af0",
      "tree": "e920153d2eca6d83659b4fd1cbfcdbd71bb976b6",
      "parents": [
        "17a093ef018481ee1760da19568bad3c11da395d"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Mon Jul 13 15:06:13 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:58 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix wka port processing\n\nUnder certain conditions it is possible that a WKA port ist not opened\nwithin the expected timeframe of half a second. In this situation\nthe WKA port remains in the state OPENING preventing any succeding\nrequest to open the port. This led to unrecoverable remote ports.\nFixing this by always setting an appropriate WKA port status before\nleaving the function and removing the timeout value here since it\u0027s\nnot needed here because the general timeout processing would deal\nwith it if required.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "17a093ef018481ee1760da19568bad3c11da395d",
      "tree": "9e08225c884c1fe22c2e1b25e2715aed185a9241",
      "parents": [
        "379d6bf6573ee6541a38bbe9140c1f0b94e3feae"
      ],
      "author": {
        "name": "Swen Schillig",
        "email": "swen@vnet.ibm.com",
        "time": "Mon Jul 13 15:06:12 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:58 2009 -0500"
      },
      "message": "[SCSI] zfcp: avoid double notify in lowmem scenario\n\nIn a LOWMEM condition an ERP notification would have been sent twice\ncausing an unpredictable behaviour of the ERP.\n\nSigned-off-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "379d6bf6573ee6541a38bbe9140c1f0b94e3feae",
      "tree": "fb6d0c117d835eb7f6361ff4b00f05f8879589cb",
      "parents": [
        "cbf1ed0264da104573458aedc220ebfcd02567f6"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:11 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:58 2009 -0500"
      },
      "message": "[SCSI] zfcp: Add port only once to FC transport class\n\nWhen calling fc_remote_port_add make sure to not call it again before\nfc_remote_port_delete has been called. In other words, ensure to\ncreate a new fc_rport, then delete it, then create a new one again.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "cbf1ed0264da104573458aedc220ebfcd02567f6",
      "tree": "e3a8e5f815fd22c556a61189c0d3e0d0658fa87d",
      "parents": [
        "85600f7f8370fe5b4be0debd8b401de7986b52ae"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:10 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:57 2009 -0500"
      },
      "message": "[SCSI] zfcp: Recover from stalled outbound queue\n\nDepending on interruptions on some storage systems, the complete\nchannel can stall which looks like an outbound queue stall to Linux.\nWhen trying to acquire a free SBAL for a non-SCSI command, zfcp waits\nfor 5 seconds for a free slot to appear. This is the right place to\ndetect a queue stall: If the wait times out, we assume a stalled queue\nand try to recover this.\n\nThe overall strategy should be to trigger the erp from specific\nevents, and not try an overall escalation from one failed port to a\nfull-blown queue recovery. If we manage to send a command, the status\ncodes for this command or a timeout will trigger the right follow-on\nactions.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "85600f7f8370fe5b4be0debd8b401de7986b52ae",
      "tree": "04b35f05814a74b3b1e5e71abd722ee164b3ca9c",
      "parents": [
        "ddb3e0c111fed0a8bf74884dc918274acec2b618"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:09 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:57 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix erp escalation procedure\n\nIf an action fails, retry it until the erp count exceeds the\nthreshold. If there is something fundamentally wrong, the FSF layer\nwill trigger a more appropriate action depending on the FSF status\ncodes.\n\nThe followup for successful actions is a different followup than\nretrying failed actions, so split the code two functions to make this\nclear.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "ddb3e0c111fed0a8bf74884dc918274acec2b618",
      "tree": "9df343a49fa7d2bf3198f6884c5f8363fbab544c",
      "parents": [
        "9072df4dc6e8fd569d583815edb0198af4b688b8"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:08 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:56 2009 -0500"
      },
      "message": "[SCSI] zfcp: Fix logic for physical port close\n\nAfter closing the port, we want it to be \"not open\" to consider the\naction to be successful.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "9072df4dc6e8fd569d583815edb0198af4b688b8",
      "tree": "a7c3efef5f7872b19859d7b3872c3b0f84233898",
      "parents": [
        "426f6059b0eb66cec139f4b9066168ab72b85774"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:07 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:56 2009 -0500"
      },
      "message": "[SCSI] zfcp: Use -EIO for SBAL allocation failures\n\n-ENOMEM is for memory allocation problems, -EIO for queue/SBAL\nallocation problems.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "426f6059b0eb66cec139f4b9066168ab72b85774",
      "tree": "5a117d5f0a885b591bea2b6bdf8475fb6745f2af",
      "parents": [
        "688a1820bde27749f22b18b94ef1c9bc179b1b29"
      ],
      "author": {
        "name": "Christof Schmitt",
        "email": "christof.schmitt@de.ibm.com",
        "time": "Mon Jul 13 15:06:06 2009 +0200"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Thu Jul 30 08:49:56 2009 -0500"
      },
      "message": "[SCSI] zfcp: Use unchained mode for small ct and els requests\n\nThe ELS ADISC and the GID_PN requests sent from zfcp fit into\nunchained FSF requests. Change the FSF allocation logic to use\nunchained requests whenever possible where everything fits in one\nSBAL. This avoids acquiring more SBALs than necessary, especially\nduring zfcp recovery when things might be stalled.\n\nReviewed-by: Swen Schillig \u003cswen@vnet.ibm.com\u003e\nSigned-off-by: Christof Schmitt \u003cchristof.schmitt@de.ibm.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    }
  ],
  "next": "688a1820bde27749f22b18b94ef1c9bc179b1b29"
}
