DragonFlyBSD Kernel Audit
DF-1764 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c b/sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
--- a/sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
+++ b/sys/dev/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
@@ -124,8 +124,10 @@
 			break;
 
 		r = put_user(*(rd_buf + result), buf);
-		if (r)
+		if (r) {
+			kfree(rd_buf);
 			return r; /* r = -EFAULT */
+		}
 
 		buf += 1;
 		size -= 1;