]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdgpu/pm: Fix potential Spectre v1
authorGustavo A. R. Silva <gustavo@embeddedor.com>
Mon, 23 Jul 2018 16:32:32 +0000 (11:32 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 31 Jul 2018 21:58:23 +0000 (16:58 -0500)
commitf0ec6d44aaadf0c873b88803ac01c340c6984c0f
tree6f66a7c14ce035660c88f22260105de43e91b48f
parent391959386b7ea5fede11bb65281b8a4b576da2fd
drm/amdgpu/pm: Fix potential Spectre v1

idx can be indirectly controlled by user-space, hence leading to a
potential exploitation of the Spectre variant 1 vulnerability.

This issue was detected with the help of Smatch:

drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c:408 amdgpu_set_pp_force_state()
warn: potential spectre issue 'data.states'

Fix this by sanitizing idx before using it to index data.states

Notice that given that speculation windows are large, the policy is
to kill the speculation on the first load and not worry if it can be
completed with a dependent load/store [1].

[1] https://marc.info/?l=linux-kernel&m=152449131114778&w=2

Cc: stable@vger.kernel.org
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c