diff options
author | Alexander Motin <mav@FreeBSD.org> | 2012-07-24 13:08:43 +0000 |
---|---|---|
committer | Alexander Motin <mav@FreeBSD.org> | 2012-07-24 13:08:43 +0000 |
commit | 262b5c50db097ca3f0830b34c8a41bd6bccaaf6b (patch) | |
tree | 036fe5b33d254c7d96b8c95712af7b4d261a0227 /sys/cam/scsi/scsi_enc_ses.c | |
parent | 2cba1ccd0ecb54e0273e8c48b522686219604d5f (diff) | |
download | src-262b5c50db097ca3f0830b34c8a41bd6bccaaf6b.tar.gz src-262b5c50db097ca3f0830b34c8a41bd6bccaaf6b.zip |
Do not call ses_softc_cleanup() in case of configuration read failure.
Just free inclomplete daemon cache instead to let it retry next time.
Premature ses_softc_cleanup() caused NULL dereference when freed softc
was accessed later.
Notes
Notes:
svn path=/head/; revision=238739
Diffstat (limited to 'sys/cam/scsi/scsi_enc_ses.c')
-rw-r--r-- | sys/cam/scsi/scsi_enc_ses.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/cam/scsi/scsi_enc_ses.c b/sys/cam/scsi/scsi_enc_ses.c index 9b6fba30242a..14c51fbd115e 100644 --- a/sys/cam/scsi/scsi_enc_ses.c +++ b/sys/cam/scsi/scsi_enc_ses.c @@ -1473,7 +1473,7 @@ ses_process_config(enc_softc_t *enc, struct enc_fsm_state *state, out: if (err) - ses_softc_cleanup(enc); + ses_cache_free(enc, enc_cache); else { enc_update_request(enc, SES_UPDATE_GETSTATUS); enc_update_request(enc, SES_UPDATE_GETELMDESCS); |