From dd3928f816b8d87f7ecc81d6ec1eec1257ed0cda Mon Sep 17 00:00:00 2001 From: Hans Rosenfeld Date: Thu, 18 Sep 2014 14:20:00 +0200 Subject: [PATCH] 5182 use after free in blkdev Reviewed by: Marcel Telka Reviewed by: Igor Kozhukhov Reviewed by: Josef 'Jeff' Sipek Reviewed by: Garrett D'Amore Approved by: Dan McDonald --- usr/src/uts/common/io/blkdev/blkdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr/src/uts/common/io/blkdev/blkdev.c b/usr/src/uts/common/io/blkdev/blkdev.c index a34aec9fdd..bd31589e56 100644 --- a/usr/src/uts/common/io/blkdev/blkdev.c +++ b/usr/src/uts/common/io/blkdev/blkdev.c @@ -1311,7 +1311,6 @@ bd_sched(bd_t *bd) rv = xi->i_func(bd->d_private, &xi->i_public); if (rv != 0) { bp = xi->i_bp; - bd_xfer_free(xi); bioerror(bp, rv); biodone(bp); @@ -1319,6 +1318,7 @@ bd_sched(bd_t *bd) bd->d_qactive--; kstat_runq_exit(bd->d_kiop); list_remove(&bd->d_runq, xi); + bd_xfer_free(xi); } else { mutex_enter(&bd->d_iomutex); } -- 2.11.4.GIT