]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdkfd: Fix error handling in criu_checkpoint
authorFelix Kuehling <Felix.Kuehling@amd.com>
Tue, 1 Nov 2022 19:02:48 +0000 (15:02 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 9 Nov 2022 22:57:48 +0000 (17:57 -0500)
commit0e4ffb5e0075fbdf5d0d834b7e5244857347401d
tree0b85c10adc5206cd246f6a40d8044d4b140f87ad
parent0c6b17bf1b7f8425879f9f7cdc5df8b9540fc0d9
drm/amdkfd: Fix error handling in criu_checkpoint

Checkpoint BOs last. That way we don't need to close dmabuf FDs if
something else fails later. This avoids problematic access to user mode
memory in the error handling code path.

criu_checkpoint_bos has its own error handling and cleanup that does not
depend on access to user memory.

In the private data, keep BOs before the remaining objects. This is
necessary to restore things in the correct order as restoring events
depends on the events-page BO being restored first.

Fixes: 580f03fe3244 ("drm/amdkfd: CRIU export BOs as prime dmabuf objects")
Reported-by: Jann Horn <jannh@google.com>
CC: Rajneesh Bhardwaj <Rajneesh.Bhardwaj@amd.com>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Reviewed-and-tested-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c