* [PATCH V2] amdgpu: optimization-- reduce noneed mutex_lock area
@ 2020-04-21 2:25 Bernard Zhao
2020-04-21 4:20 ` Felix Kuehling
0 siblings, 1 reply; 2+ messages in thread
From: Bernard Zhao @ 2020-04-21 2:25 UTC (permalink / raw)
To: Felix Kuehling, Alex Deucher, Christian König,
David (ChunMing) Zhou, David Airlie, Daniel Vetter, amd-gfx,
dri-devel, linux-kernel
Cc: opensource.kernel, Bernard Zhao
Maybe we could reduce the mutex_lock(&mem->lock)`s protected code area,
and noneed to protect pr_debug.
Signed-off-by: Bernard Zhao <bernard@vivo.com>
Changes since V1:
*commit message improve
Link for V1:
*https://lore.kernel.org/patchwork/patch/1226588/
---
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
index 327317c54f7c..3c3769e57174 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
@@ -1285,17 +1285,18 @@ int amdgpu_amdkfd_gpuvm_free_memory_of_gpu(
struct bo_vm_reservation_context ctx;
struct ttm_validate_buffer *bo_list_entry;
int ret;
+ unsigned int mapped_to_gpu_memory;
mutex_lock(&mem->lock);
+ mapped_to_gpu_memory = mem->mapped_to_gpu_memory;
+ mutex_unlock(&mem->lock);
- if (mem->mapped_to_gpu_memory > 0) {
+ if (mapped_to_gpu_memory > 0) {
pr_debug("BO VA 0x%llx size 0x%lx is still mapped.\n",
mem->va, bo_size);
- mutex_unlock(&mem->lock);
return -EBUSY;
}
- mutex_unlock(&mem->lock);
/* lock is not needed after this, since mem is unused and will
* be freed anyway
*/
--
2.26.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH V2] amdgpu: optimization-- reduce noneed mutex_lock area
2020-04-21 2:25 [PATCH V2] amdgpu: optimization-- reduce noneed mutex_lock area Bernard Zhao
@ 2020-04-21 4:20 ` Felix Kuehling
0 siblings, 0 replies; 2+ messages in thread
From: Felix Kuehling @ 2020-04-21 4:20 UTC (permalink / raw)
To: 1587181464-114215-1-git-send-email-bernard, Alex Deucher,
Christian König, David (ChunMing) Zhou, David Airlie,
Daniel Vetter, amd-gfx, dri-devel, linux-kernel
Cc: opensource.kernel, Bernard Zhao
Hi Bernard,
Thank you for the patch. Please see some comments inline.
Am 2020-04-20 um 10:25 p.m. schrieb Bernard Zhao:
> Maybe we could reduce the mutex_lock(&mem->lock)`s protected code area,
> and noneed to protect pr_debug.
Typo: noneed -> no need
>
> Signed-off-by: Bernard Zhao <bernard@vivo.com>
>
> Changes since V1:
> *commit message improve
>
> Link for V1:
> *https://lore.kernel.org/patchwork/patch/1226588/
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> index 327317c54f7c..3c3769e57174 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> @@ -1285,17 +1285,18 @@ int amdgpu_amdkfd_gpuvm_free_memory_of_gpu(
> struct bo_vm_reservation_context ctx;
> struct ttm_validate_buffer *bo_list_entry;
> int ret;
> + unsigned int mapped_to_gpu_memory;
>
> mutex_lock(&mem->lock);
> + mapped_to_gpu_memory = mem->mapped_to_gpu_memory;
> + mutex_unlock(&mem->lock);
>
> - if (mem->mapped_to_gpu_memory > 0) {
> + if (mapped_to_gpu_memory > 0) {
> pr_debug("BO VA 0x%llx size 0x%lx is still mapped.\n",
> mem->va, bo_size);
> - mutex_unlock(&mem->lock);
> return -EBUSY;
> }
>
> - mutex_unlock(&mem->lock);
> /* lock is not needed after this, since mem is unused and will
> * be freed anyway
> */
Please move this comment along with the mutex_unlock.
Regards,
Felix
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-04-21 4:20 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-21 2:25 [PATCH V2] amdgpu: optimization-- reduce noneed mutex_lock area Bernard Zhao
2020-04-21 4:20 ` Felix Kuehling
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).