标签
PostgreSQL , Linux , page allocation failure , 内存
背景
Linux内核分配失败,现象:
内存使用一定量后,HANG。
dmesg中可能会有类似这样的错误,系统HANG住,无法连接,需要重启解决。
page allocation failure
Oct 24 11:27:42 kernel: : [21289.479063] python2.6: page allocation failure. order:1, mode:0x20
kernel: swapper: page allocation failure. order:1, mode:0x20
kernel: Pid: 0, comm: swapper Not tainted 2.6.32-358.2.1.el6.x86_64 #1
kernel: Call Trace:
kernel: <IRQ> [<ffffffff8112c207>] ? __alloc_pages_nodemask+0x757/0x8d0
kernel: [<ffffffff81166ab2>] ? kmem_getpages+0x62/0x170
kernel: [<ffffffff811676ca>] ? fallback_alloc+0x1ba/0x270
kern
Linux内核page分配失败解决方案 - zone_reclaim_mode

当Linux遇到page allocation failure并导致系统挂起时,可能需要升级内核或调整内核参数。升级到kernel-2.6.32-358.el6以上版本可以缓解问题,但并不能彻底解决。根本原因是kswapd在RHEL 6.4之前的版本不处理内存碎片。从RHEL 6.4开始,kswapd会尝试整理内存,但大流量的GFP_ATOMIC分配仍可能导致失败,尽管最终应能成功。解决方案还包括修改zone_reclaim_mode参数。

最低0.47元/天 解锁文章
1542

被折叠的 条评论
为什么被折叠?



