• Herton Ronaldo Krzesinski's avatar
    [SCSI] advansys: fix regression with request_firmware change · cf747445
    Herton Ronaldo Krzesinski authored
    On newer kernels users of advansys module are reporting system hang when
    trying to load it without firmware files present. After looking closely
    at description on https://qa.mandriva.com/show_bug.cgi?id=53220, I think
    this is related to commit "[SCSI] advansys: use request_firmware". The
    problem is that after switch to request_firmware, asc_dvc->err_code
    isn't being set when firmware files aren't found or loading fails.
    
    err_code is used by the driver to judge if there was a fatal error or
    not, as can be seen for example on advansys_board_found, which will only
    return -ENODEV when err_code is set. Because err_code isn't being set
    when request_firmware fails, this is a change of behaviour of the code
    before request_firmware addition, making it continue to load and it
    fails later as the firmware wasn't really loaded.
    Signed-off-by: default avatarHerton Ronaldo Krzesinski <herton@mandriva.com.br>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@suse.de>
    cf747445
advansys.c 374 KB