)]}'
{
  "log": [
    {
      "commit": "00fdc6bbef77844ce397a7de7acfaf25e8e2e4eb",
      "tree": "df8d71a6b9c9239b68d43fc04d57580caf3e4992",
      "parents": [
        "087a03b3ea1c8d6e2d5743a8d1c6d571058caa04"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Mar 13 18:20:11 2012 -0700"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Mar 13 21:43:58 2012 -0700"
      },
      "message": "iscsi-target: Fix reservation conflict -EBUSY response handling bug\n\nThis patch addresses a iscsi-target specific bug related to reservation conflict\nhandling in iscsit_handle_scsi_cmd() that has been causing reservation conflicts\nto complete and not fail as expected due to incorrect errno checking.  The problem\noccured with the change to return -EBUSY from transport_generic_cmd_sequencer() -\u003e\ntransport_generic_allocate_tasks() failures, that broke iscsit_handle_scsi_cmd()\nchecking for -EINVAL in order to invoke a non GOOD status response.\n\nThis was manifesting itself as data corruption with legacy SPC-2 reservations,\nbut also effects iscsi-target LUNs with SPC-3 persistent reservations.\n\nThis bug was originally introduced in lio-core commit:\n\ncommit 03e98c9eb916f3f0868c1dc344dde2a60287ff72\nAuthor: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\nDate:   Fri Nov 4 02:36:16 2011 -0700\n\n    target: Address legacy PYX_TRANSPORT_* return code breakage\n\nReported-by: Martin Svec \u003cmartin.svec@zoner.cz\u003e\nCc: Martin Svec \u003cmartin.svec@zoner.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "087a03b3ea1c8d6e2d5743a8d1c6d571058caa04",
      "tree": "52cb057d9c2f01f8772de66f1cce7086c9e8b7c5",
      "parents": [
        "67236c44741e250199ccd77f1115568e68cf8848"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Mar 13 21:29:06 2012 -0700"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Mar 13 21:43:43 2012 -0700"
      },
      "message": "target: Fix compatible reservation handling (CRH\u003d1) with legacy RESERVE/RELEASE\n\nThis patch addresses a bug with target_check_scsi2_reservation_conflict()\nreturn checking in target_scsi2_reservation_[reserve,release]() that was\npreventing CRH\u003d1 operation from silently succeeding in the two special\ncases defined by SPC-3, and not failing with reservation conflict status\nwhen dealing with legacy RESERVE/RELEASE + active SPC-3 PR logic.\n\nAlso explictly set cmd-\u003escsi_status \u003d SAM_STAT_RESERVATION_CONFLICT during\nthe early non reservation holder failure from pr_ops-\u003et10_seq_non_holder()\ncheck in transport_generic_cmd_sequencer() for fabrics that already expect\nit to be set.\n\nThis bug was originally introduced in mainline commit:\n\ncommit eacac00ce5bfde8086cd0615fb53c986f7f970fe\nAuthor: Christoph Hellwig \u003chch@infradead.org\u003e\nDate:   Thu Nov 3 17:50:40 2011 -0400\n\n    target: split core_scsi2_emulate_crh\n\nReported-by: Martin Svec \u003cmartin.svec@zoner.cz\u003e\nCc: Martin Svec \u003cmartin.svec@zoner.cz\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "67236c44741e250199ccd77f1115568e68cf8848",
      "tree": "4b09d2017a0122984b694e167aeaff2afcc931e0",
      "parents": [
        "9f9ef6d3c08319defc29e4cf6ef2868d15ed0cc3"
      ],
      "author": {
        "name": "Martin Svec",
        "email": "martin.svec@zoner.cz",
        "time": "Mon Feb 06 22:13:25 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:58 2012 +0000"
      },
      "message": "target: Fix unsupported WRITE_SAME sense payload\n\nThis patch fixes a bug in target-core where unsupported WRITE_SAME ops\nfrom a target_check_write_same_discard() failure was incorrectly\nreturning CHECK_CONDITION w/ TCM_INVALID_CDB_FIELD sense data.\nThis was causing some clients to not properly fall back, so go ahead\nand use the correct TCM_UNSUPPORTED_SCSI_OPCODE sense for this case.\n\nReported-by: Martin Svec \u003cmartin.svec@zoner.cz\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9f9ef6d3c08319defc29e4cf6ef2868d15ed0cc3",
      "tree": "dab36bf875ce037be9fc59b7fab101dce192d188",
      "parents": [
        "5c55125f4794f4e77574fc09839cb47b0eb45b06"
      ],
      "author": {
        "name": "Dax Kelson",
        "email": "dkelson@gurulabs.com",
        "time": "Fri Feb 03 23:40:25 2012 -0700"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:53 2012 +0000"
      },
      "message": "iscsi: use IP_FREEBIND socket option\n\nUse IP_FREEBIND socket option so that iscsi portal configuration with\nexplicit IP addresses can happen during boot, before network interfaces\nhave been assigned IPs.\n\nThis is especially important on systemd based Linux boxes where system\nboot happens asynchronously and non-trivial configuration must be done\nto get targetcli.service to start synchronously after the network is\nconfigured.\n\nReference:\nhttp://lists.fedoraproject.org/pipermail/devel/2011-October/158025.html\n\nSigned-off-by: Dax Kelson \u003cdkelson@gurulabs.com\u003e\nCc: \"Nicholas A. Bellinger\" \u003cnab@linux-iscsi.org\u003e\nCc: \"Andy Grover\" \u003cagrover@redhat.com\u003e\nCc: \"Lennart Poettering\" \u003clennart@poettering.net\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "5c55125f4794f4e77574fc09839cb47b0eb45b06",
      "tree": "2e35bfcfe983dee5d5afbf0437dd3ff5f9a4938a",
      "parents": [
        "3011684c0b0b77b0f88113ef1c15b18befc6734a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Feb 02 16:51:24 2012 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:46 2012 +0000"
      },
      "message": "iblock: fix handling of large requests\n\nRequesting to many bvecs upsets bio_alloc_bioset, so limit the number we ask\nfor to the amount it can handle.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "3011684c0b0b77b0f88113ef1c15b18befc6734a",
      "tree": "fcac41c9b6cb8de95214e74d0f1c1b84aa979655",
      "parents": [
        "c3bc93da24c8f315d9ece741f6e6414a38879ec6"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Fri Jan 27 15:50:55 2012 +0300"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:40 2012 +0000"
      },
      "message": "target: handle empty string writes in sysfs\n\nThese are root only and we\u0027re not likely to hit the problem in practise,\nbut it makes the static checkers happy.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "c3bc93da24c8f315d9ece741f6e6414a38879ec6",
      "tree": "4b7fe46a3fec2e222d0e77f721cb09f69e81899a",
      "parents": [
        "7347b5ff7090b2b399b7921a266255cd55bbd78f"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Jan 23 11:39:49 2012 +1100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:30 2012 +0000"
      },
      "message": "iscsi_target: in_aton needs linux/inet.h\n\nFixes this error after a recent nfs cleanup:\n\ndrivers/target/iscsi/iscsi_target_configfs.c: In function \u0027lio_target_call_addnptotpg\u0027:\ndrivers/target/iscsi/iscsi_target_configfs.c:214:3: error: implicit declaration of function \u0027in6_pton\u0027 [-Werror\u003dimplicit-function-declaration]\ndrivers/target/iscsi/iscsi_target_configfs.c:239:3: error: implicit declaration of function \u0027in_aton\u0027 [-Werror\u003dimplicit-function-declaration]\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "7347b5ff7090b2b399b7921a266255cd55bbd78f",
      "tree": "3952df49566e07f4cbdbc7aef6b28abadf008dca",
      "parents": [
        "735703cac08f34a197e1c6331ca9adc8a52d6046"
      ],
      "author": {
        "name": "Marco Sanvido",
        "email": "marco@purestorage.com",
        "time": "Fri Jan 20 15:49:27 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:48:20 2012 +0000"
      },
      "message": "target: Fix iblock se_dev_attrib.unmap_granularity\n\nThe block layer keeps q-\u003elimits.discard_granularity in bytes, but iblock\n(and the SCSI Block Limits VPD page) keep unmap_granularity in blocks.\nReport the correct value when exporting block devices by dividing to\nconvert bytes to blocks.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "735703cac08f34a197e1c6331ca9adc8a52d6046",
      "tree": "93e3e09572f681f9f3a360832ba4a84a6f99018e",
      "parents": [
        "1edcdb497ef418122cd4f98e157660cf594b345a"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Jan 20 19:02:56 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:47:11 2012 +0000"
      },
      "message": "target: Fix target_submit_cmd() exception handling\n\nThis patch fixes a bug in target_submit_cmd() where the failure path\nfor transport_generic_allocate_tasks() made a direct call to\ntransport_send_check_condition_and_sense() and not calling the\nfinal target_put_sess_cmd() release callback.\n\nFor transport_generic_allocate_tasks() failures, use the proper call to\ntransport_generic_request_failure() to handle kref_put() along\nwith potential internal queue full response processing.\n\nIt also makes transport_lookup_cmd_lun() failures in\ntarget_submit_cmd() use transport_send_check_condition_and_sense() and\ntarget_put_sess_cmd() directly to avoid se_cmd-\u003ese_dev reference in\ntransport_generic_request_failure() handling.\n\nFinally it drops the out_check_cond: label and use direct reference for\nallocate task failures, and per-se_device queue_full handling is\ncurrently not supported for transport_lookup_cmd_lun() failure\ndescriptors due to se_device dependency.\n\nReported-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "1edcdb497ef418122cd4f98e157660cf594b345a",
      "tree": "bf41780935b8996f85a0ae090897495961deb6d7",
      "parents": [
        "95fe1ee41e23fa271416da67483594dde74bc6ca"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "agrover@redhat.com",
        "time": "Thu Jan 19 13:39:23 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:41:04 2012 +0000"
      },
      "message": "target: Change target_submit_cmd() to return void\n\nRetval not very useful, and may even be harmful. Once submitted, fabrics\nshould expect a sense error if anything goes wrong. All fabrics checking\nof this retval are useless or broken:\n\nfc checks it just to emit more debug output.\nib_srpt trickles retval up, then it is ignored.\nqla2xxx trickles it up, which then causes a bug because the abort goto\nin qla_target.c thinks cmd hasn\u0027t been sent to target.\n\nJust returning nothing is best.\n\nSigned-off-by: Andy Grover \u003cagrover@redhat.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "95fe1ee41e23fa271416da67483594dde74bc6ca",
      "tree": "6bfed9186c9fbec3954f4c9f590802ade39ffbe7",
      "parents": [
        "bf0053550aebe56f3bb5dd793e9de69238b5b945"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Wed Jan 18 14:04:29 2012 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Feb 07 06:32:39 2012 +0000"
      },
      "message": "target: accept REQUEST_SENSE with 18bytes\n\nWindowsXP+BOT issues a MODE_SENSE request with page 0x1c which is not\nsuppoerted by target. Target rejects that command with\nTCM_INVALID_CDB_FIELD, so far so good. On BOT I can\u0027t send the SENSE\nresponse back, instead I can only reply that an error occured. The next\nthing happens is a REQUEST_SENSE request with 18 bytes length. Since the\ncheck here is more than 18 bytes I have to NACK that request as well.\nThis is not really required: We check for some additional room, but we\nnever use it. The additional length is set to 0xa so the total length is\n0xa + 8 \u003d 18 which is fine with my 18 bytes.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "bf0053550aebe56f3bb5dd793e9de69238b5b945",
      "tree": "eac9ac787478014209756b6505146564d41f40a8",
      "parents": [
        "bb1acb2ee038a6c13ee99e0b9fb44dacb4a9de84"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Jan 17 18:00:57 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:59 2012 +0000"
      },
      "message": "target: Fail INQUIRY commands with EVPD\u003d\u003d0 but PAGE CODE!\u003d0\n\nMy draft of SPC-4 says:\n\n    If the PAGE CODE field is not set to zero when the EVPD bit is set\n    to zero, the command shall be terminated with CHECK CONDITION\n    status, with the sense key set to ILLEGAL REQUEST, and the\n    additional sense code set to INVALID FIELD IN CDB.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "bb1acb2ee038a6c13ee99e0b9fb44dacb4a9de84",
      "tree": "47ac9d29a68025c963f815933a68e1ed3f35de84",
      "parents": [
        "2f9bc894c67dbacae5a6a9875818d2a18a918d18"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Jan 17 18:00:56 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:58 2012 +0000"
      },
      "message": "target: Return correct ASC for unimplemented VPD pages\n\nMy draft of SPC-4 says:\n\n    If the device server does not implement the requested vital product\n    data page, then the command shall be terminated with CHECK CONDITION\n    status, with the sense key set to ILLEGAL REQUEST, and the\n    additional sense code set to INVALID FIELD IN CDB.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "2f9bc894c67dbacae5a6a9875818d2a18a918d18",
      "tree": "2891680fbe0b57299776d44123969452a9cb1a25",
      "parents": [
        "4949314c7283ea4f9ade182ca599583b89f7edd6"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Jan 16 23:33:48 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:58 2012 +0000"
      },
      "message": "iscsi-target: Fix discovery with INADDR_ANY and IN6ADDR_ANY_INIT\n\nThis patch addresses a bug with sendtargets discovery where INADDR_ANY (0.0.0.0)\n+ IN6ADDR_ANY_INIT ([0:0:0:0:0:0:0:0]) network portals where incorrectly being\nreported back to initiators instead of the address of the connecting interface.\nTo address this, save local socket -\u003egetname() output during iscsi login setup,\nand makes iscsit_build_sendtargets_response() return these TargetAddress keys\nwhen INADDR_ANY or IN6ADDR_ANY_INIT portals are in use.\n\nReported-by: Dax Kelson \u003cdkelson@gurulabs.com\u003e\nReported-by: Andy Grover \u003cagrover@redhat.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "4949314c7283ea4f9ade182ca599583b89f7edd6",
      "tree": "bbd2316996bc2f19c1b3a8c24f8591f12d2330fa",
      "parents": [
        "e8904dc5008ef92f0f62391d6557f03f921eeb32"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "agrover@redhat.com",
        "time": "Mon Jan 16 16:57:08 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:58 2012 +0000"
      },
      "message": "target: Allow control CDBs with data \u003e 1 page\n\nWe need to handle \u003e1 page control cdbs, so extend the code to do a vmap\nif bigger than 1 page. It seems like kmap() is still preferable if just\na page, fewer TLB shootdowns(?), so keep using that when possible.\n\nRename function pair for their new scope.\n\nSigned-off-by: Andy Grover \u003cagrover@redhat.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "e8904dc5008ef92f0f62391d6557f03f921eeb32",
      "tree": "da3cdfc1e0be8166b58649840dac0d1ba0842081",
      "parents": [
        "f8d48ae52eeec906d7fb42485eb26a5d305bab0a"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sun Jan 15 19:33:30 2012 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:57 2012 +0000"
      },
      "message": "iscsi-target: Fix up a few assignments\n\nA statement such as\n  struct iscsi_node_attrib *na \u003d na \u003d iscsit_tpg_get_node_attrib(sess);\nhas undefined behaviour since there are two assignments to \u0027na\u0027, strictly\nspeaking (the order in which side-effects from the assignments take place\nis undefined since there\u0027s no intervening sequence point), and it looks\nunintentional in any case.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "f8d48ae52eeec906d7fb42485eb26a5d305bab0a",
      "tree": "4de9fc43d78b02bb6569860c887f81af763f9308",
      "parents": [
        "cd931ee62fd0258fc85c76a7c5499fe85e0f3436"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Sun Jan 15 14:30:24 2012 +0300"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:57 2012 +0000"
      },
      "message": "iscsi-target: make one-bit bitfields unsigned\n\nSigned bitfields are a problem because instead of being 1 or 0 like\nyou\u0027d expect they are 0 and -1.  It doesn\u0027t cause a problem in this case\nbut sparse complains:\n\ndrivers/target/iscsi/iscsi_target_core.h:564:56: error: dubious one-bit\nsigned bitfield\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "cd931ee62fd0258fc85c76a7c5499fe85e0f3436",
      "tree": "3e98ce1d1fc20b0782dee6eea01e6db295d12503",
      "parents": [
        "c1ce4bd56f2846de55043374598fd929ad3b711b"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Jan 16 17:11:54 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:57 2012 +0000"
      },
      "message": "iscsi-target: Fix double list_add with iscsit_alloc_buffs reject\n\nThis patch fixes a bug where the iscsit_add_reject_from_cmd() call\nfrom a failure to iscsit_alloc_buffs() was incorrectly passing\nadd_to_conn\u003d1 and causing a double list_add after iscsi_cmd-\u003ei_list\nhad already been added in iscsit_handle_scsi_cmd().\n\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "c1ce4bd56f2846de55043374598fd929ad3b711b",
      "tree": "86a088a99e1c51c78aa2198d015936edccdfeb12",
      "parents": [
        "8d9efe539cf78f6a90947d47100e4a86d907750f"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Jan 16 16:04:15 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:35:56 2012 +0000"
      },
      "message": "iscsi-target: Fix reject release handling in iscsit_free_cmd()\n\nThis patch addresses a bug where iscsit_free_cmd() was incorrectly calling\niscsit_release_cmd() for ISCSI_OP_REJECT because iscsi_add_reject*() will\noverwrite the original iscsi_cmd-\u003eiscsi_opcode assignment.  This bug was\nintroduced with the following commit:\n\ncommit 0be67f2ed8f577d2c72d917928394c5885fa9134\nAuthor: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\nDate:   Sun Oct 9 01:48:14 2011 -0700\n\n    iscsi-target: Remove SCF_SE_LUN_CMD flag abuses\n\nand was manifesting itself as list corruption with the following:\n\n[  131.191092] ------------[ cut here ]------------\n[  131.191092] WARNING: at lib/list_debug.c:53 __list_del_entry+0x8d/0x98()\n[  131.191092] Hardware name: VMware Virtual Platform\n[  131.191092] list_del corruption. prev-\u003enext should be ffff880022d3c100, but was 6b6b6b6b6b6b6b6b\n[  131.191092] Modules linked in: tcm_vhost ib_srpt ib_cm ib_sa ib_mad ib_core tcm_qla2xxx qla2xxx tcm_loop tcm_fc libfc scsi_transport_fc crc32c iscsi_target_mod target_core_stgt scsi_tgt target_core_pscsi target_core_file target_core_iblock target_core_mod configfs ipv6 iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi sr_mod cdrom sd_mod e1000 ata_piix libata mptspi mptscsih mptbase [last unloaded: scsi_wait_scan]\n[  131.191092] Pid: 2250, comm: iscsi_ttx Tainted: G        W    3.2.0-rc4+ #42\n[  131.191092] Call Trace:\n[  131.191092]  [\u003cffffffff8103b553\u003e] warn_slowpath_common+0x80/0x98\n[  131.191092]  [\u003cffffffff8103b5ff\u003e] warn_slowpath_fmt+0x41/0x43\n[  131.191092]  [\u003cffffffff811d0279\u003e] __list_del_entry+0x8d/0x98\n[  131.191092]  [\u003cffffffffa01395c9\u003e] transport_lun_remove_cmd+0x9b/0xb7 [target_core_mod]\n[  131.191092]  [\u003cffffffffa013a55c\u003e] transport_generic_free_cmd+0x5d/0x71 [target_core_mod]\n[  131.191092]  [\u003cffffffffa01a012b\u003e] iscsit_free_cmd+0x1e/0x27 [iscsi_target_mod]\n[  131.191092]  [\u003cffffffffa01a13be\u003e] iscsit_close_connection+0x14d/0x5b2 [iscsi_target_mod]\n[  131.191092]  [\u003cffffffffa0196a0c\u003e] iscsit_take_action_for_connection_exit+0xdb/0xe0 [iscsi_target_mod]\n[  131.191092]  [\u003cffffffffa01a55d4\u003e] iscsi_target_tx_thread+0x15cb/0x1608 [iscsi_target_mod]\n[  131.191092]  [\u003cffffffff8103609a\u003e] ? check_preempt_wakeup+0x121/0x185\n[  131.191092]  [\u003cffffffff81030801\u003e] ? __dequeue_entity+0x2e/0x33\n[  131.191092]  [\u003cffffffffa01a4009\u003e] ? iscsit_send_text_rsp+0x25f/0x25f [iscsi_target_mod]\n[  131.191092]  [\u003cffffffffa01a4009\u003e] ? iscsit_send_text_rsp+0x25f/0x25f [iscsi_target_mod]\n[  131.191092]  [\u003cffffffff8138f706\u003e] ? schedule+0x55/0x57\n[  131.191092]  [\u003cffffffff81056c7d\u003e] kthread+0x7d/0x85\n[  131.191092]  [\u003cffffffff81399534\u003e] kernel_thread_helper+0x4/0x10\n[  131.191092]  [\u003cffffffff81056c00\u003e] ? kthread_worker_fn+0x16d/0x16d\n[  131.191092]  [\u003cffffffff81399530\u003e] ? gs_change+0x13/0x13\n\nReported-by: \u003cjrepac@yahoo.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "8d9efe539cf78f6a90947d47100e4a86d907750f",
      "tree": "82c9981047853687f83117d65de94ba18a25f144",
      "parents": [
        "1dd0a0674530da61cdbfadd88c96949b483a7c19"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Wed Jan 11 21:43:38 2012 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:33:44 2012 +0000"
      },
      "message": "target: fix return code of core_tpg_.*_lun\n\n- core_tpg_pre_addlun()\n  returns always ERR_PTR() or the pointer, never NULL. The additional\n  check for NULL in core_dev_add_lun() is not required.\n\n- core_tpg_pre_dellun()\n  returns always ERR_PTR() or the pointer, never NULL. The check for NULL\n  in core_dev_del_lun() is wrong. The third argument (int *) is never\n  used, remove it.\n\n- core_dev_add_lun()\n  returns always NULL or the pointer, never ERR_PTR. The check for\n  IS_ERR() is not required.\n\n(nab: Convert core_dev_add_lun() use err.h macros for failure\nhandling to be consistent with the rest of target_core_fabric_configfs.c\ncallers)\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "1dd0a0674530da61cdbfadd88c96949b483a7c19",
      "tree": "5e47fe019fb7961883b3104a043eff71392c0ff2",
      "parents": [
        "e59a41b69a8e116d5ac8c95c4222f5a971f66bbd"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Tue Jan 10 14:16:58 2012 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:30:39 2012 +0000"
      },
      "message": "target: use save/restore lock primitive in core_dec_lacl_count()\n\nIt may happen that uasp will free the request in irq conntext, the\ncallchain:\n\n uasp_cmd_release() -\u003e transport_generic_free_cmd() -\u003e core_dec_lacl_count()\n\nwhere the last function enables the IRQ. Those irqs are re-disabled\nlater (due to the spin.*irq_restore) but in between we could get hurt.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "e59a41b69a8e116d5ac8c95c4222f5a971f66bbd",
      "tree": "84f1d9b3d79f4455a18c2485acb493e354315c20",
      "parents": [
        "91ec1d3535b2acf12c599045cc19ad9be3c6a47b"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Tue Jan 10 14:16:57 2012 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:30:36 2012 +0000"
      },
      "message": "target: avoid multiple outputs in scsi_dump_inquiry()\n\nThe multiple calls to pr_debug() each with one letter results in a new\nline. This patch merges the multiple requests into one call per line\nso we don\u0027t have the multiple line cuts.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "91ec1d3535b2acf12c599045cc19ad9be3c6a47b",
      "tree": "12a312b34c2a932832ca02d28c082e86ab7d2813",
      "parents": [
        "9fbc8909876a2160044e71d376848973b9bfdc3f"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Jan 13 12:01:34 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:30:22 2012 +0000"
      },
      "message": "target: Add workaround for zero-length control CDB handling\n\nThis patch adds a work-around for handling zero allocation length\ncontrol CDBs (type SCF_SCSI_CONTROL_SG_IO_CDB) that was causing an\nOOPs with the following raw calls:\n\n   # sg_raw -v /dev/sdd 3 0 0 0 0 0\n   # sg_raw -v /dev/sdd 0x1a 0 1 0 0 0\n\nThis patch will follow existing zero-length handling for data I/O\nand silently return with GOOD status.  This addresses the zero length\nissue, but the proper long-term resolution for handling arbitary\nallocation lengths will be to refactor out data-phase handling in\nindividual CDB emulation logic within target_core_cdb.c\n\nReported-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9fbc8909876a2160044e71d376848973b9bfdc3f",
      "tree": "4db778e4d91bb64460e0aa0bdfa4d9ea83cbea21",
      "parents": [
        "9db9da332250dbe662995703a4dcdd692112f0c3"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Jan 09 17:54:00 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:30:05 2012 +0000"
      },
      "message": "target: Correct sense key for INVALID FIELD IN {PARAMETER LIST,CDB}\n\nAccording to SPC-4, the sense key for commands that are failed with\nINVALID FIELD IN PARAMETER LIST and INVALID FIELD IN CDB should be\nILLEGAL REQUEST (5h) rather than ABORTED COMMAND (Bh).  Without this\npatch, a tcm_loop LUN incorrectly gives:\n\n    # sg_raw -r 1 -v /dev/sda 3 1 0 0 ff 0\n    Sense Information:\n     Fixed format, current;  Sense key: Aborted Command\n     Additional sense: Invalid field in cdb\n     Raw sense data (in hex):\n            70 00 0b 00 00 00 00 0a  00 00 00 00 24 00 00 00\n            00 00\n\nWhile a real SCSI disk gives:\n\n    Sense Information:\n     Fixed format, current;  Sense key: Illegal Request\n     Additional sense: Invalid field in cdb\n     Raw sense data (in hex):\n            70 00 05 00 00 00 00 18  00 00 00 00 24 00 00 00\n            00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00\n\nwith the main point being that the real disk gives a sense key of\nILLEGAL REQUEST (5h).\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9db9da332250dbe662995703a4dcdd692112f0c3",
      "tree": "bec92f208f928e41e84cc03ff9687e35eda6a062",
      "parents": [
        "6816966a8418b980481b4dced7eddd1796b145e8"
      ],
      "author": {
        "name": "roland@purestorage.com",
        "email": "roland@purestorage.com",
        "time": "Wed Jan 04 15:59:58 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:29:57 2012 +0000"
      },
      "message": "target: Don\u0027t zero pages used for data buffers\n\nDoing alloc_page(GFP_KERNEL | __GFP_ZERO) to get pages used for data\nbuffers wastes a lot of CPU clearing pages that will be quickly be\noverwritten by the actual data.  However, for emulated control\ncommands such as INQUIRY and so on, the code does assume that the\nbuffer is zeroed.\n\nTo avoid this CPU overhead, skip the __GFP_ZERO for commands that are\nactually moving data, ie cmds that have SCF_SCSI_DATA_SG_IO_CDB set.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "6816966a8418b980481b4dced7eddd1796b145e8",
      "tree": "5f6e391c719e1ca131442c0eeb661bc3f0029f72",
      "parents": [
        "9e08e34e3735ae057eb3834da3570995811b7eb9"
      ],
      "author": {
        "name": "Marco Sanvido",
        "email": "marco@purestorage.com",
        "time": "Tue Jan 03 17:12:58 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:29:36 2012 +0000"
      },
      "message": "target: Allow PERSISTENT RESERVE IN for non-reservation holder\n\nInitiators that aren\u0027t the active reservation holder should be able to\ndo a PERSISTENT RESERVE IN command in all cases, so add it to the list\nof allowed CDBs in core_scsi3_pr_seq_non_holder().\n\nSigned-off-by: Marco Sanvido \u003cmarco@purestorage.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9e08e34e3735ae057eb3834da3570995811b7eb9",
      "tree": "2a062cdc55b523373690325b3a2b8686e367ac90",
      "parents": [
        "48cfe37cc03f616e6c139796962e7ec677cde8a9"
      ],
      "author": {
        "name": "Marco Sanvido",
        "email": "marco@purestorage.com",
        "time": "Tue Jan 03 17:12:57 2012 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:28:43 2012 +0000"
      },
      "message": "target: Use correct preempted registration sense code\n\nThe comments quote the right parts of the spec:\n\n   * d) Establish a unit attention condition for the\n   *    initiator port associated with every I_T nexus\n   *    that lost its registration other than the I_T\n   *    nexus on which the PERSISTENT RESERVE OUT command\n   *    was received, with the additional sense code set\n   *    to REGISTRATIONS PREEMPTED.\n\nand\n\n   * e) Establish a unit attention condition for the initiator\n   *    port associated with every I_T nexus that lost its\n   *    persistent reservation and/or registration, with the\n   *    additional sense code set to REGISTRATIONS PREEMPTED;\n\nbut the actual code accidentally uses ASCQ_2AH_RESERVATIONS_PREEMPTED\ninstead of ASCQ_2AH_REGISTRATIONS_PREEMPTED.  Fix this.\n\nSigned-off-by: Marco Sanvido \u003cmarco@purestorage.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "48cfe37cc03f616e6c139796962e7ec677cde8a9",
      "tree": "0dafa66ac58400b8eee1e68182b6c73dc8b880d3",
      "parents": [
        "895f3022523361e9b383cf48f51feb1f7d5e7e53"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Dec 21 14:20:23 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Jan 18 08:28:02 2012 +0000"
      },
      "message": "target: don\u0027t allocate bio headroom in iblock\n\nWe never embedd the bio into a structure, so there is no need to allocate\n64 bytes of headroom per bio.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "895f3022523361e9b383cf48f51feb1f7d5e7e53",
      "tree": "6a692ebaacc4af38c8869eee0da7c6e868b1232a",
      "parents": [
        "6d5b59756033c2a029bde7262bb5f8d45f4ca952"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Dec 13 14:55:33 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Dec 16 06:29:04 2011 +0000"
      },
      "message": "target: Set additional sense length field in sense data\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\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "6d5b59756033c2a029bde7262bb5f8d45f4ca952",
      "tree": "01cf728296b46e5af005307859e890ef839e063d",
      "parents": [
        "beb55a0cc15a43be43a646b588fcf83822f0c44f"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Nov 30 18:24:03 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:53:29 2011 +0000"
      },
      "message": "target: Remove legacy device status check from transport_execute_tasks\n\nThis patch removes a legacy se_dev_check_online() check from within\ntransport_execute_tasks() that should no longer be necessary as\ntransport_lookup_cmd_lun() is already making this call.\n\nUsing transport_cmd_check_stop() from transport_execute_tasks() should\nalready be checking per se_cmd context for each descriptor upon active\nI/O shutdown, so no need to acquire dev-\u003edev_status_lock again while\nexecuting se_task submission.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "beb55a0cc15a43be43a646b588fcf83822f0c44f",
      "tree": "4ad60fa940e13870449e70341b036e5eaa22c01c",
      "parents": [
        "4d2300ccffd22d1d0213b6a8e4d685eb6ca069c0"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Nov 30 18:21:24 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:50:12 2011 +0000"
      },
      "message": "target: Remove __transport_execute_tasks() for each processing context\n\nThis patch removes the original usage of __transport_execute_tasks() ahead\nof every transport_get_cmd_from_queue() call in transport_processing_thread().\nThis helps reduce se_device-\u003eexecute_task_lock contention between qla2xxx wq\nwith target_submit_cmd() for READs and transport_processing_thread()\ncontext servicing WRITEs with full payloads for I/O submission.\n\nIt also adds a __transport_execute_tasks() to kick the task queue again\nwithout a *se_cmd descriptor with existing queue full logic, but this may\nend up not being necessary.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "4d2300ccffd22d1d0213b6a8e4d685eb6ca069c0",
      "tree": "a76817aa4aaba5a6ffb05b3e6a0ea9ca654a0519",
      "parents": [
        "65586d51e0986be574118286c3d0007e903a2add"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Nov 30 18:18:33 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:48:46 2011 +0000"
      },
      "message": "target: Remove extra se_device-\u003eexecute_task_lock access in fast path\n\nThis patch makes __transport_execute_tasks() perform the addition of\ntasks to dev-\u003eexecute_task_list via __transport_add_tasks_from_cmd()\nwhile holding dev-\u003eexecute_task_lock during normal I/O fast path\nsubmission.\n\nIt effectively removes the unnecessary re-acquire of dev-\u003eexecute_task_lock\nduring transport_execute_tasks() -\u003e transport_add_tasks_from_cmd() ahead\nof calling  __transport_execute_tasks() to queue tasks for the passed\n*se_cmd descriptor.\n\n(v2: Re-add goto check_depth usage for multi-task submission for now..)\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "65586d51e0986be574118286c3d0007e903a2add",
      "tree": "0684f76d53e666ffe2a2c77f8e3947d263fa1b75",
      "parents": [
        "40be67f4c588fe2f3e2dbd60ae1f470abc5b6ad8"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Nov 30 01:25:21 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:42:13 2011 +0000"
      },
      "message": "target: Drop se_device TCQ queue_depth usage from I/O path\n\nHistorically, pSCSI devices have been the ones that required target-core\nto enforce a per se_device-\u003edepth_left.  This patch changes target-core\nto no longer (by default) enforce a per se_device-\u003edepth_left or sleep in\ntransport_tcq_window_closed() when we out of queue slots for all backend\nexport cases.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nCc: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "40be67f4c588fe2f3e2dbd60ae1f470abc5b6ad8",
      "tree": "2651859707dfe779766552cde0fce41f5eb19103",
      "parents": [
        "ec54cc081ead14e85736c6543e36ec59be8a7d3d"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Nov 30 00:41:20 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:42:12 2011 +0000"
      },
      "message": "target: Fix possible NULL pointer with __transport_execute_tasks\n\nThis patch makes __transport_execute_tasks() use a local *se_dev\nreference to prevent direct se_cmd-\u003ese_dev access after\ntransport_cmd_check_stop() -\u003e transport_add_tasks_from_cmd()\nhas been called, as in the current implementation we can expect\n__transport_execute_tasks() may be called from another context\nthat may have already completed the I/O.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "4355a9110eeb2eaf1dd44fcab16ccbd1c8c5fad4",
      "tree": "6cfb4d1fc3cb5c71f67ab158ab41430cfe7a6e0c",
      "parents": [
        "a63607855224702ea17e6016ecf3f7d544e83625"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Nov 22 21:41:54 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:42:08 2011 +0000"
      },
      "message": "tcm_fc: Convert ft_send_work to use target_submit_cmd\n\nThis patch converts the main ft_send_work() I/O path to use\ntarget_submit_cmd() with a single se_cmd-\u003ecmd_kref reference\nthat is released via the existing ft_check_stop_free() response\npath callback.\n\nIt also makes ft_send_tm() use transport_init_se_cmd() and\ntarget_get_sess_cmd() to also use single se_cmd-\u003ecmd_kref\nreference.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Kiran Patil \u003ckiran.patil@intel.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "a63607855224702ea17e6016ecf3f7d544e83625",
      "tree": "844d9a7dbdc636ba657763f04945b91ca8da9ba7",
      "parents": [
        "7481deb413be132a22193e8a0bce88b311ecb3c2"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Nov 18 20:36:22 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:40:56 2011 +0000"
      },
      "message": "target: Add target_submit_cmd() for process context fabric submission\n\nThis patch adds a target_submit_cmd() caller that can be used by fabrics\nto submit an uninitialized se_cmd descriptor to an struct se_session +\nunpacked_lun from workqueue process context.  This call will invoke the\nfollowing steps:\n\n- transport_init_se_cmd() to setup se_cmd specific pointers\n- Obtain se_cmd-\u003ecmd_kref references with target_get_sess_cmd()\n- set se_cmd-\u003et_tasks_bidi\n- transport_lookup_cmd_lun() to setup struct se_cmd-\u003ese_lun from\n  the passed unpacked_lun\n- transport_generic_allocate_tasks() to setup the passed *cdb, and\n- transport_handle_cdb_direct() handle READ dispatch or WRITE\n  ready-to-transfer callback to fabric\n\nv2 changes from hch feedback:\n\n*) Add target_sc_flags_table for target_submit_cmd flags\n*) Rename bidi parameter to flags, add TARGET_SCF_BIDI_OP\n*) Convert checks to BUG_ON\n*) Add out_check_cond for transport_send_check_condition_and_sense\n   usage\n\nv3 changes:\n\n*) Add TARGET_SCF_ACK_KREF for target_submit_cmd into\n   target_get_sess_cmd to determine when the fabric caller is expecting\n   a second kref_put() from fabric packet acknowledgement.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "7481deb413be132a22193e8a0bce88b311ecb3c2",
      "tree": "6d417c6856f983cb28fae0717563f4efcd6019e1",
      "parents": [
        "ce136176fea522fc8f4c16dcae7e8ed1d890ca39"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sat Nov 12 00:32:17 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:38:29 2011 +0000"
      },
      "message": "target: Make target_put_sess_cmd use target_release_cmd_kref\n\nThis patch moves target_put_sess_cmd() to use a se_cmd-\u003ecmd_kref\ncallback target_release_cmd_kref when performing driver release of\nfabric-\u003ese_cmd descriptor memory.  It sets the default cmd_kref\ncount value to \u00272\u0027 within target_get_sess_cmd() setup, and\ncurrently assumes TFO-\u003echeck_stop_free() usage.\n\nIt drops se_tfo-\u003echeck_release_cmd() usage in the main\ntransport_release_cmd codepath.\n\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "ce136176fea522fc8f4c16dcae7e8ed1d890ca39",
      "tree": "fc6258199ef01f584f3e2a46ac16c38117d2dc4a",
      "parents": [
        "ced38c8c00962c9b6c1fcd330572406162d150b9"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Dec 06 10:02:09 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:38:28 2011 +0000"
      },
      "message": "target: Set response format in INQUIRY response\n\nCurrent SCSI specs say that the \"response format\" field in the standard\nINQUIRY response should be set to 2, and all the real SCSI devices I\nhave do put 2 here.  So let\u0027s do that too.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "2e88efd3aaafa0df05593cdfa5fd17afe922781d",
      "tree": "41f1f2c6c425d394fb55927b5fcec3a651660515",
      "parents": [
        "0877eafd1618ef683e2ff2273acdeca5f1b077b9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Nov 29 03:20:41 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:28:11 2011 +0000"
      },
      "message": "tcm_loop: bump max_sectors\n\nThere is not reason to artifically limit max_sectors in tcm_loop, set\nit to UINT_MAX to allow stressing the large I/O handling in the target\ncore using the loopback driver.  Also remove various superflous defines\nhiding the values set in the host template.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "0877eafd1618ef683e2ff2273acdeca5f1b077b9",
      "tree": "351ac3d06813fc78f2285180f2d4e93a75f5aa1a",
      "parents": [
        "bc704fb58f507deea84a4c047a3a71351f0c55aa"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Mon Nov 28 13:57:25 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:28:10 2011 +0000"
      },
      "message": "target/configs: remove trailing newline from udev_path and alias\n\nThis patch strips the trailing newline from backend device udev_path and\nalias attributes.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "bc704fb58f507deea84a4c047a3a71351f0c55aa",
      "tree": "64372a6e7fbf1a54214fda904a81637d8bba1402",
      "parents": [
        "8359cf43b9dccddeebb0d247146719a14ce6371a"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Mon Nov 28 01:02:07 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:28:09 2011 +0000"
      },
      "message": "iscsi-target: fix chap identifier simple_strtoul usage\n\nThis patch makes chap_server_compute_md5() use proper unsigned long\nusage for the CHAP_I (identifier) and check for values beyond 255 as\nper RFC-1994.\n\nReported-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "8359cf43b9dccddeebb0d247146719a14ce6371a",
      "tree": "25421cb0e06d878709a826edf8d724ca102ab441",
      "parents": [
        "feae85644f1460b3373ef5141183ee43e6191b58"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@logfs.org",
        "time": "Thu Nov 24 02:05:51 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:28:07 2011 +0000"
      },
      "message": "target: remove useless casts\n\nA reader should spend an extra moment whenever noticing a cast,\nbecause either something special is going on that deserves extra\nattention or, as is all too often the case, the code is wrong.\n\nThese casts, afaics, have all been useless.  They cast a foo* to a\nfoo*, cast a void* to the assigned type, cast a foo* to void*, before\nassigning it to a void* variable, etc.\n\nIn a few cases I also removed an additional \u0026...[0], which is equally\nuseless.\n\nLastly I added three FIXMEs where, to the best of my judgement, the\ncode appears to have a bug.  It would be good if someone could check\nthese.\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "feae85644f1460b3373ef5141183ee43e6191b58",
      "tree": "e7f8dc735f0c1ca4d5cb4b6ede6f0a956a0708a1",
      "parents": [
        "c165f69c2ccbbb4ecf16c5d29d65922286bf62ff"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@logfs.org",
        "time": "Thu Nov 24 02:05:12 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:27:55 2011 +0000"
      },
      "message": "target: simplify target_check_cdb_and_preempt\n\n- rename to target_check_cdb_and_preempt\n- use non-safe list_for_each_entry\n- move common check into callee (simplifying callers)\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "c165f69c2ccbbb4ecf16c5d29d65922286bf62ff",
      "tree": "2899166c0d1354cb37346c6b4d8b417f60a55c21",
      "parents": [
        "90c161b643d9531d271110876a14e68b49172d8a"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@logfs.org",
        "time": "Thu Nov 24 02:04:42 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:27:34 2011 +0000"
      },
      "message": "target: Move core_scsi3_check_cdb_abort_and_preempt\n\nAnd make it static afterwards.\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "90c161b643d9531d271110876a14e68b49172d8a",
      "tree": "2427163f641294c15e1fc881993994f0ebe26d8b",
      "parents": [
        "1880807adb21d741f08b747956c90bf4a6f95fbf"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Wed Nov 23 20:53:17 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:27:23 2011 +0000"
      },
      "message": "target: use \\n as a separator for configuration\n\nThe command\n| echo rd_pages\u003d32768 \u003e ramdisk/control\n\nDoes not work because it writes \"rd_pages\u003d32768\\n\" and the parser which\nmatches for \"rd_pages\u003d%d\" does not recognize it due to the \\n. One way\nof fixing this would be using \"echo -n\" instead.\nThis patch adds \\n to the list of separators so we don\u0027t have to use the\n-n argument which I find is more convinient.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "1880807adb21d741f08b747956c90bf4a6f95fbf",
      "tree": "fb3815bf85679116bb455ded1a678049950a3d9f",
      "parents": [
        "41e16e981679124c78c30f046d4f0b71d86ff1b2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Nov 23 06:54:36 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:27:02 2011 +0000"
      },
      "message": "target: make the se_task task_state_active a normal bool\n\nThere is no need to make task_state_active an atomic_t given that it is\nalways set under the execute_task_lock so we can make it a simple bool.\nAlso rename it to t_state_active to be closer to the list it guards,\nand make sure all checks before the list addion/removal actually happen\nunder execute_task_lock.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "41e16e981679124c78c30f046d4f0b71d86ff1b2",
      "tree": "2db886814e0f8b9b39d8e8b836e3598d128d14e1",
      "parents": [
        "ef804a849ffae058a783e9dddd24cc1a555bbdb4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Nov 23 06:54:15 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:26:44 2011 +0000"
      },
      "message": "target: remove the se_task task_error_status field\n\nWe only reach transport_complete_task once per task, so the test and set on\ntask_error_status is never going to have an effect.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "ef804a849ffae058a783e9dddd24cc1a555bbdb4",
      "tree": "e67737300936c2b94359ded96d9113981cb610aa",
      "parents": [
        "c4795fb20edf2fe2c862c8fe9f8b681edeb79ac1"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Nov 23 06:53:58 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:26:27 2011 +0000"
      },
      "message": "target: fold se_task.task_sense into task_flags\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "c4795fb20edf2fe2c862c8fe9f8b681edeb79ac1",
      "tree": "506a8cb0a12ea2b56c5ebed5e6bc2a0d842c069d",
      "parents": [
        "e26d99aed42ec6cdc9540d19c77ac5d4dd2c5b00"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Nov 16 09:46:48 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 11:26:05 2011 +0000"
      },
      "message": "target: header reshuffle, part2\n\nThis reorganized the headers under include/target into:\n\n - target_core_base.h stays as is with all target-wide data stuctures and defines\n - target_core_backend.h contains the whole interface to I/O backends\n - target_core_fabric.h contains the whole interface to fabric modules\n\nExcept for those only the various configfs macro headers stay around.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "e26d99aed42ec6cdc9540d19c77ac5d4dd2c5b00",
      "tree": "9c0424f81877d6c5cfaf7746447e0c9decf8e82e",
      "parents": [
        "dc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Nov 14 12:30:30 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Wed Dec 14 08:51:12 2011 +0000"
      },
      "message": "target: reshuffle headers\n\nCreate a new headers, drivers/target/target_core_internal.h that is supposed\nto hold all target_core-internal prototypes.  Move all non-exported includes\nfrom include/target to it, and merge the smaller prototype-only includes\ninside drivers/target into it as well.  Mark functions that were found to\nnot be called outside their implementation file static.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "e2f4e0bc2aaf41a2b487ef7d2afb76e5c87d466c",
      "tree": "33e02db84c7a9232ca775fd12e52bb9a2e37a7cc",
      "parents": [
        "af209e0aea2b1a6216c728decfaa231f587b8c2b",
        "c65b53ba4f9ca4520078bab23099579da3bf0446"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 14:41:50 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 14:41:50 2011 -0800"
      },
      "message": "Merge branch \u0027spi/for-3.2\u0027 of git://git.pengutronix.de/git/wsa/linux-2.6\n\n* \u0027spi/for-3.2\u0027 of git://git.pengutronix.de/git/wsa/linux-2.6:\n  spi/gpio: fix section mismatch warning\n  spi/fsl-espi: disable CONFIG_SPI_FSL_ESPI\u003dm build\n  spi/nuc900: Include linux/module.h\n  spi/ath79: fix compile error due to missing include\n"
    },
    {
      "commit": "af209e0aea2b1a6216c728decfaa231f587b8c2b",
      "tree": "d50d386d7e84abfd6ae96eb30cf08d19f8946f93",
      "parents": [
        "53523d5263dce1a3e3662c612f7050a4569071ad",
        "5d8c71f9e5fbdd95650be00294d238e27a363b5c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 08:18:08 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 08:18:08 2011 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://neil.brown.name/md\n\n* \u0027for-linus\u0027 of git://neil.brown.name/md:\n  md: raid5 crash during degradation\n  md/raid5: never wait for bad-block acks on failed device.\n  md: ensure new badblocks are handled promptly.\n  md: bad blocks shouldn\u0027t cause a Blocked status on a Faulty device.\n  md: take a reference to mddev during sysfs access.\n  md: refine interpretation of \"hold_active \u003d\u003d UNTIL_IOCTL\".\n  md/lock: ensure updates to page_attrs are properly locked.\n"
    },
    {
      "commit": "53523d5263dce1a3e3662c612f7050a4569071ad",
      "tree": "bc2ec3f77fcead18065c9642f456d9f6f50eb725",
      "parents": [
        "592d44a5f8458892c007c61b9cfa677efede5e1e",
        "0c90547b4a3fcee184db4d54ffc1a4fb17fd54d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 08:08:57 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 08:08:57 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: use new generic {enable,disable}_percpu_irq() routines\n  drivers/net/ethernet/tile: use skb_frag_page() API\n  asm-generic/unistd.h: support new process_vm_{readv,write} syscalls\n  arch/tile: fix double-free bug in homecache_free_pages()\n  arch/tile: add a few #includes and an EXPORT to catch up with kernel changes.\n"
    },
    {
      "commit": "1cee22b7f385b6c4f716846203a96e1f302132aa",
      "tree": "44ac23d3a52c80c6b1e462b7b9502a0fe61a17e4",
      "parents": [
        "b439e66f04bff6476c5d4bae6a52ab93fbb9a8f4"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "alexandre.bounine@idt.com",
        "time": "Thu Dec 08 14:34:42 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 07:50:29 2011 -0800"
      },
      "message": "rapidio/tsi721: modify PCIe capability settings\n\nModify initialization of PCIe capability registers in Tsi721 mport driver:\n - change Completion Timeout value to avoid unexpected data transfer\n   aborts during intensive traffic.\n - replace hardcoded offset of PCIe capability block by making it use the\n   common function.\n\nThis patch is applicable to kernel versions starting from 3.2-rc1.\n\nSigned-off-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nCc: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b439e66f04bff6476c5d4bae6a52ab93fbb9a8f4",
      "tree": "a2b90c408ef73b23a4d32175ddb446e56a98b0bc",
      "parents": [
        "ceb96398127f3388cb5815b2ab550196e2be5d68"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "alexandre.bounine@idt.com",
        "time": "Thu Dec 08 14:34:36 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 07:50:29 2011 -0800"
      },
      "message": "rapidio/tsi721: fix mailbox resource reporting\n\nBug fix for Tsi721 RapidIO mport driver: Tsi721 supports four RapidIO\nmailboxes (MBOX0 - MBOX3) as defined by RapidIO specification.  Mailbox\nresources has to be properly reported to allow use of all available\nmailboxes (initial version reports only MBOX0).\n\nThis patch is applicable to kernel versions staring from 3.2-rc1.\n\nSigned-off-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nCc: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ceb96398127f3388cb5815b2ab550196e2be5d68",
      "tree": "8d19e47765da5c4521ad8513c9ed5e810be185cf",
      "parents": [
        "2a95ea6c0d129b4568fb64e1deda16ceb20e6636"
      ],
      "author": {
        "name": "Alexandre Bounine",
        "email": "alexandre.bounine@idt.com",
        "time": "Thu Dec 08 14:34:35 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 07:50:29 2011 -0800"
      },
      "message": "rapidio/tsi721: switch to dma_zalloc_coherent\n\nReplace the pair dma_alloc_coherent()+memset() with the new\ndma_zalloc_coherent() added by Andrew Morton for kernel version 3.2\n\nSigned-off-by: Alexandre Bounine \u003calexandre.bounine@idt.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2dbcd05f1e9e0932833d16dab1696176fc164b07",
      "tree": "737d8870a8e828c11d06c53931e329744d0cbfde",
      "parents": [
        "1de8ad43d0048963d0a0adf14bb046340426b1e4"
      ],
      "author": {
        "name": "Jonghwan Choi",
        "email": "jhbird.choi@samsung.com",
        "time": "Thu Dec 08 14:34:02 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 09 07:50:28 2011 -0800"
      },
      "message": "drivers/rtc/rtc-s3c.c: fix driver clock enable/disable balance issues\n\nIf an error occurs after the clock is enabled, the enable/disable state\ncan become unbalanced.\n\nSigned-off-by: Jonghwan Choi \u003cjhbird.choi@samsung.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nAcked-by: Kukjin Kim \u003ckgene.kim@samsung.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d8c71f9e5fbdd95650be00294d238e27a363b5c",
      "tree": "51f7ae70b3a188f8376d7912493d346537fe516e",
      "parents": [
        "9283d8c5af4cdcb809e655acdf4be368afec8b58"
      ],
      "author": {
        "name": "Adam Kwolek",
        "email": "adam.kwolek@intel.com",
        "time": "Fri Dec 09 14:26:11 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Fri Dec 09 14:26:11 2011 +1100"
      },
      "message": "md: raid5 crash during degradation\n\nNULL pointer access causes crash in raid5 module.\n\nSigned-off-by: Adam Kwolek \u003cadam.kwolek@intel.com\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "09d9673d53005fdf40de4c759425893904292236",
      "tree": "0c7b526b3338a5e8541b4da157e2cafaa3a1c1c5",
      "parents": [
        "fb38f9b8fe98a9c1f6b1e57d1b08b1102b293929",
        "c9c024b3f3e07d087974db4c0dc46217fff3a6c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 08 13:21:28 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 08 13:21:28 2011 -0800"
      },
      "message": "Merge branch \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  alarmtimers: Fix time comparison\n  ptp: Fix clock_getres() implementation\n"
    },
    {
      "commit": "9283d8c5af4cdcb809e655acdf4be368afec8b58",
      "tree": "d4baa86260792a10782808e51d5468e145358980",
      "parents": [
        "8bd2f0a05b361e07d48bb34398593f5f523946b3"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:27:57 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:27:57 2011 +1100"
      },
      "message": "md/raid5: never wait for bad-block acks on failed device.\n\nOnce a device is failed we really want to completely ignore it.\nIt should go away soon anyway.\n\nIn particular the presence of bad blocks on it should not cause us to\nblock as we won\u0027t be trying to write there anyway.\n\nSo as soon as we can check if a device is Faulty, do so and pretend\nthat it is already gone if it is Faulty.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "8bd2f0a05b361e07d48bb34398593f5f523946b3",
      "tree": "a87860b4b8821b40eb9e6bb5333f71dfa8c3fb39",
      "parents": [
        "52c64152a935e63d9ff73ce823730c9a23dedbff"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:26:08 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:26:08 2011 +1100"
      },
      "message": "md: ensure new badblocks are handled promptly.\n\nWhen we mark blocks as bad we need them to be acknowledged by the\nmetadata handler promptly.\n\nFor an in-kernel metadata handler that was already being done.  But\nfor an external metadata handler we need to alert it of the change by\nsending a notification through the sysfs file.  This adds that\nnotification.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "52c64152a935e63d9ff73ce823730c9a23dedbff",
      "tree": "03de10a1899d74b42d00740437140a032686d011",
      "parents": [
        "af8a24347f966ab9fae6b0f127d1fbc9d6932d3a"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:22:48 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 16:22:48 2011 +1100"
      },
      "message": "md: bad blocks shouldn\u0027t cause a Blocked status on a Faulty device.\n\nOnce a device is marked Faulty the badblocks - whether acknowledged or\nnot - become irrelevant.  So they shouldn\u0027t cause the device to be\nmarked as Blocked.\n\nWithout this patch, a process might write \"-blocked\" to clear the\nBlocked status, but while that will correctly fail the device, it\nwon\u0027t remove the apparent \u0027blocked\u0027 status.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "af8a24347f966ab9fae6b0f127d1fbc9d6932d3a",
      "tree": "903afdae95dc11444707410d784ad857dfb887c9",
      "parents": [
        "1d23f178d56ae1349b4fc5108ac8f4f8cdc92afc"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 15:49:46 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 15:49:46 2011 +1100"
      },
      "message": "md: take a reference to mddev during sysfs access.\n\n\nWhen we are accessing an mddev via sysfs we know that the\nmddev cannot disappear because it has an embedded kobj which\nis refcounted by sysfs.\nAnd we also take the mddev_lock.\nHowever this is not enough.\n\nThe final mddev_put could have been called and the\nmddev_delayed_delete is waiting for sysfs to let go so it can destroy\nthe kobj and mddev.\nIn this state there are a lot of changes that should not be attempted.\n\nTo to guard against this we:\n - initialise mddev-\u003eall_mddevs in on last put so the state can be\n   easily detected.\n - in md_attr_show and md_attr_store, check -\u003eall_mddevs under\n   all_mddevs_lock and mddev_get the mddev if it still appears to\n   be active.\n\nThis means that if we get to sysfs as the mddev is being deleted we\nwill get -EBUSY.\n\nrdev_attr_store and rdev_attr_show are similar but already have\nsufficient protection.  They check that rdev-\u003emddev still points to\nmddev after taking mddev_lock.  As this is cleared  before delayed\nremoval which can only be requested under the mddev_lock, this\nensure the rdev and mddev are still alive.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "1d23f178d56ae1349b4fc5108ac8f4f8cdc92afc",
      "tree": "3be282873c611cab1e855e0991ee3620d4cb906b",
      "parents": [
        "7c8f4247986bb5c5fb1d5b1fad35461989fe8310"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 15:49:12 2011 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Thu Dec 08 15:49:12 2011 +1100"
      },
      "message": "md: refine interpretation of \"hold_active \u003d\u003d UNTIL_IOCTL\".\n\nWe like md devices to disappear when they really are not needed.\nHowever it is not possible to tell from the current state whether it\nis needed or not.  We can only tell from recent history of changes.\n\nIn particular immediately after we create an md device it looks very\nsimilar to immediately after we have finished with it.\n\nSo we always preserve a newly created md device until something\nsignificant happens.  This state is stored in \u0027hold_active\u0027.\n\nThe normal case is to keep it until an ioctl happens, as that will\nnormally either activate it, or explicitly de-activate it.  If it\ndoesn\u0027t then it was probably created by mistake and it is now time to\nget rid of it.\n\nWe can also modify an array via sysfs (instead of via ioctl) and we\ncurrently treat any change via sysfs like an ioctl as a sign that if\nit now isn\u0027t more active, it should be destroyed.\nHowever this is not appropriate as changes made via sysfs are more\ngradual so we should look for a more definitive change.\n\nSo this patch only clears \u0027hold_active\u0027 from UNTIL_IOCTL to clear when\nthe array_state is changed via sysfs.  Other changes via sysfs\nare ignored.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "34a9d2c39afe74a941b9e88efe2762afc4d82443",
      "tree": "b44dbdb8de0f840f3b03ebda82a615bce199d3f7",
      "parents": [
        "a694ad94bce2a0287136043e25cff856ce3a1007",
        "ddca8f3ed36c5d25363dab6762829868af09cb02"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 18:18:27 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 18:18:27 2011 -0800"
      },
      "message": "Merge branch \u00273.2-rc-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending\n\n* \u00273.2-rc-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (25 commits)\n  iscsi-target: Fix hex2bin warn_unused compile message\n  target: Don\u0027t return an error if disabling unsupported features\n  target/rd: fix or rewrite the copy routine\n  target/rd: simplify the page/offset computation\n  target: remove the unused se_dev_list\n  target/file: walk properly over sg list\n  target: remove unused struct fields\n  target: Fix page length in emulated INQUIRY VPD page 86h\n  target: Handle 0 correctly in transport_get_sectors_6()\n  target: Don\u0027t return an error status for 0-length READ and WRITE\n  iscsi-target: Use kmemdup rather than duplicating its implementation\n  iscsi-target: Add missing F_BIT for iscsi_tm_rsp\n  iscsi-target: Fix residual count hanlding + remove iscsi_cmd-\u003eresidual_count\n  target: Reject SCSI data overflow for fabrics using transport_generic_map_mem_to_cmd\n  target: remove the unused t_task_pt_sgl and t_task_pt_sgl_num se_cmd fields\n  target: remove the t_tasks_bidi se_cmd field\n  target: remove the t_tasks_fua se_cmd field\n  target: remove the se_ordered_node se_cmd field\n  target: remove the se_obj_ptr and se_orig_obj_ptr se_cmd fields\n  target: Drop config_item_name usage in fabric TFO-\u003efree_wwn()\n  ...\n"
    },
    {
      "commit": "1c70132ffbd3c93558c1c0b34ae228543391f355",
      "tree": "a806ccfed6ef97f7aa310e86a80e41313be420f7",
      "parents": [
        "22c6b32d8d9b7adf903c19b7e108062431fdc6fc",
        "fe6b91f47080eb17d21cbf2a39311877d57f6938"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 16:12:29 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 16:12:29 2011 -0800"
      },
      "message": "Merge branch \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / Driver core: leave runtime PM enabled during system shutdown\n"
    },
    {
      "commit": "fe6b91f47080eb17d21cbf2a39311877d57f6938",
      "tree": "0c63640274b02fdb3c95546cf966896e97bb5877",
      "parents": [
        "b835c0f47f725d864bf2545f10c733b754bb6d51"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Tue Dec 06 23:24:52 2011 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 07 22:26:56 2011 +0100"
      },
      "message": "PM / Driver core: leave runtime PM enabled during system shutdown\n\nDisabling all runtime PM during system shutdown turns out not to be a\ngood idea, because some devices may need to be woken up from a\nlow-power state at that time.\n\nThe whole point of disabling runtime PM for system shutdown was to\nprevent untimely runtime-suspend method calls.  This patch (as1504)\naccomplishes the same result by incrementing the usage count for each\ndevice and waiting for ongoing runtime-PM callbacks to finish.  This\nis what we already do during system suspend and hibernation, which\nmakes sense since the shutdown method is pretty much a legacy analog\nof the pm-\u003epoweroff method.\n\nThis fixes a recent regression on some OMAP systems introduced by\ncommit af8db1508f2c9f3b6e633e2d2d906c6557c617f9 (PM / driver core:\ndisable device\u0027s runtime PM during shutdown).\n\nReported-and-tested-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "c65b53ba4f9ca4520078bab23099579da3bf0446",
      "tree": "9911097da6766c130e4b94b9848138dba8fedab1",
      "parents": [
        "d9ddcec35d713dd33dc20dcb4db84db35f9956a6"
      ],
      "author": {
        "name": "Manuel Lauss",
        "email": "manuel.lauss@googlemail.com",
        "time": "Sat Nov 19 13:08:10 2011 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Dec 07 22:17:39 2011 +0100"
      },
      "message": "spi/gpio: fix section mismatch warning\n\nFixes:\nThe function __devinit spi_gpio_probe() references\na function __init spi_gpio_alloc.isra.4().\nIf spi_gpio_alloc.isra.4 is only used by spi_gpio_probe then\nannotate spi_gpio_alloc.isra.4 with a matching annotation.\n\n[wsa: fix spi_gpio_request(), too]\n\nSigned-off-by: Manuel Lauss \u003cmanuel.lauss@googlemail.com\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "d9ddcec35d713dd33dc20dcb4db84db35f9956a6",
      "tree": "5fe6447cc0d66c37c755455b724256df1da791e7",
      "parents": [
        "00d2952caa6b0b2cd113494ae39f08c4663f371b"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Wed Dec 07 21:18:16 2011 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Dec 07 21:58:25 2011 +0100"
      },
      "message": "spi/fsl-espi: disable CONFIG_SPI_FSL_ESPI\u003dm build\n\nWhen spi_fsl_espi is chosen to be built as a module, there is a build\nerror because we test only CONFIG_SPI_FSL_ESPI in declaration of\nstruct mpc8xxx_spi in drivers/spi/spi_fsl_lib.h. Also some called\nfunctions are not exported.\n\nSo we forbid CONFIG_SPI_FSL_ESPI to be tristate here.\n\nThe error looks like:\ndrivers/spi/spi_fsl_espi.c: In function \u0027fsl_espi_bufs\u0027:\ndrivers/spi/spi_fsl_espi.c:232: error: \u0027struct mpc8xxx_spi\u0027 has no member named \u0027len\u0027\n...\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nAcked-by: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "00d2952caa6b0b2cd113494ae39f08c4663f371b",
      "tree": "200527bcf7e0422aac1ac7a86da8a1272eb48142",
      "parents": [
        "807cc4b1201e82769f7435211310f5691dcb704d"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Thu Nov 24 11:10:51 2011 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Dec 07 21:58:12 2011 +0100"
      },
      "message": "spi/nuc900: Include linux/module.h\n\nInclude linux/module.h to fix below build error:\n\n  CC      drivers/spi/spi-nuc900.o\ndrivers/spi/spi-nuc900.c:484: error: \u0027THIS_MODULE\u0027 undeclared here (not in a function)\ndrivers/spi/spi-nuc900.c:489: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-nuc900.c:489: warning: data definition has no type or storage class\ndrivers/spi/spi-nuc900.c:489: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_AUTHOR\u0027\ndrivers/spi/spi-nuc900.c:489: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-nuc900.c:490: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-nuc900.c:490: warning: data definition has no type or storage class\ndrivers/spi/spi-nuc900.c:490: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_DESCRIPTION\u0027\ndrivers/spi/spi-nuc900.c:490: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-nuc900.c:491: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-nuc900.c:491: warning: data definition has no type or storage class\ndrivers/spi/spi-nuc900.c:491: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_LICENSE\u0027\ndrivers/spi/spi-nuc900.c:491: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-nuc900.c:492: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-nuc900.c:492: warning: data definition has no type or storage class\ndrivers/spi/spi-nuc900.c:492: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_ALIAS\u0027\ndrivers/spi/spi-nuc900.c:492: warning: function declaration isn\u0027t a prototype\nmake[2]: *** [drivers/spi/spi-nuc900.o] Error 1\nmake[1]: *** [drivers/spi] Error 2\nmake: *** [drivers] Error 2\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nAcked-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "807cc4b1201e82769f7435211310f5691dcb704d",
      "tree": "3c52fb3d6ddaa9334ef33fa473a929d3338a66ea",
      "parents": [
        "5611cc4572e889b62a7b4c72a413536bf6a9c416"
      ],
      "author": {
        "name": "Gabor Juhos",
        "email": "juhosg@openwrt.org",
        "time": "Wed Nov 16 20:01:43 2011 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Wed Dec 07 21:57:49 2011 +0100"
      },
      "message": "spi/ath79: fix compile error due to missing include\n\nWhithout including \u0027linux/module.h\u0027 spi-ath79 driver fails to compile\nwith the these errors:\n\ndrivers/spi/spi-ath79.c:273:12: error: \u0027THIS_MODULE\u0027 undeclared here (not in a function)\ndrivers/spi/spi-ath79.c:278:20: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-ath79.c:278:1: warning: data definition has no type or storage class\ndrivers/spi/spi-ath79.c:278:1: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_DESCRIPTION\u0027\ndrivers/spi/spi-ath79.c:278:20: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-ath79.c:279:15: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-ath79.c:279:1: warning: data definition has no type or storage class\ndrivers/spi/spi-ath79.c:279:1: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_AUTHOR\u0027\ndrivers/spi/spi-ath79.c:279:15: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-ath79.c:280:16: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-ath79.c:280:1: warning: data definition has no type or storage class\ndrivers/spi/spi-ath79.c:280:1: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_LICENSE\u0027\ndrivers/spi/spi-ath79.c:280:16: warning: function declaration isn\u0027t a prototype\ndrivers/spi/spi-ath79.c:281:14: error: expected declaration specifiers or \u0027...\u0027 before string constant\ndrivers/spi/spi-ath79.c:281:1: warning: data definition has no type or storage class\ndrivers/spi/spi-ath79.c:281:1: warning: type defaults to \u0027int\u0027 in declaration of \u0027MODULE_ALIAS\u0027\ndrivers/spi/spi-ath79.c:281:14: warning: function declaration isn\u0027t a prototype\n\nSigned-off-by: Gabor Juhos \u003cjuhosg@openwrt.org\u003e\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "77a7300abad7fe01891b400e88d746f97307ee5a",
      "tree": "c5c7cf7855c065858b72eae658b34426cfce665d",
      "parents": [
        "10ec5e6c0cfcc4289c0cb056cd330ad70ea39b7f"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Wed Dec 07 03:16:26 2011 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 09:06:37 2011 -0800"
      },
      "message": "of/irq: Get rid of NO_IRQ usage\n\nPPC32/64 defines NO_IRQ to zero, so no problems expected.\nARM defines NO_IRQ to -1, but OF code relies on IRQ domains support,\nwhich returns correct (\u00270\u0027) value in \u0027no irq\u0027 case. So everything\nshould be fine.\n\nOther arches might break if some of their OF drivers rely on NO_IRQ\nbeing not 0. If so, the drivers must be fixed, finally.\n\n[ Rob Herring points out that microblaze should be fixed, and has posted\n  a patch for testing for that.   - Linus ]\n\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "10ec5e6c0cfcc4289c0cb056cd330ad70ea39b7f",
      "tree": "6967bfd9e2f3f26d150909c5cd1e6e9f31c7f335",
      "parents": [
        "3172f8fe1ca1d432b196efad453c0ceb89302075",
        "24bb5a0ce39c51a2e2602c947f218a19e4b26d7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 08:20:01 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 07 08:20:01 2011 -0800"
      },
      "message": "Merge branch \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux\n\n* \u0027drm-fixes\u0027 of git://people.freedesktop.org/~airlied/linux:\n  vmwgfx: Use kcalloc instead of kzalloc to allocate array\n  drm/i915: fix infinite recursion on unbind due to ilk vt-d w/a\n  drm/radeon/kms: fix return type for radeon_encoder_get_dp_bridge_encoder_id\n"
    },
    {
      "commit": "24bb5a0ce39c51a2e2602c947f218a19e4b26d7d",
      "tree": "ccedf969b24b2025ce335e403954bd3112eb47c9",
      "parents": [
        "eb1711bb94991e93669c5a1b5f84f11be2d51ea1"
      ],
      "author": {
        "name": "Thomas Meyer",
        "email": "thomas@m3y3r.de",
        "time": "Tue Nov 29 22:08:00 2011 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Dec 07 10:44:41 2011 +0000"
      },
      "message": "vmwgfx: Use kcalloc instead of kzalloc to allocate array\n\nThe advantage of kcalloc is, that will prevent integer overflows which could\nresult from the multiplication of number of elements and size and it is also\na bit nicer to read.\n\nThe semantic patch that makes this change is available\nin https://lkml.org/lkml/2011/11/25/107\n\nSigned-off-by: Thomas Meyer \u003cthomas@m3y3r.de\u003e\nReviewed-by: Jakob Bornecrantz \u003cjakob@vmware.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "eb1711bb94991e93669c5a1b5f84f11be2d51ea1",
      "tree": "bd81e6b8f8c2547267e909ea2ac27bf472c15e8e",
      "parents": [
        "dc87cd5c264cb587f16459285565830689ecf7a7"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Tue Dec 06 12:12:33 2011 +0100"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Dec 07 10:44:40 2011 +0000"
      },
      "message": "drm/i915: fix infinite recursion on unbind due to ilk vt-d w/a\n\nThe recursion loop goes retire_requests-\u003eunbind-\u003egpu_idle-\u003eretire_reqeusts.\n\nEvery time we go through this we need a\n- active object that can be retired\n- and there are no other references to that object than the one from\n  the active list, so that it gets unbound and freed immediately.\nOtherwise the recursion stops. So the recursion is only limited by the\nnumber of objects that fit these requirements sitting in the active list\nany time retire_request is called.\n\nIssue exercised by tests/gem_unref_active_buffers from i-g-t.\n\nThere\u0027s been a decent bikeshed discussion whether it wouldn\u0027t be\nbetter to pass around a flag, but imo this is o.k. for such a limited\ncase that only supports a w/a.\n\nBugzilla: https://bugs.freedesktop.org/show_bug.cgi?id\u003d42180\n\nSigned-Off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Chris Wilson \u003cchris@chris-wilson\u003e\n[ickle- we built better bikesheds, but this keeps the rain off for now]\nTested-by: Dave Airlie \u003cairlied@redhat.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "dc87cd5c264cb587f16459285565830689ecf7a7",
      "tree": "9c167b57024149912c05d0cf211ed0416671bc0f",
      "parents": [
        "45e713efe2fa574b6662e7fb63fae9497c5e03d4"
      ],
      "author": {
        "name": "Alex Deucher",
        "email": "alexander.deucher@amd.com",
        "time": "Fri Dec 02 18:15:27 2011 -0500"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Wed Dec 07 10:44:38 2011 +0000"
      },
      "message": "drm/radeon/kms: fix return type for radeon_encoder_get_dp_bridge_encoder_id\n\nSeems like something got mis-merged here.\n\nNoticed by kallisti5 on IRC.\n\nSigned-off-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "b835c0f47f725d864bf2545f10c733b754bb6d51",
      "tree": "f80f0d627bd81ea3f01d1bae71700a940896622a",
      "parents": [
        "091c0f86bad6bb0b003dff2f6195508e29548648",
        "681090902eeb459a829f6f93d378a82011af3c89"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 06 12:03:54 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 06 12:03:54 2011 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  net: Silence seq_scale() unused warning\n  ipv4:correct description for tcp_max_syn_backlog\n  pasemi_mac: Fix building as module\n  netback: Fix alert message.\n  r8169: fix Rx index race between FIFO overflow recovery and NAPI handler.\n  r8169: Rx FIFO overflow fixes.\n  ipv4: Fix peer validation on cached lookup.\n  ipv4: make sure RTO_ONLINK is saved in routing cache\n  iwlwifi: change the default behavior of watchdog timer\n  iwlwifi: do not re-configure HT40 after associated\n  iwlagn: fix HW crypto for TX-only keys\n  Revert \"mac80211: clear sta.drv_priv on reconfiguration\"\n  mac80211: fill rate filter for internal scan requests\n  cfg80211: amend regulatory NULL dereference fix\n  cfg80211: fix race on init and driver registration\n"
    },
    {
      "commit": "d68fb11c3dae75c8331538dcf083a65e697cc034",
      "tree": "58e17fb372e78aac7bec64cff201379094c75ff4",
      "parents": [
        "45e713efe2fa574b6662e7fb63fae9497c5e03d4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 05 21:16:06 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 06 11:38:32 2011 +0100"
      },
      "message": "ptp: Fix clock_getres() implementation\n\nThe clock_getres() function must return the resolution in the timespec\nargument and return 0 for success.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: stable@kernel.org\nCc: Richard Cochran \u003crichard.cochran@omicron.at\u003e\n"
    },
    {
      "commit": "ddca8f3ed36c5d25363dab6762829868af09cb02",
      "tree": "a954dea7351e0f36fa2872ad39b9c4ea5f2cc5d8",
      "parents": [
        "c638830d040696ff2bae07785fd4277e7e3fe7c4"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 05:24:19 2011 +0000"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:59 2011 +0000"
      },
      "message": "iscsi-target: Fix hex2bin warn_unused compile message\n\nFix the following compile warning with hex2bin() usage:\n\ndrivers/target/iscsi/iscsi_target_auth.c: In function ‘chap_string_to_hex’:\ndrivers/target/iscsi/iscsi_target_auth.c:35: warning: ignoring return value of ‘hex2bin’, declared with attribute warn_unused_result\n\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "c638830d040696ff2bae07785fd4277e7e3fe7c4",
      "tree": "d81f55b5ecbbecadcd3dc81edfd9f0dedc9901b8",
      "parents": [
        "65b0c78d5a0ca2cb82b7b9f54f855896e0d7fc10"
      ],
      "author": {
        "name": "Andy Grover",
        "email": "agrover@redhat.com",
        "time": "Wed Nov 30 12:11:50 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:58 2011 +0000"
      },
      "message": "target: Don\u0027t return an error if disabling unsupported features\n\nIf an attribute is present (but not yet supported) it should be OK\nto write 0 (a no-op) to the attribute.\n\nThis is an issue because userspace should be able to save and restore all\nset attribute values without error.\n\nSigned-off-by: Andy Grover \u003cagrover@redhat.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "65b0c78d5a0ca2cb82b7b9f54f855896e0d7fc10",
      "tree": "64a27fa0aa08795154674909ccbf2106f56783eb",
      "parents": [
        "5bff9e8584fbcdb361dada5a0425724b9e31e608"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Wed Nov 30 10:48:30 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:58 2011 +0000"
      },
      "message": "target/rd: fix or rewrite the copy routine\n\nSo the code assumes that the sg list is only a array while in reality\nloopback SGL memory via scsi_cmnd into target-core may be already\nchained.  This patch converts ramdisk code to use sg_miter logic from\nscatterlist.h in order to properly support passthrough SGL usage with\ntransport_generic_map_mem_to_cmd() via loopback.\n\nWith this patch the bug goes away. However after umount/mount of the\ndevice my files are gone. So something is still not right. After looking\nat it for a while I decided to rewrite the that part of the code and now\nthings do work for me.\n\nFor reference:\n- http://article.gmane.org/gmane.linux.scsi.target.devel/595\n  the sg_next() conversion\n- http://article.gmane.org/gmane.linux.scsi.target.devel/602\n  the rewrite of the copy code\n\n(nab: Fix compile warning in rd_MEMCPY)\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "5bff9e8584fbcdb361dada5a0425724b9e31e608",
      "tree": "a16f405f1165e03f0bf7a8d6053aa772b8545a5d",
      "parents": [
        "6f21475576dde397cd2580262209d4080fbd5458"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Fri Nov 25 22:18:45 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:57 2011 +0000"
      },
      "message": "target/rd: simplify the page/offset computation\n\nBreakout rd_MEMCPY_do_task() usage of do_div() to tmp value during\nrd_request-\u003erd_page assignment.\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "6f21475576dde397cd2580262209d4080fbd5458",
      "tree": "2fa1831eaec0722b2e48278e447a3aa57b52a9fc",
      "parents": [
        "9649fa1b8764f64c8cc4293e197e14cd46fe7205"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Nov 29 03:29:59 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:57 2011 +0000"
      },
      "message": "target: remove the unused se_dev_list\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9649fa1b8764f64c8cc4293e197e14cd46fe7205",
      "tree": "c22257cf450c45ae663db66604ee09e230939e4d",
      "parents": [
        "5c73b678f729ea087ef57b59a5d7b5dd3a97042b"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Mon Nov 28 12:33:10 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:57 2011 +0000"
      },
      "message": "target/file: walk properly over sg list\n\nThis patch changes fileio to use for_each_sg() when walking se_task-\u003etask_sg\nmemory passed into from loopback LLD struct scsi_cmnd scatterlist memory.\n\nThis addresses an issue where FILEIO backends with loopback where hitting the\nfollowing OOPs with mkfs.ext2:\n\n|kernel BUG at include/linux/scatterlist.h:97!\n|invalid opcode: 0000 [#1] PREEMPT SMP\n|Modules linked in: sd_mod tcm_loop target_core_stgt scsi_tgt target_core_pscsi target_core_file target_core_iblock target_core_mod configfs scsi_mod\n|\n|Pid: 671, comm: LIO_fileio Not tainted 3.1.0-rc10+ #139 Bochs Bochs\n|EIP: 0060:[\u003ce0afd746\u003e] EFLAGS: 00010202 CPU: 0\n|EIP is at fd_do_task+0x396/0x420 [target_core_file]\n| [\u003ce0aa7884\u003e] __transport_execute_tasks+0xd4/0x190 [target_core_mod]\n| [\u003ce0aa797c\u003e] transport_execute_tasks+0x3c/0xf0 [target_core_mod]\n|EIP: [\u003ce0afd746\u003e] fd_do_task+0x396/0x420 [target_core_file] SS:ESP 0068:dea47e90\n\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "5c73b678f729ea087ef57b59a5d7b5dd3a97042b",
      "tree": "1dfbf0564bba408d6728cb2cf1054b3f0f2eddbc",
      "parents": [
        "1289a0571c037b4757f60597d646aedb70361ec3"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@logfs.org",
        "time": "Thu Nov 24 02:04:16 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:56 2011 +0000"
      },
      "message": "target: remove unused struct fields\n\nSome are never used, some are set but never read, dev_hoq_count is\nincremented and decremented, but never read.\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "1289a0571c037b4757f60597d646aedb70361ec3",
      "tree": "f06f863821f9b918e2fc6686e874718dae3e1528",
      "parents": [
        "9b5cd7f37e1e018432111333e2a67f78ba41edfe"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Nov 22 13:51:34 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:56 2011 +0000"
      },
      "message": "target: Fix page length in emulated INQUIRY VPD page 86h\n\nThe LSB of the page length is at offset 3, not 2.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "9b5cd7f37e1e018432111333e2a67f78ba41edfe",
      "tree": "c1d620a534f0fcb36c354bbe35daf53f3d30a743",
      "parents": [
        "410f670202f0f13cdac8459b9c3effeeead135d1"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Nov 22 13:51:33 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:55 2011 +0000"
      },
      "message": "target: Handle 0 correctly in transport_get_sectors_6()\n\nSBC-3 says:\n\n    A TRANSFER LENGTH field set to zero specifies that 256 logical\n    blocks shall be written.  Any other value specifies the number\n    of logical blocks that shall be written.\n\nThe old code was always just returning the value in the TRANSFER LENGTH\nbyte.  Fix this to return 256 if the byte is 0.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "410f670202f0f13cdac8459b9c3effeeead135d1",
      "tree": "dfad1b29759c54f4ce5141f6d15b8f3d18d00b6e",
      "parents": [
        "1c3d5794fc4a2afd2258b3aa6406377934a36663"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Nov 22 13:51:32 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:55 2011 +0000"
      },
      "message": "target: Don\u0027t return an error status for 0-length READ and WRITE\n\nIO commands with a TRANSFER LENGTH of 0 are not an error; for example,\nfor READ (10) and WRITE (10), SBC-3 says:\n\n    A TRANSFER LENGTH field set to zero specifies that no logical blocks\n    shall be read. This condition shall not be considered an error.\n\nIn case we have nothing to do, just complete the command with good status.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "1c3d5794fc4a2afd2258b3aa6406377934a36663",
      "tree": "9a071b1260bfc5b957f168e5a3622667c0ed2ccc",
      "parents": [
        "7ae0b1038f9f7d4c91e9afd4dbbc98210bf1a241"
      ],
      "author": {
        "name": "Thomas Meyer",
        "email": "thomas@m3y3r.de",
        "time": "Thu Nov 17 23:43:40 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:55 2011 +0000"
      },
      "message": "iscsi-target: Use kmemdup rather than duplicating its implementation\n\nThe semantic patch that makes this change is available\nin scripts/coccinelle/api/memdup.cocci.\n\nSigned-off-by: Thomas Meyer \u003cthomas@m3y3r.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "7ae0b1038f9f7d4c91e9afd4dbbc98210bf1a241",
      "tree": "f022457108c11b5a90d10634f2abbbf1147b2271",
      "parents": [
        "7e46cf02687e40197ae07c623e660be2a2720064"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sun Nov 27 22:25:14 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:54 2011 +0000"
      },
      "message": "iscsi-target: Add missing F_BIT for iscsi_tm_rsp\n\nThis patch sets the missing ISCSI_FLAG_CMD_FINAL bit in\niscsit_send_task_mgt_rsp() for a struct iscsi_tm_rsp PDU.\n\nThis usage is hardcoded for all TM response PDUs in RFC-3720\nsection 10.6.\n\nReported-by: whucecil \u003cwhucecil1999@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "7e46cf02687e40197ae07c623e660be2a2720064",
      "tree": "47e6b57863e2716dfa5a6347b12a23c063e446cd",
      "parents": [
        "fef58a6096770ed6ab49103a430cc755254a74d9"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Nov 15 23:59:00 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:54 2011 +0000"
      },
      "message": "iscsi-target: Fix residual count hanlding + remove iscsi_cmd-\u003eresidual_count\n\nThis patch fixes iscsi-target handling of underflow where residual data is\ncausing an OOPs by using the incorrect iscsi_cmd_t-\u003edata_length initially\nassigned in iscsit_allocate_se_cmd().  It resets iscsi_cmd_t-\u003edata_length\nfrom se_cmd_t-\u003edata_length after transport_generic_allocate_tasks()\nhas been invoked in iscsit_handle_scsi_cmd() RX context, and converts\niscsi_cmd-\u003eresidual_count usage to access iscsi_cmd-\u003ese_cmd.residual_count\nto get the proper residual count set by target-core.\n\nReported-by: \u003clists@internyc.net\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Andy Grover \u003cagrover@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "fef58a6096770ed6ab49103a430cc755254a74d9",
      "tree": "e59f7c7074c32e604a9b1a9f15550c0249e12546",
      "parents": [
        "6fd126ffebef3897d8fca98644a9fd1cc5c7a5e3"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Nov 15 22:13:24 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:53 2011 +0000"
      },
      "message": "target: Reject SCSI data overflow for fabrics using transport_generic_map_mem_to_cmd\n\nThis patch changes transport_generic_map_mem_to_cmd() to reject SCSI data\noverflow and to send exception status with CHECK_CONDITION + TCM_INVALID_CDB_FIELD\nfor fabrics that are passing a pre-populated struct scatterlist (eg: tcm_loop\nand iscsi-target) being mapped into se_cmd-\u003et_data_sg and se_cmd-\u003et_data_nents.\n\nThis addresses an OOPs where transport_allocate_data_tasks() would walk\nthe incorrect post OVERFLOW cmd-\u003edata_length value beyond the end of\nthe passed scatterlist.\n\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Andy Grover \u003cagrover@redhat.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "33c3fafc43e56a22be60ebe67bec5ba763d51010",
      "tree": "87a482353c77ff469b4d7b4fab8df105087d8cf9",
      "parents": [
        "2d3a4b51df4db2ee0415f42a63b9629a7977b975"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Nov 14 11:36:30 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:53 2011 +0000"
      },
      "message": "target: remove the t_tasks_bidi se_cmd field\n\nAnd use a SCF_BIDI flag instead.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "2d3a4b51df4db2ee0415f42a63b9629a7977b975",
      "tree": "fd83d9881b4d2041061d62271fea53af8a81be44",
      "parents": [
        "aad13ca20d960ab74b739d7bbe876dac4502f546"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Nov 14 11:36:29 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:52 2011 +0000"
      },
      "message": "target: remove the t_tasks_fua se_cmd field\n\nAnd use a SCF_FUA flag instead.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "aad13ca20d960ab74b739d7bbe876dac4502f546",
      "tree": "be24d2405a4f53449a7368cbd8218edc06ad8828",
      "parents": [
        "58a2801a4b9ad97d3685bb7a3344e17d60292908"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Nov 14 11:36:28 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:52 2011 +0000"
      },
      "message": "target: remove the se_ordered_node se_cmd field\n\nWe never walk ordered_cmd_list in the se_device, so remove all code related\nto supporting it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "58a2801a4b9ad97d3685bb7a3344e17d60292908",
      "tree": "57326befbef1dfdf86b20b2237939c333e1cddbc",
      "parents": [
        "6297b07cbc42eb6b53eb88fce70a4727ea230797"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Mon Nov 14 11:36:27 2011 -0500"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:52 2011 +0000"
      },
      "message": "target: remove the se_obj_ptr and se_orig_obj_ptr se_cmd fields\n\nWe already have a perfectly valid se_device pointer in the command, so\nremove the mostly useless duplicates.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "6297b07cbc42eb6b53eb88fce70a4727ea230797",
      "tree": "34996a19baaa466e274b361e4437da97b85d249f",
      "parents": [
        "97c34f3b04978799fd6eada69e1a8d84b74d9599"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Sat Nov 12 09:29:51 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:51 2011 +0000"
      },
      "message": "target: Drop config_item_name usage in fabric TFO-\u003efree_wwn()\n\nThis patch removes config_item_name() informational usage of\nTFO-\u003efree_wwn() treewide in loopback, tcm_fc, ib_srpt and\ntcm_vhost module code.\n\nUsing v4 target_core_fabric_configfs.c logic, a fabric call for\nconfig_item_name() in TFO-\u003edrop_wwn() context returns NULL as\ntarget_fabric_drop_wwn() invoking config_item_put() -\u003e\nconfig_group_put() will release fabric_port-\u003eport_wwn.wwn_group\nbefore the last config_item_put() -\u003e TFO-\u003edrop_wwn() is\ninvoked.\n\nReported-by: Bart Van Assche \u003cbvanassche@acm.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "97c34f3b04978799fd6eada69e1a8d84b74d9599",
      "tree": "f4879bcd2091e21fd83b6a0c466d5171a256ac38",
      "parents": [
        "5f655e8d2a7cdc41943f929e86054051d7441ec5"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Nov 10 11:22:47 2011 -0800"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:51 2011 +0000"
      },
      "message": "target: Get rid of unused se_cmd_cache\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "330694a50f5b80e983136237c10516810fb427a9",
      "tree": "cd07658fcbe5aafd1e87bde8f96e7c6d9141be5c",
      "parents": [
        "0957627a99604f379d35831897a2aa15272528fc"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@acm.org",
        "time": "Sun Nov 06 18:37:23 2011 +0100"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:50 2011 +0000"
      },
      "message": "target: Improve system responsivity during I/O\n\nWhile testing ib_srpt I noticed that the target system became\nrather unresponsive during intensive I/O. The patch below made\nmy target system responsive again during I/O without decreasing\nperformance.\n\nSigned-off-by: Bart Van Assche \u003cbvanassche@acm.org\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    },
    {
      "commit": "0957627a99604f379d35831897a2aa15272528fc",
      "tree": "250335ec7dcc6816a7b8135076058a494745f689",
      "parents": [
        "03e98c9eb916f3f0868c1dc344dde2a60287ff72"
      ],
      "author": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Fri Nov 04 11:36:38 2011 -0700"
      },
      "committer": {
        "name": "Nicholas Bellinger",
        "email": "nab@linux-iscsi.org",
        "time": "Tue Dec 06 06:00:49 2011 +0000"
      },
      "message": "iscsi-target: Fix sess allocation leak in iscsi_login_zero_tsih_s1\n\nThis patch adds missing kfree() for an allocation in iscsi_login_zero_tsih_s1()\ncode, and make transport_init_session() check for IS_ERR() returns.\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Nicholas Bellinger \u003cnab@linux-iscsi.org\u003e\n"
    }
  ],
  "next": "03e98c9eb916f3f0868c1dc344dde2a60287ff72"
}
