From 8586414cc15ca36e92cf3c40c2cfb2f8b2691bee Mon Sep 17 00:00:00 2001 From: Aparna Das Date: Fri, 22 Jun 2018 11:35:10 -0700 Subject: gpu: nvgpu: fix perf output buffer size validation Currently we check if offset + size of perf output buffer crosses 4GB boundary. This check should be fixed to offset + size - 1. Bug 200422626 Change-Id: I87b1c0761a97903780ddde871d5ca396bf26170d Signed-off-by: Aparna Das Reviewed-on: https://git-master.nvidia.com/r/1758338 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/os/linux/ioctl_dbg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/gpu/nvgpu/os/linux/ioctl_dbg.c') diff --git a/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c b/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c index 938e0abd..383bdca9 100644 --- a/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c +++ b/drivers/gpu/nvgpu/os/linux/ioctl_dbg.c @@ -1383,7 +1383,7 @@ static int gk20a_perfbuf_map(struct dbg_session_gk20a *dbg_s, /* perf output buffer may not cross a 4GB boundary */ virt_size = u64_lo32(args->mapping_size); - if (u64_hi32(args->offset) != u64_hi32(args->offset + virt_size)) { + if (u64_hi32(args->offset) != u64_hi32(args->offset + virt_size - 1)) { err = -EINVAL; goto err_unmap; } -- cgit v1.2.2