We have a software solution that is based of Ubuntu 16.04 (fully updated).
uname -a: Linux EnGageRP-a371 4.15.0-62-generic #69~16.04.1-Ubuntu SMP Fri Sep 6 02:43:35 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Graphics driver version: 2:2.99.917+git20160325-1ubuntu1
Our software appears to have no free memory after a while. top does not indicated any increase in RSS or Virtual Memory on any process. Kernel buffers/cache seems to grow over time. Swap gets filled up over time and eventually soon after either the player hangs or the OOM kills Xorg and everything recovers.
The workload causing this varies over time and repeats every 15min. It essentially consists of at most two video at a time (no hardware acceleration enabled), along with a browser running something from https://stackla.com/ and images. The video and the browser may run in parallel, but otherwise if alone, it is in full screen. All videos are at most 1080p.
From what I understand, Xorg process seems to be leaking gem objects and that this might actually be indicative of a bug in the Intel driver.
I have tried tracing calls to gem_create and gem_close in Xorg, and a few outstanding allocations. Please see attached summary.txt.
Created attachment 145871 [details]
Stack trace of gem_creates that were not also gem_closed
Created attachment 145872 [details]
Created attachment 145873 [details]
That would be extremely surprising. You can enable valgrind if you want to track allocations; but first check xrestop and look at what clients still have pixmap references.
Created attachment 145874 [details]
The output of /sys/kernel/debug/dri/0/i915_gem_object
@chris I'll try collecting that information. I'll need some time.
Created attachment 145891 [details]
Attached output of xrestop.txt when gem_object count was:
Xorg: 246 objects, 7526064128 bytes (0 active, 546791424 inactive, 200171520 global, 7520288768 shared, 7006183424 unbound)