From: Peter Avalos Date: Thu, 29 Nov 2007 03:57:25 +0000 (+0000) Subject: Fixing a memory leak in xpt_release_device(). X-Git-Tag: v2.0.1~1710 X-Git-Url: https://gitweb.dragonflybsd.org/dragonfly.git/commitdiff_plain/3e151fffa2d90071fe2410b9938a30eea6000f1c Fixing a memory leak in xpt_release_device(). Obtained-from: FreeBSD --- diff --git a/sys/bus/cam/cam_xpt.c b/sys/bus/cam/cam_xpt.c index 9882c0b7b6..df6f64ea15 100644 --- a/sys/bus/cam/cam_xpt.c +++ b/sys/bus/cam/cam_xpt.c @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * $FreeBSD: src/sys/cam/cam_xpt.c,v 1.80.2.18 2002/12/09 17:31:55 gibbs Exp $ - * $DragonFly: src/sys/bus/cam/cam_xpt.c,v 1.52 2007/11/29 03:40:09 pavalos Exp $ + * $DragonFly: src/sys/bus/cam/cam_xpt.c,v 1.53 2007/11/29 03:57:25 pavalos Exp $ */ #include #include @@ -4931,6 +4931,8 @@ xpt_release_device(struct cam_eb *bus, struct cam_et *target, /* Release our slot in the devq */ devq = bus->sim->devq; cam_devq_resize(devq, devq->alloc_queue.array_size - 1); + camq_fini(&device->drvq); + camq_fini(&device->ccbq.queue); xpt_release_target(bus, target); KKASSERT(device->refcount == 1); kfree(device, M_DEVBUF);