• Nicholas Bellinger's avatar
    target: Add transport_reset_sgl_orig() for COMPARE_AND_WRITE · 47e459e6
    Nicholas Bellinger authored
    After COMPARE_AND_WRITE completes it's comparision, the WRITE
    payload SGLs head expect to be updated to point from the verify
    instance of user data, to the write instance of user data.
    
    So for this special case, add transport_reset_sgl_orig() usage
    within transport_free_pages() and add se_cmd->t_data_[sg,nents]_orig
    members to save the original assignments.
    
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Hannes Reinecke <hare@suse.de>
    Cc: Martin Petersen <martin.petersen@oracle.com>
    Cc: Chris Mason <chris.mason@fusionio.com>
    Cc: James Bottomley <JBottomley@Parallels.com>
    Cc: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: default avatarNicholas Bellinger <nab@daterainc.com>
    47e459e6
target_core_transport.c 80 KB