• M
    [SCSI] libiscsi_tcp: update recv tracking for each skb instead of iscsi pdu · d1acfae5
    Mike Christie 提交于
    Everytime we read in a pdu libiscsi will update a tracking field.
    It uses this to decide when to check if the transport might be bad.
    If we have not got data in recv_timeout seconds then we will
    send a iscsi ping/nop.
    
    If we are on a slow link then it could take a while to read in all
    the data for a data_in. In that case we might send a ping/nop when
    we do not need to or we might drop a session thinking it is bad
    when the lower layer is making forward progress on it.
    
    This patch has libiscsi_tcp update the recv tracking for each skb
    (basically network packet from our point of view) instead of the
    entire iscsi pdu+data, so we account for these cases where data is
    coming in slowly.
    Signed-off-by: NMike Christie <michaelc@cs.wisc.edu>
    Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
    d1acfae5
libiscsi_tcp.c 31.8 KB