• James Bottomley's avatar
    [SCSI] transport_class: BUG if we can't release the attribute container · 2f3edc69
    James Bottomley authored
    Every current transport class calls transport_container_release but
    ignores the return value.  This is catastrophic if it returns an error
    because the containers are part of a global list and the next action of
    almost every transport class is to free the memory used by the
    container.
    
    Fix this by making transport_container_release a void, but making it BUG
    if attribute_container_release returns an error ... this catches the
    root cause of a system panic much earlier.  If we don't do this, we get
    an eventual BUG when the attribute container list notices the corruption
    caused by the freed memory it's still referencing.
    
    Also made attribute_container_release __must_check as a reminder.
    
    Cc: Greg KH <greg@kroah.com>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    2f3edc69
raid_class.c 7.71 KB