• Jean Delvare's avatar
    [SCSI] libiscsi: fix iscsi pool error path · fd6e1c14
    Jean Delvare authored
    Le lundi 30 mars 2009, Chris Wright a écrit :
    > q->queue could be ERR_PTR(-ENOMEM) which will break unwinding
    > on error.  Make iscsi_pool_free more defensive.
    >
    
    Making the freeing of q->queue dependent on q->pool being set looks
    really weird (although it is correct at the moment. But this seems
    to be fixable in a much simpler way.
    
    With the benefit that only the error case is slowed down. In both
    cases we have a problem if q->queue contains an error value but it's
    not -ENOMEM. Apparently this can't happen today, but it doesn't feel
    right to assume this will always be true. Maybe it's the right time
    to fix this as well.
    Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    fd6e1c14
libiscsi.c 76.9 KB