| .. | .. |
|---|
| 46 | 46 | * array of comedi_krange structures to rangeinfo->range_ptr pointer |
|---|
| 47 | 47 | */ |
|---|
| 48 | 48 | int do_rangeinfo_ioctl(struct comedi_device *dev, |
|---|
| 49 | | - struct comedi_rangeinfo __user *arg) |
|---|
| 49 | + struct comedi_rangeinfo *it) |
|---|
| 50 | 50 | { |
|---|
| 51 | | - struct comedi_rangeinfo it; |
|---|
| 52 | 51 | int subd, chan; |
|---|
| 53 | 52 | const struct comedi_lrange *lr; |
|---|
| 54 | 53 | struct comedi_subdevice *s; |
|---|
| 55 | 54 | |
|---|
| 56 | | - if (copy_from_user(&it, arg, sizeof(struct comedi_rangeinfo))) |
|---|
| 57 | | - return -EFAULT; |
|---|
| 58 | | - subd = (it.range_type >> 24) & 0xf; |
|---|
| 59 | | - chan = (it.range_type >> 16) & 0xff; |
|---|
| 55 | + subd = (it->range_type >> 24) & 0xf; |
|---|
| 56 | + chan = (it->range_type >> 16) & 0xff; |
|---|
| 60 | 57 | |
|---|
| 61 | 58 | if (!dev->attached) |
|---|
| 62 | 59 | return -EINVAL; |
|---|
| .. | .. |
|---|
| 73 | 70 | return -EINVAL; |
|---|
| 74 | 71 | } |
|---|
| 75 | 72 | |
|---|
| 76 | | - if (RANGE_LENGTH(it.range_type) != lr->length) { |
|---|
| 73 | + if (RANGE_LENGTH(it->range_type) != lr->length) { |
|---|
| 77 | 74 | dev_dbg(dev->class_dev, |
|---|
| 78 | 75 | "wrong length %d should be %d (0x%08x)\n", |
|---|
| 79 | | - RANGE_LENGTH(it.range_type), |
|---|
| 80 | | - lr->length, it.range_type); |
|---|
| 76 | + RANGE_LENGTH(it->range_type), |
|---|
| 77 | + lr->length, it->range_type); |
|---|
| 81 | 78 | return -EINVAL; |
|---|
| 82 | 79 | } |
|---|
| 83 | 80 | |
|---|
| 84 | | - if (copy_to_user(it.range_ptr, lr->range, |
|---|
| 81 | + if (copy_to_user(it->range_ptr, lr->range, |
|---|
| 85 | 82 | sizeof(struct comedi_krange) * lr->length)) |
|---|
| 86 | 83 | return -EFAULT; |
|---|
| 87 | 84 | |
|---|