From aaee282051252d364f951ff297eb88f0e5d267e5 Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Tue, 26 Mar 2019 20:43:22 +0900 Subject: [PATCH] nvenc: Don't leak CUDA device memory Allocated device memory should be freed with cuMemFree --- sys/nvenc/gstnvbaseenc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/nvenc/gstnvbaseenc.c b/sys/nvenc/gstnvbaseenc.c index 0567bfd..42fe7ac 100644 --- a/sys/nvenc/gstnvbaseenc.c +++ b/sys/nvenc/gstnvbaseenc.c @@ -998,6 +998,12 @@ gst_nv_base_enc_free_buffers (GstNvBaseEnc * nvenc) GST_ERROR_OBJECT (nvenc, "Failed to unregister resource %p, ret %d", in_gl_resource, nv_ret); + nv_ret = cuMemFree ((CUdeviceptr) in_gl_resource->cuda_pointer); + if (nv_ret != NV_ENC_SUCCESS) { + GST_ERROR_OBJECT (nvenc, "Failed to free CUDA device memory, ret %d", + nv_ret); + } + g_free (in_gl_resource); cuCtxPopCurrent (NULL); } else -- 2.7.4