On 11/5/19 2:36 PM, Blake Golliher wrote: > We don't get anything more then this messages. > > [Tue Nov 5 11:18:34 2019] XFS: nginx(2540) possible memory allocation deadlock size 63960 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:34 2019] XFS: nginx(2517) possible memory allocation deadlock size 56880 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:34 2019] XFS: nginx(2540) possible memory allocation deadlock size 63960 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:35 2019] XFS: nginx(2517) possible memory allocation deadlock size 56880 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:36 2019] XFS: nginx(2514) possible memory allocation deadlock size 63960 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:36 2019] XFS: nginx(2540) possible memory allocation deadlock size 63960 in kmem_alloc (mode:0x250) > > [Tue Nov 5 11:18:37 2019] XFS: nginx(2517) possible memory allocation deadlock size 56880 in kmem_alloc (mode:0x250) no sure what to say. In that kernel, when we print the message: xfs_err(NULL, "%s(%u) possible memory allocation deadlock size %u in %s (mode:0x%x)", current->comm, current->pid, (unsigned int)size, __func__, lflags); xfs_err() is: define_xfs_printk_level(xfs_err, KERN_ERR); which is the macro: #define define_xfs_printk_level(func, kern_level) \ void func(const struct xfs_mount *mp, const char *fmt, ...) \ { \ struct va_format vaf; \ va_list args; \ int level; \ \ va_start(args, fmt); \ \ vaf.fmt = fmt; \ vaf.va = &args; \ \ __xfs_printk(kern_level, mp, &vaf); \ va_end(args); \ \ if (!kstrtoint(kern_level, 0, &level) && \ level <= 3 /* LOGLEVEL_ERR */ && \ xfs_error_level >= XFS_ERRLEVEL_HIGH) \ xfs_stack_trace(); \ } \ which should dump a stack if called w/ ERR priority and the xfs_error_level is at 11. I suppose your general kernel ring buffer needs to be turned up high enough as well (i.e. dmesg -n 8 to be sure?) The resulting stack trace would tell us exactly how you got to the allocation message. -Eric