The parse_insn() function shouldn't dereference `insn->data` as that is
pointing to user-space memory. It should deference the separate `data`
parameter instead, which points to a kernel copy of the data. Only the
`INSN_INTTRIG` case needs fixing. Fix it.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
ret = -EAGAIN;
break;
}
- ret = s->async->inttrig(dev, s, insn->data[0]);
+ ret = s->async->inttrig(dev, s, data[0]);
if (ret >= 0)
ret = 1;
break;