)]}'
{
  "commit": "c66ac9db8d4ad9994a02b3e933ea2ccc643e1fe5",
  "tree": "71c6344688bf56ea6aaf18c586ab69ff4f077ade",
  "parents": [
    "f4013c3879d1bbd9f3ab8351185decd049502368"
  ],
  "author": {
    "name": "Nicholas Bellinger",
    "email": "nab@linux-iscsi.org",
    "time": "Fri Dec 17 11:11:26 2010 -0800"
  },
  "committer": {
    "name": "James Bottomley",
    "email": "James.Bottomley@suse.de",
    "time": "Fri Jan 14 10:12:29 2011 -0600"
  },
  "message": "[SCSI] target: Add LIO target core v4.0.0-rc6\n\nLIO target is a full featured in-kernel target framework with the\nfollowing feature set:\n\nHigh-performance, non-blocking, multithreaded architecture with SIMD\nsupport.\n\nAdvanced SCSI feature set:\n\n    * Persistent Reservations (PRs)\n    * Asymmetric Logical Unit Assignment (ALUA)\n    * Protocol and intra-nexus multiplexing, load-balancing and failover (MC/S)\n    * Full Error Recovery (ERL\u003d0,1,2)\n    * Active/active task migration and session continuation (ERL\u003d2)\n    * Thin LUN provisioning (UNMAP and WRITE_SAMExx)\n\nMultiprotocol target plugins\n\nStorage media independence:\n\n    * Virtualization of all storage media; transparent mapping of IO to LUNs\n    * No hard limits on number of LUNs per Target; maximum LUN size ~750 TB\n    * Backstores: SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk, etc.\n\nStandards compliance:\n\n    * Full compliance with IETF (RFC 3720)\n    * Full implementation of SPC-4 PRs and ALUA\n\nSignificant code cleanups done by Christoph Hellwig.\n\n[jejb: fix up for new block bdev exclusive interface. Minor fixes from\n Randy Dunlap and Dan Carpenter.]\nSigned-off-by: Nicholas A. Bellinger \u003cnab@linux-iscsi.org\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dbeb8a0d7175668cd4ce76c435f220fff7e526cc",
      "new_mode": 33261,
      "new_path": "Documentation/target/tcm_mod_builder.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "84533d8e747f298d557a4d18159a8a01a96db141",
      "new_mode": 33188,
      "new_path": "Documentation/target/tcm_mod_builder.txt"
    },
    {
      "type": "modify",
      "old_id": "dd0a5b5e9bf36e4090a1187616e8d046b4fe146c",
      "old_mode": 33188,
      "old_path": "drivers/Kconfig",
      "new_id": "9bfb71ff3a6a82a6a0441d3a0984e9532bf7507a",
      "new_mode": 33188,
      "new_path": "drivers/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "ef5132469f587e3204e4f73f11b02b91e19ce9ef",
      "old_mode": 33188,
      "old_path": "drivers/Makefile",
      "new_id": "7eb35f479461eb13e6f9578de8bb1184742f004b",
      "new_mode": 33188,
      "new_path": "drivers/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2fac3be209ac622d6061917525db3709f10ebcef",
      "new_mode": 33188,
      "new_path": "drivers/target/Kconfig"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5cfd70819f0858e93c939c4034bd4731341248d8",
      "new_mode": 33188,
      "new_path": "drivers/target/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c5fcfed59344205574b02b139dfc3b2de158d03",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_alua.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c86f97a081edf8e348956e2f39785931be36bcf6",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_alua.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "366080baf4743831883eba811cb61a54812e08c5",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_cdb.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2764510798b0ff80f11ef57fb71f88fad40c048c",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_configfs.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "317ce58d426d5cac7e1e668cbd95eddab46cbbdd",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_device.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "32b148d7e261e3c7e361033ec32f526c2a2c4f07",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_fabric_configfs.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "26285644e4def509d296e70b0c2626f7a552fd93",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_fabric_lib.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0aaca885668f802d1966b56a9a45867e49a9e6ee",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_file.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ef4de2b4bd4666792ea7099e9b8e458273c48765",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_file.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4bbe8208b241b3792ecaffa917eaafc80e74cd81",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_hba.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bb0fea5f730c879282c1c939d16e3b1ed524ea8c",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_hba.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c6e0d757e76e0ecfe8fd7707d58c5167813cf3f3",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_iblock.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "64c1f4d69f76fd8936bd87fddecabc859b7ca588",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_iblock.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d5a48aa0d2d130bebf0b363f3a77a3e22d0c17ea",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_mib.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2772046338505c3f1415a859d4983c5ca217a0b2",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_mib.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2521f75362c3b2ddad86bdec6116ac6b0430095f",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_pr.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5603bcfd86d3c033dd1642aa41464f9d84e59970",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_pr.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "742d24609a9b26e1337aacf5c67dde199c399f0b",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_pscsi.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a4cd5d352c3aac585d6174fce04d246157407b75",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_pscsi.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "979aebf200194366cc931bf61f7bb1b6b008aa1b",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_rd.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "13badfbaf9c023fb497d126caf31e5caf816cfd4",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_rd.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dc6fed037ab3876b208ab8f5b8c08f69a2883eea",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_scdb.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "98cd1c01ed838843e4c4addf8a97453294cff488",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_scdb.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "158cecbec7183c0fb60c828cd2fb8fd2bfc19691",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_tmr.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "abfa81a57115a6863b05915db39f9011e042ee20",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_tpg.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "28b6292ff298b7f2307e369c5a77acde515fbe5e",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_transport.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a2ef346087e890ec461f35c8d20632643e03aee0",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_ua.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6e6b03460a1ac8bfcb54775f3aebab20f616fcc3",
      "new_mode": 33188,
      "new_path": "drivers/target/target_core_ua.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7fe74608b437faaad7e4f091469c8d0d8a9d0c2d",
      "new_mode": 33188,
      "new_path": "include/target/configfs_macros.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "07fdfb6b9a9acf81da4a2d68531053faf5b55f76",
      "new_mode": 33188,
      "new_path": "include/target/target_core_base.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "40e6e740527cb1b72f9ee3fa0b4a84f3b5e29994",
      "new_mode": 33188,
      "new_path": "include/target/target_core_configfs.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "52b18a5752c93d7aec425817bffcfb782f7a1a36",
      "new_mode": 33188,
      "new_path": "include/target/target_core_device.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a26fb7586a09e535b503c48cfa2d158736f1c7bf",
      "new_mode": 33188,
      "new_path": "include/target/target_core_fabric_configfs.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c2f8d0e3a03ba4adb6f34f30d08dc9728d2fdf63",
      "new_mode": 33188,
      "new_path": "include/target/target_core_fabric_lib.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f3ac12b019c27f20dd302726ba16276797140a67",
      "new_mode": 33188,
      "new_path": "include/target/target_core_fabric_ops.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6c8248bc2c66a868924f1db07fb196898745f93b",
      "new_mode": 33188,
      "new_path": "include/target/target_core_tmr.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "77e18729c4c1ff7fbecd0b11beca6de113c1e46c",
      "new_mode": 33188,
      "new_path": "include/target/target_core_tpg.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "66f44e56eb803a120a9ebcae349d9529ff44d8b8",
      "new_mode": 33188,
      "new_path": "include/target/target_core_transport.h"
    }
  ]
}
