• Olaf Kirch's avatar
    [SCSI] libiscsi, iscsi_tcp: iscsi pool cleanup · 6320377f
    Olaf Kirch authored
    iscsi_pool_init simplified
    
    iscsi_pool_init currently has a lot of duplicate kfree() calls it does
    when some allocation fails. This patch simplifies the code a little by
    using iscsi_pool_free to tear down the pool in case of an error.
    
    iscsi_pool_init also returns a copy of the item array to the caller.
    Not all callers use this array, so we make it optional.
    
    Instead of allocating a second array and return that, allocate just one
    array, of twice the size.
    
    Update users of iscsi_pool_{init,free}
    
    This patch drops the (now useless) second argument to
    iscsi_pool_free, and updates all callers.
    
    It also removes the ctask->r2ts array, which was never
    used anyway. Since the items argument to iscsi_pool_init
    is now optional, we can pass NULL instead.
    Signed-off-by: default avatarOlaf Kirch <olaf.kirch@oracle.com>
    Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    6320377f
libiscsi.c 59.5 KB