While stress-testing LVM on one of our Debian servers, I came across this issue where memory would fill up a lot to the point where it would run the server out of memory, but no process would claim the memory. See https://i.stack.imgur.com/ismcH.png, and see https://serverfault.com/a/449102/125894 for an explanation on the colors used in htop.
Why is this happening?
And is there any way to see what process is using the memory?
Htop is configured not to hide any processes, so what is it that htop is missing?
In this particular case, I can fairly certainly say that it is caused, directly or indirectly, by lvmcreate, lvmremove or dmsetup, as I was stress-testing that. Do note that this question is not about solving the LVM problem, but about why the memory isn't claimed by any process. Stopping all LVM commands does bring the memory back down to <600MB.
Output of free -m
:
total used free shared buffers cached
Mem: 32153 31958 194 0 52 3830
-/+ buffers/cache: 28075 4077
Swap: 975 0 975
Output of top, on pastebin due to the length of it: http://pastebin.com/WchrpF7W