Ben Hutchings wrote: > request_firmware() may sleep and it appears to be safe to release the > spinlock here. > > Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxx > --- > This change was made in Debian kernel packages to address this bug > report: <http://bugs.debian.org/543244>. We have applied it to 2.6.31 > and 2.6.32 and there have been no further bug reports on this driver. > > Ben. > > drivers/scsi/qla1280.c | 4 ++++ > 1 files changed, 4 insertions(+), 0 deletions(-) > > diff --git a/drivers/scsi/qla1280.c b/drivers/scsi/qla1280.c > index 8371d91..49ac414 100644 > --- a/drivers/scsi/qla1280.c > +++ b/drivers/scsi/qla1280.c > @@ -1640,8 +1640,10 @@ qla1280_load_firmware_pio(struct scsi_qla_host *ha) I think that those request_firmware stuff together with it's error handling should be moved from qla1280_load_firmware_pio() and qla1280_load_firmware_dma() to qla1280_load_firmware(). Although the firmware version in the driver struct is updated before it is updated, which may still fail. In that case it is not set back to the old value. I don't know if that is a problem at all, that's just what I saw on a quick look. Eike
Attachment:
signature.asc
Description: This is a digitally signed message part.