Lines Matching refs:lreq

79           struct linux_sg_io_hdr lreq;  in linux_ioctl_sg()  local
96 error = copyin(SCARG(uap, data), &lreq, sizeof(lreq)); in linux_ioctl_sg()
103 dump_sg_io(&lreq); in linux_ioctl_sg()
106 switch (lreq.dxfer_direction) { in linux_ioctl_sg()
115 lreq.dxfer_direction)); in linux_ioctl_sg()
119 if (lreq.iovec_count != 0) { in linux_ioctl_sg()
126 if (lreq.cmd_len > sizeof(req.cmd)) { in linux_ioctl_sg()
127 DPRINTF(("invalid command length %d\n", lreq.cmd_len)); in linux_ioctl_sg()
132 error = copyin(lreq.cmdp, req.cmd, lreq.cmd_len); in linux_ioctl_sg()
138 req.timeout = lreq.timeout; in linux_ioctl_sg()
139 req.cmdlen = lreq.cmd_len; in linux_ioctl_sg()
140 req.datalen = lreq.dxfer_len; in linux_ioctl_sg()
141 req.databuf = lreq.dxferp; in linux_ioctl_sg()
152 if (req.senselen > lreq.mx_sb_len) in linux_ioctl_sg()
153 req.senselen = lreq.mx_sb_len; in linux_ioctl_sg()
154 lreq.sb_len_wr = req.senselen; in linux_ioctl_sg()
155 error = copyout(req.sense, lreq.sbp, req.senselen); in linux_ioctl_sg()
161 lreq.sb_len_wr = 0; in linux_ioctl_sg()
164 lreq.status = req.status; in linux_ioctl_sg()
165 lreq.masked_status = 0; /* XXX */ in linux_ioctl_sg()
166 lreq.host_status = bsd_to_linux_host_status(req.retsts); in linux_ioctl_sg()
167 lreq.sb_len_wr = req.datalen_used; in linux_ioctl_sg()
168 lreq.driver_status = bsd_to_linux_driver_status(req.error); in linux_ioctl_sg()
169 lreq.resid = req.datalen - req.datalen_used; in linux_ioctl_sg()
170 lreq.duration = req.timeout; /* XXX */ in linux_ioctl_sg()
171 lreq.info = 0; /* XXX */ in linux_ioctl_sg()
172 error = copyout(&lreq, SCARG(uap, data), sizeof(lreq)); in linux_ioctl_sg()