Lines Matching refs:iocommand
6270 IOCTL_Command_struct iocommand; in hpsa_passthru_ioctl() local
6280 if (copy_from_user(&iocommand, argp, sizeof(iocommand))) in hpsa_passthru_ioctl()
6282 if ((iocommand.buf_size < 1) && in hpsa_passthru_ioctl()
6283 (iocommand.Request.Type.Direction != XFER_NONE)) { in hpsa_passthru_ioctl()
6286 if (iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6287 buff = kmalloc(iocommand.buf_size, GFP_KERNEL); in hpsa_passthru_ioctl()
6290 if (iocommand.Request.Type.Direction & XFER_WRITE) { in hpsa_passthru_ioctl()
6292 if (copy_from_user(buff, iocommand.buf, in hpsa_passthru_ioctl()
6293 iocommand.buf_size)) { in hpsa_passthru_ioctl()
6298 memset(buff, 0, iocommand.buf_size); in hpsa_passthru_ioctl()
6308 if (iocommand.buf_size > 0) { /* buffer to fill */ in hpsa_passthru_ioctl()
6315 memcpy(&c->Header.LUN, &iocommand.LUN_info, sizeof(c->Header.LUN)); in hpsa_passthru_ioctl()
6318 memcpy(&c->Request, &iocommand.Request, in hpsa_passthru_ioctl()
6322 if (iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6324 iocommand.buf_size, PCI_DMA_BIDIRECTIONAL); in hpsa_passthru_ioctl()
6332 c->SG[0].Len = cpu_to_le32(iocommand.buf_size); in hpsa_passthru_ioctl()
6337 if (iocommand.buf_size > 0) in hpsa_passthru_ioctl()
6346 memcpy(&iocommand.error_info, c->err_info, in hpsa_passthru_ioctl()
6347 sizeof(iocommand.error_info)); in hpsa_passthru_ioctl()
6348 if (copy_to_user(argp, &iocommand, sizeof(iocommand))) { in hpsa_passthru_ioctl()
6352 if ((iocommand.Request.Type.Direction & XFER_READ) && in hpsa_passthru_ioctl()
6353 iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6355 if (copy_to_user(iocommand.buf, buff, iocommand.buf_size)) { in hpsa_passthru_ioctl()