diff options
author | Rolf Eike Beer <eb@emlix.com> | 2018-11-20 12:51:04 +0100 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2018-11-29 10:49:15 +0100 |
commit | e05c4f3f2fea7b75bb6998ca8f80a8b96ad681dc (patch) | |
tree | 8742cab48509722248e056c41a22c3529e2e795d | |
parent | 9e41c92361a1155ebdb7e43493283e374e44b889 (diff) |
gk20a: do not BUG if the ioctl size does not match
Signed-off-by: Rolf Eike Beer <eb@emlix.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/ctrl_gk20a.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/ctrl_gk20a.c b/drivers/gpu/nvgpu/gk20a/ctrl_gk20a.c index 9128959f60a7..3a8c3ff4c645 100644 --- a/drivers/gpu/nvgpu/gk20a/ctrl_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/ctrl_gk20a.c @@ -96,11 +96,10 @@ long gk20a_ctrl_dev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg if ((_IOC_TYPE(cmd) != NVHOST_GPU_IOCTL_MAGIC) || (_IOC_NR(cmd) == 0) || - (_IOC_NR(cmd) > NVHOST_GPU_IOCTL_LAST)) + (_IOC_NR(cmd) > NVHOST_GPU_IOCTL_LAST) || + (_IOC_SIZE(cmd) > NVHOST_GPU_IOCTL_MAX_ARG_SIZE)) return -EFAULT; - BUG_ON(_IOC_SIZE(cmd) > NVHOST_GPU_IOCTL_MAX_ARG_SIZE); - if (_IOC_DIR(cmd) & _IOC_WRITE) { if (copy_from_user(buf, (void __user *)arg, _IOC_SIZE(cmd))) return -EFAULT; |