Release memory resource on cuda driver attach failure.

Submitted by:	Dmitry Luhtionov <dmitryluhtionov@gmail.com>
This commit is contained in:
Alexander Motin 2018-04-19 15:29:10 +00:00
parent 179b21e8b1
commit 596e6ade92
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=332779

View file

@ -165,12 +165,16 @@ cuda_attach(device_t dev)
RF_ACTIVE);
if (sc->sc_irq == NULL) {
device_printf(dev, "could not allocate interrupt\n");
bus_release_resource(dev, SYS_RES_MEMORY, sc->sc_memrid,
sc->sc_memr);
return (ENXIO);
}
if (bus_setup_intr(dev, sc->sc_irq, INTR_TYPE_MISC | INTR_MPSAFE
| INTR_ENTROPY, NULL, cuda_intr, dev, &sc->sc_ih) != 0) {
device_printf(dev, "could not setup interrupt\n");
bus_release_resource(dev, SYS_RES_MEMORY, sc->sc_memrid,
sc->sc_memr);
bus_release_resource(dev, SYS_RES_IRQ, sc->sc_irqrid,
sc->sc_irq);
return (ENXIO);