diff options
author | mjacob <mjacob@FreeBSD.org> | 2010-05-25 20:19:45 +0000 |
---|---|---|
committer | mjacob <mjacob@FreeBSD.org> | 2010-05-25 20:19:45 +0000 |
commit | fd1b90e890d4acaa91139d5635282fcd1406eeec (patch) | |
tree | 64f954ff2531e4eb7c32852e26e0cc0a2c36aee1 /sys/dev/isp | |
parent | f57b5cd0bcaca7784f4a14b22ef42e55919d774d (diff) | |
download | FreeBSD-src-fd1b90e890d4acaa91139d5635282fcd1406eeec.zip FreeBSD-src-fd1b90e890d4acaa91139d5635282fcd1406eeec.tar.gz |
Don't leak CCBs for every ABORT.
Submitted by: Ken Merry
MFC after: One week
Diffstat (limited to 'sys/dev/isp')
-rw-r--r-- | sys/dev/isp/isp_freebsd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/isp/isp_freebsd.c b/sys/dev/isp/isp_freebsd.c index ff5c589..a991df6 100644 --- a/sys/dev/isp/isp_freebsd.c +++ b/sys/dev/isp/isp_freebsd.c @@ -4421,7 +4421,10 @@ isp_action(struct cam_sim *sim, union ccb *ccb) ccb->ccb_h.status = CAM_REQ_INVALID; break; } - xpt_done(ccb); + /* + * This is not a queued CCB, so the caller expects it to be + * complete when control is returned. + */ break; } #define IS_CURRENT_SETTINGS(c) (c->type == CTS_TYPE_CURRENT_SETTINGS) |