summaryrefslogtreecommitdiffstats
path: root/sys/dev/ida
diff options
context:
space:
mode:
authormdodd <mdodd@FreeBSD.org>2005-04-13 17:39:43 +0000
committermdodd <mdodd@FreeBSD.org>2005-04-13 17:39:43 +0000
commit85b1360c6c6e0b111609983486100661e724c763 (patch)
treeb4dc0c133e4126a7f0d68063cbf6a2132185207d /sys/dev/ida
parent064ba2accd4a905f59182d06ebe707b9da9c1c08 (diff)
downloadFreeBSD-src-85b1360c6c6e0b111609983486100661e724c763.zip
FreeBSD-src-85b1360c6c6e0b111609983486100661e724c763.tar.gz
Test for NULL before use.
Submitted by: sam (Coverity)
Diffstat (limited to 'sys/dev/ida')
-rw-r--r--sys/dev/ida/ida.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/sys/dev/ida/ida.c b/sys/dev/ida/ida.c
index bfb2c03..cd3a95f 100644
--- a/sys/dev/ida/ida.c
+++ b/sys/dev/ida/ida.c
@@ -80,21 +80,20 @@ ida_free(struct ida_softc *ida)
callout_stop(&ida->ch);
- for (i = 0; i < ida->num_qcbs; i++)
- bus_dmamap_destroy(ida->buffer_dmat, ida->qcbs[i].dmamap);
-
- if (ida->hwqcb_busaddr)
- bus_dmamap_unload(ida->hwqcb_dmat, ida->hwqcb_dmamap);
-
- if (ida->hwqcbs)
- bus_dmamem_free(ida->hwqcb_dmat, ida->hwqcbs,
- ida->hwqcb_dmamap);
-
- if (ida->buffer_dmat)
+ if (ida->buffer_dmat) {
+ for (i = 0; i < ida->num_qcbs; i++)
+ bus_dmamap_destroy(ida->buffer_dmat, ida->qcbs[i].dmamap);
bus_dma_tag_destroy(ida->buffer_dmat);
+ }
- if (ida->hwqcb_dmat)
+ if (ida->hwqcb_dmat) {
+ if (ida->hwqcb_busaddr)
+ bus_dmamap_unload(ida->hwqcb_dmat, ida->hwqcb_dmamap);
+ if (ida->hwqcbs)
+ bus_dmamem_free(ida->hwqcb_dmat, ida->hwqcbs,
+ ida->hwqcb_dmamap);
bus_dma_tag_destroy(ida->hwqcb_dmat);
+ }
if (ida->qcbs != NULL)
free(ida->qcbs, M_DEVBUF);
OpenPOWER on IntegriCloud