mapinfo
struct cam_periph_map_info mapinfo;
bzero(&mapinfo, sizeof(mapinfo));
error = cam_periph_mapmem(ccb, &mapinfo, maxphys);
return (cam_periph_unmapmem(ccb, &mapinfo));
struct cam_periph_map_info mapinfo;
bzero(&mapinfo, sizeof(mapinfo));
error = cam_periph_mapmem(ccb, &mapinfo, maxphys);
error = cam_periph_unmapmem(ccb, &mapinfo);
cam_periph_unmapmem(union ccb *ccb, struct cam_periph_map_info *mapinfo)
if (mapinfo->num_bufs_used <= 0) {
if (mapinfo->bp[i]) {
vunmapbuf(mapinfo->bp[i]);
uma_zfree(pbuf_zone, mapinfo->bp[i]);
error1 = copyout(*data_ptrs[i], mapinfo->orig[i],
*data_ptrs[i] = mapinfo->orig[i];
cam_periph_mapmem(union ccb *ccb, struct cam_periph_map_info *mapinfo,
bzero(mapinfo, sizeof(*mapinfo));
mapinfo->orig[i] = *data_ptrs[i];
if (copyin(mapinfo->orig[i], *data_ptrs[i],
*data_ptrs[i] = mapinfo->orig[i];
mapinfo->bp[i] = uma_zalloc(pbuf_zone, M_WAITOK);
mapinfo->bp[i]->b_iocmd = (dirs[i] == CAM_DIR_OUT) ?
if (vmapbuf(mapinfo->bp[i], *data_ptrs[i], lengths[i], 1) < 0) {
uma_zfree(pbuf_zone, mapinfo->bp[i]);
*data_ptrs[i] = mapinfo->bp[i]->b_data;
if (mapinfo->bp[i])
BUF_KERNPROC(mapinfo->bp[i]);
mapinfo->num_bufs_used = numbufs;
if (mapinfo->bp[i]) {
vunmapbuf(mapinfo->bp[i]);
uma_zfree(pbuf_zone, mapinfo->bp[i]);
*data_ptrs[i] = mapinfo->orig[i];
struct cam_periph_map_info *mapinfo,
struct cam_periph_map_info *mapinfo);
struct cam_periph_map_info mapinfo;
bzero(&mapinfo, sizeof(mapinfo));
error = cam_periph_mapmem(inccb, &mapinfo, maxphys);
error = cam_periph_unmapmem(inccb, &mapinfo);
struct cam_periph_map_info mapinfo;
memset(&mapinfo, 0, sizeof(mapinfo));
error = cam_periph_mapmem(ccb, &mapinfo, maxmap);
error = cam_periph_unmapmem(ccb, &mapinfo);
struct cam_periph_map_info mapinfo;
io_req->mapinfo.num_bufs_used = 0;
struct cam_periph_map_info mapinfo;
bzero(&mapinfo, sizeof(mapinfo));
error = cam_periph_mapmem(ccb, &mapinfo, softc->maxio);
mapinfo.num_bufs_used = 0;
error = cam_periph_unmapmem(ccb, &mapinfo);
struct cam_periph_map_info mapinfo;
bzero(&mapinfo, sizeof(mapinfo));
error = cam_periph_mapmem(ccb, &mapinfo, softc->maxio);
error1 = cam_periph_unmapmem(ccb, &mapinfo);
descr->mapinfo.num_bufs_used = 0;
struct cam_periph_map_info mapinfo;
struct cam_periph_map_info *mapinfo;
mapinfo = &descr->mapinfo;
mapinfo->num_bufs_used = 0;
error = cam_periph_mapmem(ccb, mapinfo, softc->maxio);
mapinfo->num_bufs_used = 0;
if (descr->mapinfo.num_bufs_used != 0) {
error1 = cam_periph_unmapmem(ccb, &descr->mapinfo);
int mapprint(struct mapinfo *, off_t, off_t);
int maparound(struct mapinfo *, off_t);
struct mapinfo map;
mapprint(struct mapinfo *mip, off_t startoff, off_t len)
maparound(struct mapinfo *mip, off_t offset)
struct mapinfo map;