2010年9月18日

[ANNOUNCE] TCM/LIO v4.0.0-rc4 for 2.6.36-rc4

Greetings all,

It is my great pleasure to announce that TCM/LIO v4.0.0-rc4 for v2.6.36-rc4 has
been tagged and pushed into lio-core-2.6.git/lio-4.0. The last weeks have been
really very busy and many gracious thanks go out to all of the individuals who
made comments and helped bring together this v4.0.0-rc4 release. A list of the
major changes includes:

*) Updates + bugfixes for tcm_fc (Joe Eykholt patches)
*) Drop host_lock around struct scsi_cmnd->scsi_done() in tcm_loop (Vasu Dev assist)
*) Add Extended INQUIRY Data VPD Page
*) Numerous target_core_base.h cleanups (Konrad Rzeszutek Wilk assist)
*) Add support for struct target_core_fabric_ops->new_cmd_map() optimization
*) Add support for struct se_task->task_sg[] chaining for HW target mode
pci_map_sg() and friends.
*) Convert msleep() to cpu_relax() usage in several tight loops.
(Konrad Rzeszutek Wilk assist)
*) Add optimization to convert TCM Core and tcm_loop, lio-target and tcm_fc
to use struct se_cmd descriptors from within fabric module dependent I/O
descriptors. (Joe Eykholt assist)
*) Convert lio-target to use libcrypto crc32c
*) Add support to LIO-Target for SSE v4.2 (Nehalem) CRC32C offload instruction
(Mike Christie assist)
*) Add support to LIO-Target for per iSCSI connection CPU scheduling affinity
(Phillip Reisner assist)
*) Convert TCM Core to use include/linux/dma-mapping.h:enum dma_data_direction
(Boaz Harrosh assist)
*) Add support for BIDI Commands and XDWRITE_READ_10 emulation (Boaz Harrosh assist)
*) Add support for native 32-bit CDBs VARIABLE_LENGTH_CMD support and
XDWRITE_READ_32 emulation (James Bottomley and Martin Petersen assist)

The shortlog and diffstat have been attached below for reference.

And a final thanks to the folks who contributed minor patches and/or comments, but where
not mentioned above.

Thank you!

--nab

Joe Eykholt (4):
tcm_fc: handle new ft_recv interface from libfc
tcm_fc: add missing method for tpg_check_prod_mode_write_protect
tcm_fc: se_sess->se_acl not set
tcm_fc: fix cmd leak

Nicholas Bellinger (63):
tcm/pscsi: Convert struct bio->bi_rw assignment to use REQ_WRITE
tcm/fileio: Bump version to v4.0
tcm: Remove copyright info from includes
tcm: Update copyright information
tcm_fc: Fix build failure with gcc 4.3.2
tcm_fc: fix misuse of kunmap_atomic()
tcm_fc: Change version to 0.3
tcm_loop: Drop host_lock around struct scsi_cmnd->scsi_done()
tcm: Add support for Extended INQUIRY Data VPD Page
tcm: Remove legacy struct se_lun->lun_type usage
tcm: Remove legacy DEV_STATUS_THR_* defines
tcm: Convert TCM base defines to enums, round 1
tcm: Convert NAF_DYNAMIC_NODE_ACL to struct
se_node_acl->dynamic_node_acl bitfield
tcm: Convert MAP_SG_KMAP to struct se_map_sg->sg_kmap_active bitfield
tcm: Convert TCM base defines to enums, round 2:
tcm: Convert DEF_PR_REGISTERED to struct
se_dev_entry->def_pr_registered bitfield
tcm: Convert PRF_ISID_PRESENT_AT_REG to struct
t10_pr_registration->isid_present_at_reg bitfield
tcm: Convert struct se_cmd->scsi_sense_reason enum and add TCM_*
prefix
tcm: Add comments for t10_alua_index_t, t10_task_attr_index_t and
t10_reservations_index_t
tcm/pr: Add proper comment for struct
t10_reservation_template->pr_res_holder
tcm/alua: Move (*t10_*)() callers into struct t10_reservation_ops
tcm: Cleanups for struct se_transport_task usage
tcm: Add support for TRANSPORT_NEW_CMD_MAP
tcm: Add support for struct target_core_fabric_ops->task_sg_chaining
tcm/ramdisk: Add special case for TFO->task_sg_chaining=1 with
RAMDISK_DR
tcm: Convert struct se_node_acl->device_list_lock to spin_*lock_irq()
tcm: Convert struct se_device->dev_status_lock to spin_*lock_irq()
tcm_loop: Convert to use new optimized TFO->new_cmd_map() caller
tcm_loop: Convert to using root_device_register() and
root_device_unregister()
tcm_loop: Use IS_ERR() conditional for root_device_register()
tcm: Move remaining structure member related defs into related
structures
tcm: Add enum names and comments to target_core_base.h
tcm/alua: Cleanups for target_core_alua.c
tcm: Convert to cpu_relax() for atomic_read() in tight loops
tcm: Add support for fabric module provided struct se_cmd descriptors
tcm_loop: Convert to pre-allocated struct se_cmd descriptors
lio-target: Convert to use pre-allocated struct se_cmd descriptors
tcm_fc: Convert to use pre-allocated struct se_cmd descriptors
lio-target: Convert to use libcrypto crc32c
lio-target: Add support for Intel Nehalem crc32-intel libcrypto
offload
lio-target: Convert to use bitmap for handling thread_id allocation
lio-target: Add support for per iSCSI connection CPU scheduling
affinity
tcm: Convert SE_DIRECTION_* to use enum dma_data_direction
tcm_loop: Convert to use enum dma_data_direction
tcm_fc: Convert to use enum dma_data_direction
lio-target: Convert ISCSI_* data_direction macros to enum
dma_data_direction
tcm: Convert handful of target_core_base.h structure members to enums
tcm: Convert to use include/scsi/scsi_cmnd.h:MAX_COMMAND_SIZE
tcm: Update TRANSPORT_SENSE_BUFFER define comment
tcm: Fix TRANSPORT_NEW_CMD_MAP failure case
tcm_loop: Fix tcm_loop_new_cmd_map() failure return values
tcm_loop: Fix TMR release patch OOPS
tcm: Add support for BIDI operation and XDWRITE_READ_10 emulation
tcm_loop: Add DMA_BIDIRECTIONAL CDB support
tcm_loop: Remove BUGs() from I_T Nexus fallback code
tcm: Remove DMA_BIDIRECTIONAL for BIDI-COMMANDS
tcm_loop: Remove DMA_BIDIRECTIONAL usage for BIDI-COMMANDS
tcm: Rename transport_xor_callback() to transport_complete_callback()
lio-target: Enable crc32c_x86_offload=1 by default
lio-target: Fix comment for TA_CRC32C_X86_OFFLOAD
tcm: Add native 32-byte CDB support
tcm: Add VARIABLE_LENGTH_CMD support w/ XDWRITE_READ_32 emulation
tcm_loop: Enable 32-byte CDB support in virtual SCSI LLD

drivers/target/lio-target/Kbuild | 1 -
drivers/target/lio-target/iscsi_crc.c | 171 ----
drivers/target/lio-target/iscsi_crc.h | 9 -
drivers/target/lio-target/iscsi_target.c | 453 ++++++++---
drivers/target/lio-target/iscsi_target.h | 1 +
drivers/target/lio-target/iscsi_target_configfs.c | 6 +
drivers/target/lio-target/iscsi_target_core.h | 40 +-
drivers/target/lio-target/iscsi_target_erl0.c | 4 +-
drivers/target/lio-target/iscsi_target_erl1.c | 15 +-
drivers/target/lio-target/iscsi_target_erl2.c | 3 +-
drivers/target/lio-target/iscsi_target_login.c | 99 +++-
drivers/target/lio-target/iscsi_target_login.h | 1 +
drivers/target/lio-target/iscsi_target_mib.c | 6 +-
drivers/target/lio-target/iscsi_target_nego.c | 18 +-
drivers/target/lio-target/iscsi_target_tmr.c | 36 +-
drivers/target/lio-target/iscsi_target_tpg.c | 19 +
drivers/target/lio-target/iscsi_target_tpg.h | 1 +
drivers/target/lio-target/iscsi_target_util.c | 56 +-
drivers/target/lio-target/iscsi_thread_queue.c | 58 ++-
drivers/target/lio-target/iscsi_thread_queue.h | 5 +
drivers/target/target_core_alua.c | 133 ++--
drivers/target/target_core_alua.h | 14 +-
drivers/target/target_core_configfs.c | 8 +-
drivers/target/target_core_device.c | 133 ++--
drivers/target/target_core_fabric_configfs.c | 8 +-
drivers/target/target_core_fabric_lib.c | 5 +-
drivers/target/target_core_file.c | 6 +-
drivers/target/target_core_file.h | 34 +-
drivers/target/target_core_hba.c | 4 +-
drivers/target/target_core_hba.h | 29 -
drivers/target/target_core_iblock.c | 8 +-
drivers/target/target_core_iblock.h | 29 +-
drivers/target/target_core_mib.c | 38 +-
drivers/target/target_core_mib.h | 26 -
drivers/target/target_core_pr.c | 53 +-
drivers/target/target_core_pscsi.c | 21 +-
drivers/target/target_core_pscsi.h | 32 +-
drivers/target/target_core_rd.c | 55 +-
drivers/target/target_core_rd.h | 32 +-
drivers/target/target_core_scdb.c | 42 +-
drivers/target/target_core_scdb.h | 31 +-
drivers/target/target_core_stgt.c | 4 +-
drivers/target/target_core_stgt.h | 30 +-
drivers/target/target_core_tmr.c | 4 +-
drivers/target/target_core_tpg.c | 64 +-
drivers/target/target_core_transport.c | 909 ++++++++++++++++-----
drivers/target/target_core_ua.c | 24 +-
drivers/target/tcm_fc/tcm_fc.h | 8 +-
drivers/target/tcm_fc/tfc_cmd.c | 137 ++--
drivers/target/tcm_fc/tfc_conf.c | 13 +-
drivers/target/tcm_fc/tfc_io.c | 29 +-
drivers/target/tcm_fc/tfc_sess.c | 15 +-
drivers/target/tcm_loop/tcm_loop_configfs.c | 35 +-
drivers/target/tcm_loop/tcm_loop_core.h | 12 +-
drivers/target/tcm_loop/tcm_loop_fabric.c | 91 +--
drivers/target/tcm_loop/tcm_loop_fabric.h | 2 -
drivers/target/tcm_loop/tcm_loop_fabric_scsi.c | 243 +++----
drivers/target/tcm_loop/tcm_loop_fabric_scsi.h | 2 +-
include/target/target_core_base.h | 475 ++++++-----
include/target/target_core_configfs.h | 27 -
include/target/target_core_device.h | 28 -
include/target/target_core_fabric_ops.h | 12 +
include/target/target_core_tpg.h | 34 +-
include/target/target_core_transport.h | 47 +-
64 files changed, 2200 insertions(+), 1788 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/


投稿者 xml-rpc : 2010年9月18日 05:22
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/98437
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。