<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - i915 hides gigabytes of memory usage from rest of the system"
href="https://bugs.freedesktop.org/show_bug.cgi?id=106136">106136</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>i915 hides gigabytes of memory usage from rest of the system
</td>
</tr>
<tr>
<th>Product</th>
<td>DRI
</td>
</tr>
<tr>
<th>Version</th>
<td>DRI git
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>DRM/Intel
</td>
</tr>
<tr>
<th>Assignee</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>eero.t.tamminen@intel.com
</td>
</tr>
<tr>
<th>QA Contact</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>CC</th>
<td>intel-gfx-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>i915 platform</th>
<td>ALL
</td>
</tr></table>
<p>
<div>
<pre>This is follow up for <a class="bz_bug_link
bz_status_NEW "
title="NEW - GEM object leaks with fullscreen programs -> swap fills up + OOM kills within few hours"
href="show_bug.cgi?id=106106">bug 106106</a>, where X server leaks gigabytes of dirty
memory, which gets swapped out until swap fills completely, and that doesn't
show up anywhere else than in debugfs (if one knows where to look into) &
/proc/meminfo SwapFree value.
I think this has several problems:
* It's (mostly) process specific memory usage that isn't visible in /proc like
rest of memory usage. Even slab and vmalloc usage is visible in /proc, so GEM
object memory usage should be there too, not just in debugfs
* As a result, huge memory leakage can go completely unnoticed if developer
just has enough memory on his own machine. Causes for such problems get harder
to track down, the longer it takes to detect what is the actual issue
* This memory doesn't seem to be taken into account when kernel calculates
process OOM score (kernel killed most of my other processes instead of X)
* I assume this memory usage also avoids normal memory usage limits (e.g.
cgroups). Nasty process is free to cause gigs of GEM object usage, so that
other processes get restricted & OOM killed, and device slowed down by
swapping, without it itself being caught out
I guess solving this requires GEM API through which i915 reports its memory
usage, and it's GEM responsibility to provide that information where
appropriate.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are on the CC list for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>