Lines Matching refs:ioc
4980 BIG_IOCTL_Command_struct *ioc; in hpsa_big_passthru_ioctl() local
4995 ioc = (BIG_IOCTL_Command_struct *) in hpsa_big_passthru_ioctl()
4996 kmalloc(sizeof(*ioc), GFP_KERNEL); in hpsa_big_passthru_ioctl()
4997 if (!ioc) { in hpsa_big_passthru_ioctl()
5001 if (copy_from_user(ioc, argp, sizeof(*ioc))) { in hpsa_big_passthru_ioctl()
5005 if ((ioc->buf_size < 1) && in hpsa_big_passthru_ioctl()
5006 (ioc->Request.Type.Direction != XFER_NONE)) { in hpsa_big_passthru_ioctl()
5011 if (ioc->malloc_size > MAX_KMALLOC_SIZE) { in hpsa_big_passthru_ioctl()
5015 if (ioc->buf_size > ioc->malloc_size * SG_ENTRIES_IN_CMD) { in hpsa_big_passthru_ioctl()
5029 left = ioc->buf_size; in hpsa_big_passthru_ioctl()
5030 data_ptr = ioc->buf; in hpsa_big_passthru_ioctl()
5032 sz = (left > ioc->malloc_size) ? ioc->malloc_size : left; in hpsa_big_passthru_ioctl()
5039 if (ioc->Request.Type.Direction & XFER_WRITE) { in hpsa_big_passthru_ioctl()
5059 memcpy(&c->Header.LUN, &ioc->LUN_info, sizeof(c->Header.LUN)); in hpsa_big_passthru_ioctl()
5060 memcpy(&c->Request, &ioc->Request, sizeof(c->Request)); in hpsa_big_passthru_ioctl()
5061 if (ioc->buf_size > 0) { in hpsa_big_passthru_ioctl()
5086 memcpy(&ioc->error_info, c->err_info, sizeof(ioc->error_info)); in hpsa_big_passthru_ioctl()
5087 if (copy_to_user(argp, ioc, sizeof(*ioc))) { in hpsa_big_passthru_ioctl()
5091 if ((ioc->Request.Type.Direction & XFER_READ) && ioc->buf_size > 0) { in hpsa_big_passthru_ioctl()
5095 BYTE __user *ptr = ioc->buf; in hpsa_big_passthru_ioctl()
5116 kfree(ioc); in hpsa_big_passthru_ioctl()