"XFS: possible memory allocation deadlock in kmem_alloc" on high memory machine

Anders Ossowicki
2015-06-01T14:57:47Z

Hi,

We've started seeing a slew of these messages in dmesg:

XFS: possible memory allocation deadlock in kmem_alloc (mode:0x250)

First question: Is this cause for alarm at all? Should we expect the
disk to blow up in our faces? Should we expect loss of performance?

This is from a machine under heavy load (database server, large dataset,
lots of I/O). It seems to happen only when we hit 15k-20k+ iops on the
disk.

We're running on 3.18.13, built from kernel.org git.

The machine has 3TB of memory and after googling the message for a
while, I guess memory fragmentation could be a likely cause. Looking at
/proc/buddyinfo when these messages show up, we see that there are
almost no fragments of order 1 and none of higher orders.

My completely uneducated guess would be that the kernel can't reap pages
fast enough, so XFS gets impatient waiting for them. That seems like an
issue for mm though but I'd like to confirm if my understanding of what
XFS does is correct.

Most of the memory is used by disk cache:
$ free -g
total used free shared buffers cached
Mem: 3023 3001 22 0 0 2840

Let me know if there is any more info I should provide.