On Mon, Oct 24, 2016 at 5:07 AM, Christian König <deathsimple at vodafone.de> wrote: > Am 24.10.2016 um 04:32 schrieb zhoucm1: >> >> >> >> On 2016å¹´10æ??24æ?¥ 02:31, Grazvydas Ignotas wrote: >>> >>> Looks like .last_flush reference is left at teardown. >>> Leak reported by CONFIG_SLUB_DEBUG. >>> >>> Fixes: 41d9eb2c5a2a ("drm/amdgpu: add a fence after the VM flush") >>> Signed-off-by: Grazvydas Ignotas <notasas at gmail.com> >> >> Reviewed-by: Chunming Zhou <david1.zhou at amd.com> > > > Reviewed-by: Christian König <christian.koenig at amd.com>. > >>> --- >>> drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c >>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c >>> index ded57dd..d6c2839 100644 >>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c >>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c >>> @@ -1774,5 +1774,6 @@ void amdgpu_vm_manager_fini(struct amdgpu_device >>> *adev) >>> fence_put(adev->vm_manager.ids[i].first); >>> amdgpu_sync_free(&adev->vm_manager.ids[i].active); >>> fence_put(id->flushed_updates); >>> + fence_put(id->last_flush); >>> } >>> } Applied. Thanks! Alex