aboutsummaryrefslogtreecommitdiff
path: root/sys/cam
diff options
context:
space:
mode:
authorEdward Tomasz Napierala <trasz@FreeBSD.org>2009-01-23 21:08:00 +0000
committerEdward Tomasz Napierala <trasz@FreeBSD.org>2009-01-23 21:08:00 +0000
commitaac35298e695988cf6468e73cde550e587ea32ba (patch)
treea3a60d1637318caa497c59c1b6d947c5689825f5 /sys/cam
parent041361d899894e33f251f7c70314818894fbfe85 (diff)
Notes
Diffstat (limited to 'sys/cam')
-rw-r--r--sys/cam/cam_xpt.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c
index 112476b93c52..4bf3338b7a54 100644
--- a/sys/cam/cam_xpt.c
+++ b/sys/cam/cam_xpt.c
@@ -5194,6 +5194,11 @@ xpt_scan_bus(struct cam_periph *periph, union ccb *request_ccb)
/* Save some state for use while we probe for devices */
scan_info = (xpt_scan_bus_info *)
malloc(sizeof(xpt_scan_bus_info), M_CAMXPT, M_NOWAIT);
+ if (scan_info == NULL) {
+ request_ccb->ccb_h.status = CAM_RESRC_UNAVAIL;
+ xpt_done(request_ccb);
+ return;
+ }
scan_info->request_ccb = request_ccb;
scan_info->cpi = &work_ccb->cpi;