iptables: Memory allocation problem

Michal Hucik hucik na inext.cz
Pondělí Květen 9 09:18:21 CEST 2005


Dobry den,

pouzivam na Linuxovych routerech iptables, ktere obsahuji spousty radku 
(cca 15 - 20 tisic). Toto nastaveni slouzi predevsim k vyuziti data 
counteru v tabulce mangle. Stav techto pocitadel se kazdou minutu uklada 
do databaze k dalsimu zpracovani a vetsina se jich v tomto intervalu i 
vynuluje pomoci 'iptables -Z [chain]'

Po nejake dobe provozu se vsak stane to, ze veskera volani iptables s 
pokusem o zmenu nastaveni, nebo o smazani pocitadla skonci error kodem  
a s hlasenim "iptables: Memory allocation problem".
Nekdy se podari problem odstranit tim, ze se uplne smaznou a pak opet 
natahnou vsechny chainy, nekdy je potreba restartnout cely system.

Samotny kernel je o neco sdilnejsi a hlasi tohle:

allocation failed: out of vmalloc space - use vmalloc=<size> to increase 
size.

Usuzuji z toho, ze alokovana pamet, ktera je k dispozici pro praci 
kernelu neni dostatecne velka - je-li tomu skutecne tak, jak mu potom 
muzu pridelit vetsi kus?

Rekl bych, ze skutecne pameti je k dispozici dostatek:

# cat /proc/meminfo
MemTotal:      1026452 kB
MemFree:         36120 kB
Buffers:         19024 kB
Cached:         768776 kB
SwapCached:          0 kB
Active:         164656 kB
Inactive:       686520 kB
HighTotal:      122816 kB
HighFree:          140 kB
LowTotal:       903636 kB
LowFree:         35980 kB
SwapTotal:     2008084 kB
SwapFree:      2007876 kB
Dirty:            7644 kB
Writeback:           0 kB
Mapped:          81464 kB
Slab:            49620 kB
CommitLimit:   2521308 kB
Committed_AS:   159884 kB
PageTables:       1548 kB
VmallocTotal:   114680 kB
VmallocUsed:     82580 kB
VmallocChunk:    31856 kB
HugePages_Total:     0
HugePages_Free:      0
Hugepagesize:     2048 kB




Další informace o konferenci Linux