Hello, Andrey Lyubimets!

On Thu, Jul 12, 2012 at 04:20:15PM +0700
[email protected] wrote about "[freebsd] Как побороть утечку памяти ядра?":
> Я занялся апгрейдом своих vpn-серверов до свежей free (6.3 =>8.3) и
> натолкнулся на регулярные зависания с сообщением в консоль:
> 
> login: panic: kmem_malloc(540672): kmem_map too small: 171130880 total 
> allocated

аналогичная ситуация была на двух тазиках с 8.2, на которых было несколько 
десятков
толстых gred pipes с src/dst mask и большим кол-вом слотов внутри.
обошлось vm.kmem_size_max="607571968" в /boot/loader.conf, по дефолту было
около 300 метров
на одном из тазиков ставил 1G, но он не захотел загружаться с таким..
после этого еще немного протекло и перестало, остановившись где-то в районе 
400M,
аптайм порядка 150 дней

> cpuid = 0
> Uptime: 3d6h44m50s
> Cannot dump. Device not defined or unavailable.
> Automatic reboot in 15 seconds - press a key on the console to abort
> --> Press a key on the console to reboot,
> --> or switch off the system now.
> 
> Серверы представляют собой nanobsd с ipsec, quagga и pf.
> # uname -iorp
> FreeBSD 8.3-RELEASE i386 VPNS
> 
> Кто виноват? -- я почти на все сто уверен, что racoon (ipsec-tools-0.8.0_3)
> по vmstat -m ратут значения только crypto:
> 
> # uptime && vmstat -m | egrep '(crypto|Type)'
>  4:02PM  up  1:27, 1 user, load averages: 0.00, 0.00, 0.00
>          Type InUse MemUse HighUse Requests  Size(s)
>        crypto  3360  2134K       - 13509175  32,64,128,256,512,1024,2048,4096
> 
> # uptime && vmstat -m | egrep '(crypto|Type)'
>  1:10PM  up 3 days,  5:22, 1 user, load averages: 0.01, 0.00, 0.00
>          Type InUse MemUse HighUse Requests  Size(s)
>        crypto 266647 122370K       - 747108786  
> 32,64,128,256,512,1024,2048,4096
> 
> Сервер, который держит ~40 туннелей, зависает через 3-5 дней, у которого 3-4
> - через 15-25.
> 
> Что делать? -- не знаю, прошу помощи.
> 
> -- 
> С уважением, Любимец Андрей Алексеевич
> 

-- 
AVB-RIPE
The Fifth Rule:
        You have taken yourself too seriously.

Ответить