]> asedeno.scripts.mit.edu Git - linux.git/commit
drm/etnaviv: reject timeouts with tv_nsec >= NSEC_PER_SEC
authorArnd Bergmann <arnd@arndb.de>
Mon, 11 Nov 2019 16:20:04 +0000 (17:20 +0100)
committerArnd Bergmann <arnd@arndb.de>
Wed, 18 Dec 2019 17:07:32 +0000 (18:07 +0100)
commit245595e83fbedda9e107eb0b37cec0ad07733778
tree7578182952795a319fbff6c71c756fecd57e74e5
parent6cedb8b377bba6520508399b74754b9a0ca06edf
drm/etnaviv: reject timeouts with tv_nsec >= NSEC_PER_SEC

Most kernel interfaces that take a timespec require normalized
representation with tv_nsec between 0 and NSEC_PER_SEC.

Passing values larger than 0x100000000ull further behaves differently
on 32-bit and 64-bit kernels, and can cause the latter to spend a long
time counting seconds in timespec64_sub()/set_normalized_timespec64().

Reject those large values at the user interface to enforce sane and
portable behavior.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
drivers/gpu/drm/etnaviv/etnaviv_drv.c