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.