Lines Matching refs:iocommand
6342 IOCTL_Command_struct iocommand; in hpsa_passthru_ioctl() local
6352 if (copy_from_user(&iocommand, argp, sizeof(iocommand))) in hpsa_passthru_ioctl()
6354 if ((iocommand.buf_size < 1) && in hpsa_passthru_ioctl()
6355 (iocommand.Request.Type.Direction != XFER_NONE)) { in hpsa_passthru_ioctl()
6358 if (iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6359 buff = kmalloc(iocommand.buf_size, GFP_KERNEL); in hpsa_passthru_ioctl()
6362 if (iocommand.Request.Type.Direction & XFER_WRITE) { in hpsa_passthru_ioctl()
6364 if (copy_from_user(buff, iocommand.buf, in hpsa_passthru_ioctl()
6365 iocommand.buf_size)) { in hpsa_passthru_ioctl()
6370 memset(buff, 0, iocommand.buf_size); in hpsa_passthru_ioctl()
6380 if (iocommand.buf_size > 0) { /* buffer to fill */ in hpsa_passthru_ioctl()
6387 memcpy(&c->Header.LUN, &iocommand.LUN_info, sizeof(c->Header.LUN)); in hpsa_passthru_ioctl()
6390 memcpy(&c->Request, &iocommand.Request, in hpsa_passthru_ioctl()
6394 if (iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6396 iocommand.buf_size, DMA_BIDIRECTIONAL); in hpsa_passthru_ioctl()
6404 c->SG[0].Len = cpu_to_le32(iocommand.buf_size); in hpsa_passthru_ioctl()
6409 if (iocommand.buf_size > 0) in hpsa_passthru_ioctl()
6418 memcpy(&iocommand.error_info, c->err_info, in hpsa_passthru_ioctl()
6419 sizeof(iocommand.error_info)); in hpsa_passthru_ioctl()
6420 if (copy_to_user(argp, &iocommand, sizeof(iocommand))) { in hpsa_passthru_ioctl()
6424 if ((iocommand.Request.Type.Direction & XFER_READ) && in hpsa_passthru_ioctl()
6425 iocommand.buf_size > 0) { in hpsa_passthru_ioctl()
6427 if (copy_to_user(iocommand.buf, buff, iocommand.buf_size)) { in hpsa_passthru_ioctl()