)]}'
{
  "log": [
    {
      "commit": "06a23648ebbb532745eb85c1a381b83dd90e94af",
      "tree": "49137b15bc60af0e9bb161f7f81f2d0815b688e9",
      "parents": [
        "640bb6ec4ff89b0349d1c7cb42aa25db191b4f63"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Dec 13 14:55:33 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 25 17:25:00 2012 -0800"
      },
      "message": "target: Set additional sense length field in sense data\n\ncommit 895f3022523361e9b383cf48f51feb1f7d5e7e53 upstream.\n\nThe target code was not setting the additional sense length field in the\nsense data it returned, which meant that at least the Linux stack\nignored the ASC/ASCQ fields.  For example, without this patch, on a\ntcm_loop device:\n\n    # sg_raw -v /dev/sda 2 0 0 0 0 0\n\ngives\n\n        cdb to send: 02 00 00 00 00 00\n    SCSI Status: Check Condition\n\n    Sense Information:\n     Fixed format, current;  Sense key: Illegal Request\n      Raw sense data (in hex):\n            70 00 05 00 00 00 00 00\n\nwhile after the patch we correctly get the following (which matches what\na regular disk returns):\n\n        cdb to send: 02 00 00 00 00 00\n    SCSI Status: Check Condition\n\n    Sense Information:\n     Fixed format, current;  Sense key: Illegal Request\n     Additional sense: Invalid command operation code\n     Raw sense data (in hex):\n            70 00 05 00 00 00 00 0a  00 00 00 00 20 00 00 00\n            00 00\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d60b7a0fc918245c6fb8cc2b15e570e040d8f38b",
      "tree": "954f4a6144738b17f6c08e6a72cd30f537e272fd",
      "parents": [
        "af57c3ac9947990da2608561b71f4799eb7795c6"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Thu May 19 20:19:13 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jbottomley@parallels.com",
        "time": "Tue May 24 13:02:42 2011 -0400"
      },
      "message": "[SCSI] target: Convert REPORT_LUNs to use int_to_scsilun\n\nThis patch converts transport_core_report_lun_response() to use\ndrivers/scsi/scsi_scan.c:int_to_scsilun instead of using the\nstruct target_core_fabric_ops-\u003epack_lun() fabric provided API vector.\n\nIt also removes the tfo-\u003epack_lun check from target_fabric_tf_ops_check()\nand removes from struct target_core_fabric_ops-\u003epack_lun() from\ntarget_core_fabric_ops.h, and the following mainline scsi-misc fabric\nmodules:\n\n*) tcm_loop: Drop tcm_loop_pack_lun() usage\n*) tcm_fc: Drop ft_pack_lun() usage\n\nReported-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cjbottomley@parallels.com\u003e\n"
    },
    {
      "commit": "f436677262a5b524ac87675014c6d4e8ee153029",
      "tree": "c3ab2fb111163ac52eb4999b83d3063ca4fca718",
      "parents": [
        "53ab6709b4d35b1924240854d794482fd7d33d4a"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Thu May 19 20:19:11 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jbottomley@parallels.com",
        "time": "Tue May 24 13:00:10 2011 -0400"
      },
      "message": "[SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks release\n\nThis patch addresses a bug in the target core release path for HW\noperation where transport_free_dev_tasks() was incorrectly being called\nfrom transport_lun_remove_cmd() while releasing a se_cmd reference and\ncalling struct target_core_fabric_ops-\u003equeue_data_in().\n\nThis would result in a OOPs with HW target mode when the release of\nse_task-\u003etask_sg[] would happen before pci_unmap_sg() can be called in\nHW target mode fabric module code.  This patch addresses the issue by\nmoving transport_free_dev_tasks() from transport_lun_remove_cmd() into\ntransport_generic_free_cmd(), and adding TRANSPORT_FREE_CMD_INTR and\ntransport_generic_free_cmd_intr() to allow se_cmd descriptor release\nto happen fromfrom within transport_processing_thread() process context\nwhen release of se_cmd is not possible from HW interrupt context.\n\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\nCc: stable@kernel.org\nSigned-off-by: James Bottomley \u003cjbottomley@parallels.com\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "12d233842987d9972957419e427987b94f7bd7b4",
      "tree": "b3d08872b37f08aac3a9ec66e3fef49fbedb0f19",
      "parents": [
        "15fb48cc40be170423fe8ddd17666aa6175315e3"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Mar 14 04:06:11 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Mar 23 11:36:50 2011 -0500"
      },
      "message": "[SCSI] target: add initial statistics\n\nThis patch adds a target_core_mib.c statistics conversion for\nbackend context struct se_subsystem_dev + struct se_device config_group\nbased statistics in target_core_device.c using CONFIGFS_EATTR()\nbased struct config_item_types from target_core_stat.c code.\n\nThe conversion from backend /proc/scsi_target/mib/ context output to configfs\ndefault groups+attributes include scsi_dev, scsi_lu, and scsi_tgt_dev output\nfrom within individual:\n\n\t/sys/kernel/config/target/core/$HBA/DEV/\n\nThe legacy procfs output now appear as individual configfs attributes under:\n\n*) $HBA/$DEV/statistics/scsi_dev:\n\n|-- indx\n|-- inst\n|-- ports\n`-- role\n\n*) $HBA/$DEV/statistics/scsi_lu:\n\n|-- creation_time\n|-- dev\n|-- dev_type\n|-- full_stat\n|-- hs_num_cmds\n|-- indx\n|-- inst\n|-- lu_name\n|-- lun\n|-- num_cmds\n|-- prod\n|-- read_mbytes\n|-- resets\n|-- rev\n|-- state_bit\n|-- status\n|-- vend\n`-- write_mbytes\n\n*) $HBA/$DEV/statistics/scsi_tgt_dev:\n\n|-- indx\n|-- inst\n|-- non_access_lus\n|-- num_lus\n|-- resets\n`-- status\n\nThe conversion from backend /proc/scsi_target/mib/ context output to configfs\ndefault groups+attributes include scsi_port, scsi_tgt_port and scsi_transport\noutput from within individual:\n\n\t/sys/kernel/config/target/fabric/$WWN/tpgt_$TPGT/lun/lun_$LUN_ID/statistics/\n\nThe legacy procfs output now appear as individual configfs attributes under:\n\n*) fabric/$WWN/tpgt_$TPGT/lun/lun_$LUN_ID/statistics/scsi_port\n\n|-- busy_count\n|-- dev\n|-- indx\n|-- inst\n`-- role\n\n*) fabric/$WWN/tpgt_$TPGT/lun/lun_$LUN_ID/statistics/scsi_tgt_port\n\n|-- dev\n|-- hs_in_cmds\n|-- in_cmds\n|-- indx\n|-- inst\n|-- name\n|-- port_index\n|-- read_mbytes\n`-- write_mbytes\n\n*) fabric/$WWN/tpgt_$TPGT/lun/lun_$LUN_ID/statistics/scsi_transport\n\n|-- dev_name\n|-- device\n|-- indx\n`-- inst\n\nThe conversion from backend /proc/scsi_target/mib/ context output to configfs\ndefault groups+attributes include scsi_att_intr_port and scsi_auth_intr output\nfrom within individual:\n\n\t/sys/kernel/config/target/fabric/$WWN/tpgt_$TPGT/acls/$INITIATOR_WWN/lun_$LUN_ID/statistics/\n\nThe legacy procfs output now appear as individual configfs attributes under:\n\n*) acls/$INITIATOR_WWN/lun_$LUN_ID/statistics/scsi_att_intr_port\n\n|-- dev\n|-- indx\n|-- inst\n|-- port\n|-- port_auth_indx\n`-- port_ident\n\n*) acls/$INITIATOR_WWN/lun_$LUN_ID/statistics/scsi_auth_intr\n\n|-- att_count\n|-- creation_time\n|-- dev\n|-- dev_or_port\n|-- hs_num_cmds\n|-- indx\n|-- inst\n|-- intr_name\n|-- map_indx\n|-- num_cmds\n|-- port\n|-- read_mbytes\n|-- row_status\n`-- write_mbytes\n\nAlso, this includes adding struct target_fabric_configfs_template-\u003e\ntfc_wwn_fabric_stats_cit and -\u003etfc_tpg_nacl_stat_cit respectively for\nuse during target_core_fabric_configfs.c:target_fabric_setup_cits()\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "15fb48cc40be170423fe8ddd17666aa6175315e3",
      "tree": "3733a84fd12074f014a639cff681a250e0ffaa2f",
      "parents": [
        "54550fabfecdb71e0deb51999cca7d28bb4299ed"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Mar 14 04:06:10 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Mar 23 11:36:49 2011 -0500"
      },
      "message": "[SCSI] target: update version to v4.0.0-rc7-ml\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5c6cd613196558ba50ba97268b6d225c8d2f56d6",
      "tree": "9b00f8e0b21eb4e49f2237be72b468c1c7d30d0e",
      "parents": [
        "065f97161b2da30b13000b1d9f64adff7e01e270"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Mar 14 04:06:04 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Mar 23 11:36:35 2011 -0500"
      },
      "message": "[SCSI] target: Convert TMR REQ/RSP definitions to target namespace\n\nThis patch changes include/target/target_core_tmr.h code to use\ntarget specific \u0027TMR_*\u0027 prefixed definitions for fabric independent\nSCSI Task Management Request/Request naming in include/scsi/scsi.h\ndefinitions for mainline target code.\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "35ce9e26d7e0674892f77a9172c898dfcba50064",
      "tree": "b37702735fc5e01c64e03342d5adab79caa492ed",
      "parents": [
        "5dd7ed2e811d5cd12f31fb7f0c5ad0107d494a12"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Mar 14 04:06:02 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Mar 23 11:36:32 2011 -0500"
      },
      "message": "[SCSI] target: Remove spurious double cast from structure macro accessors\n\nReported-by: Fubo Chen \u003cfubo.chen@gmail.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@suse.de\u003e\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5dd7ed2e811d5cd12f31fb7f0c5ad0107d494a12",
      "tree": "f5a9318be8ce5460940e769b710a07cb60026940",
      "parents": [
        "05aea6e7e497ab418239ae54fe5966d52cbd8550"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Mon Mar 14 04:06:01 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Mar 23 11:36:29 2011 -0500"
      },
      "message": "[SCSI] target: Minor sparse warning fixes and annotations\n\nThis patch addresses the majority of sparse warnings and adds\nproper locking annotations.  It also fixes the dubious one-bit signed\nbitfield, for which the signed one-bit types can be 0 or -1 which can\ncause a problem if someone ever checks if (foo-\u003elu_gp_assoc \u003d\u003d 1).\nThe current code is fine because everyone just checks zero vs non-zero.\nBut Sparse complains about it so lets change it.  The warnings look like\nthis:\n\ninclude/target/target_core_base.h:228:26: error: dubious one-bit signed bitfield\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Fubo Chen \u003cfubo.chen@gmail.com\u003e\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "52208ae3fc60cbcb214c10fb8b82304199e2cc3a",
      "tree": "d7c7e938453b257ce49197cb91f64fed1860b254",
      "parents": [
        "493f3358cb289ccf716c5a14fa5bb52ab75943e5"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Thu Feb 24 16:58:20 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 11:23:32 2011 -0600"
      },
      "message": "[SCSI] target: Fix t_transport_aborted handling in LUN_RESET + active I/O shutdown\n\nThis patch addresses two outstanding bugs related to\nT_TASK(cmd)-\u003et_transport_aborted handling during TMR LUN_RESET and\nactive I/O shutdown.\n\nThis first involves adding two explict t_transport_aborted\u003d1\nassignments in core_tmr_lun_reset() in order to signal the task has\nbeen aborted, and updating transport_generic_wait_for_tasks() to skip\nsleeping when t_transport_aborted\u003d1 has been set.  This fixes an issue\nwhere transport_generic_wait_for_tasks() would end up sleeping\nindefinately when called from fabric module context while TMR\nLUN_RESET was happening with long outstanding backend struct se_task\nnot yet being completed.\n\nThe second adds a missing call to\ntransport_remove_task_from_execute_queue() when\ntask-\u003etask_execute_queue\u003d1 is set in order to fix an OOPs when\ntask-\u003et_execute_list has not been dropped.  It also fixes the same\ncase in transport_processing_shutdown() to prevent the issue from\nhappening during active I/O struct se_device shutdown.\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1f6fe7cba1c0a817a8712d7fdd0ec1b4ddd4ea2f",
      "tree": "d3210e224f8c415d78fbf70883026fa945591b8a",
      "parents": [
        "e89d15eeadb172bd53ca6362bf9ab6b22077224c"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Feb 09 15:34:54 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 12:32:41 2011 -0600"
      },
      "message": "[SCSI] target: fix use after free detected by SLUB poison\n\nThis patch moves a large number of memory release paths inside of the\nconfigfs callback target_core_hba_item_ops-\u003erelease() called from\nwithin fs/configfs/item.c: config_item_cleanup() context.  This patch\nresolves the SLUB \u0027Poison overwritten\u0027 warnings.\n\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e89d15eeadb172bd53ca6362bf9ab6b22077224c",
      "tree": "d7b5716ed3ccc80a4b3863305d6a0f8284ce49e4",
      "parents": [
        "e63af95888894af6ca4112dc90083d1dff0fec29"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Feb 09 15:35:03 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 12:15:47 2011 -0600"
      },
      "message": "[SCSI] target: Remove procfs based target_core_mib.c code\n\nThis patch removes the legacy procfs based target_core_mib.c code,\nand moves the necessary scsi_index_tables functions and defines into\ntarget_core_transport.c and target_core_base.h code to allow existing\nfabric independent statistics to function.\n\nThis includes the removal of a handful of \u0027atomic_t mib_ref_count\u0027\ncounters used in struct se_node_acl, se_session and se_hba to prevent\nremoval while using seq_list procfs walking logic.\n\n[jejb: fix up compile failures]\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "c66ac9db8d4ad9994a02b3e933ea2ccc643e1fe5",
      "tree": "71c6344688bf56ea6aaf18c586ab69ff4f077ade",
      "parents": [
        "f4013c3879d1bbd9f3ab8351185decd049502368"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Dec 17 11:11:26 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Jan 14 10:12:29 2011 -0600"
      },
      "message": "[SCSI] target: Add LIO target core v4.0.0-rc6\n\nLIO target is a full featured in-kernel target framework with the\nfollowing feature set:\n\nHigh-performance, non-blocking, multithreaded architecture with SIMD\nsupport.\n\nAdvanced SCSI feature set:\n\n    * Persistent Reservations (PRs)\n    * Asymmetric Logical Unit Assignment (ALUA)\n    * Protocol and intra-nexus multiplexing, load-balancing and failover (MC/S)\n    * Full Error Recovery (ERL\u003d0,1,2)\n    * Active/active task migration and session continuation (ERL\u003d2)\n    * Thin LUN provisioning (UNMAP and WRITE_SAMExx)\n\nMultiprotocol target plugins\n\nStorage media independence:\n\n    * Virtualization of all storage media; transparent mapping of IO to LUNs\n    * No hard limits on number of LUNs per Target; maximum LUN size ~750 TB\n    * Backstores: SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk, etc.\n\nStandards compliance:\n\n    * Full compliance with IETF (RFC 3720)\n    * Full implementation of SPC-4 PRs and ALUA\n\nSignificant code cleanups done by Christoph Hellwig.\n\n[jejb: fix up for new block bdev exclusive interface. Minor fixes from\n Randy Dunlap and Dan Carpenter.]\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    }
  ]
}
