diff options
author | ken <ken@FreeBSD.org> | 1998-10-13 21:29:04 +0000 |
---|---|---|
committer | ken <ken@FreeBSD.org> | 1998-10-13 21:29:04 +0000 |
commit | cdb18fc927f44d49a4444febb4930ffa80075136 (patch) | |
tree | 9065b560a3dcff674965f758b46b607d73eb894b /sys/cam | |
parent | 41bc0045ac971abbf4f54806f5f78e9e3fa6cd2c (diff) | |
download | FreeBSD-src-cdb18fc927f44d49a4444febb4930ffa80075136.zip FreeBSD-src-cdb18fc927f44d49a4444febb4930ffa80075136.tar.gz |
Fix a bug in the scan lun code that showed up when we did the following
sequence of things:
- spin up a disk
- send an async event to refresh the inquiry data
- run through xpt_scan_lun() to re-probe the device
- eventually finish the probe, but panic in xpt_done() because the
periph pointer wasn't set.
Reviewed by: gibbs
Reported by: Philippe Regnauld <regnauld@deepo.prosa.dk>
Diffstat (limited to 'sys/cam')
-rw-r--r-- | sys/cam/cam_xpt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index 6a42588..e941b62 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: cam_xpt.c,v 1.18 1998/10/10 21:10:36 gibbs Exp $ + * $Id: cam_xpt.c,v 1.19 1998/10/12 21:54:13 ken Exp $ */ #include <sys/param.h> #include <sys/systm.h> @@ -4745,7 +4745,8 @@ xpt_scan_lun(struct cam_periph *periph, struct cam_path *path, free(request_ccb, M_TEMP); return; } - status = xpt_compile_path(new_path, periph, path->bus->path_id, + status = xpt_compile_path(new_path, xpt_periph, + path->bus->path_id, path->target->target_id, path->device->lun_id); |