Initialize async_arg_ptr in xpt_async when called with async_code
AC_ADVINFO_CHANGED. Without this change, newly inserted hard disks won't always have their physical path device nodes created. The problem reproduces most readily when attaching a large number of disks at once. Differential Revision: https://reviews.freebsd.org/D2290 Reviewed by: mav, imp MFC after: 2 weeks Sponsored by: Spectra Logic
This commit is contained in:
parent
cb4c6b9356
commit
4cf0410ad1
@ -4264,8 +4264,10 @@ xpt_async(u_int32_t async_code, struct cam_path *path, void *async_arg)
|
||||
}
|
||||
memcpy(ccb->casync.async_arg_ptr, async_arg, size);
|
||||
ccb->casync.async_arg_size = size;
|
||||
} else if (size < 0)
|
||||
} else if (size < 0) {
|
||||
ccb->casync.async_arg_ptr = async_arg;
|
||||
ccb->casync.async_arg_size = size;
|
||||
}
|
||||
if (path->device != NULL && path->device->lun_id != CAM_LUN_WILDCARD)
|
||||
xpt_freeze_devq(path, 1);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user