0

I realize there have been a number of discussions about relationship of "free" to "available" memory in the output of free. However, what I'm currently seeing seems particularly unusual, and I haven't found an explanation yet in my searching.

Typically, I expect "available" to be somewhere in the approximate ballpark of free +/- buff/cache, and that the value reported as "available" by free is just an estimate, but.... what I'm seeing here seems pretty far off from what I would expect. Just curious if anyone else may have seen such behavior. This is on CentOS 7.9 with kernel-3.10.0-1160.53.1.el7.x86_64:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           503G        475G         21G        1.8M        6.3G        441M
Swap:          8.0G          0B        8.0G
guzzijason
  • 348
  • 1
  • 7
  • 1
    See suggestions at: https://serverfault.com/questions/940196/why-is-memavailable-a-lot-less-than-memfreebufferscached or: https://serverfault.com/questions/1089209/proc-meminfo-shows-memfree-greater-than-memavailable-does-it-make-sense and include more info from /proc please – JohannesB Mar 04 '22 at 21:27
  • Also duplicate of https://unix.stackexchange.com/a/440254/211119 – JohannesB Mar 04 '22 at 23:07
  • 1
    I didn't consider this to be a duplicate of unix.stackexchange.com/a/440254/211119 because the scenario described in that one (having available be 99.5% of free) looked perfectly normal to me. However, in my case, available ended up being ~2% of free. My question wasn't why "available" was less than "free", but rather why it was *so much* less than free. With that said, the serverfault items pointed me in the right direction. It turns out that one some of our hosts, vm.min_free_kbytes is set rather large, which accounted for the difference I was seeing. Thanks! – guzzijason Mar 08 '22 at 20:05
  • thanks for sharing the root cause – JohannesB Mar 09 '22 at 09:09

1 Answers1

2

In my case, it turned out vm.min_free_kbytes had been significantly increased on some systems, resulting in the inability to make a good chuck of free mem available.

guzzijason
  • 348
  • 1
  • 7