diff options
author | Seungha Yang <seungha.yang@navercorp.com> | 2019-03-26 20:43:22 +0900 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2019-05-02 11:02:38 +0100 |
commit | 5898acce9f4144c6e9ca2d9bacc408f859f50e3a (patch) | |
tree | 17d34d89201805c6800a83e4229fa25e435a2386 | |
parent | 1410f521dbc395534f640c08a145dd1996a60879 (diff) | |
download | gstreamer-plugins-bad-5898acce9f4144c6e9ca2d9bacc408f859f50e3a.tar.gz |
nvenc: Don't leak CUDA device memory
Allocated device memory should be freed with cuMemFree
-rw-r--r-- | sys/nvenc/gstnvbaseenc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/nvenc/gstnvbaseenc.c b/sys/nvenc/gstnvbaseenc.c index 5481b4656..b18c04537 100644 --- a/sys/nvenc/gstnvbaseenc.c +++ b/sys/nvenc/gstnvbaseenc.c @@ -1012,6 +1012,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 |