PF - Co je to Giant-free netstack?

Dan Lukes dan at obluda.cz
Mon Aug 11 09:28:46 CEST 2008


Richard Willmann napsal/wrote, On 08/11/08 08:21:
>>  ^-- Samozrejme. :-/ Vsimni si vypis na obrazovku pri bootovani:
>> napr. pri klavesnici sa tusim objavuje GIANT LOCKED. Az do verzie
> 
> ok, takze skusim sa opytat este raz, v man je pisane, ze moze nastat 
> deadlock ak existuju PF pravidla viazane na user/group soketu v pripade ak 
> je PF prevadzkovane na systeme s net stackom bez GIANT zamku. V takomto 
> pripade je tam workaround via sysctl. Rozumiem tomu spravne, ze na FBSD 
> takyto stack je a preto je workaround potrebny?

Sitovy stack je vysledkem spoluprace mnoha komponent. Ovladace sitovych 
karet, implementace jednotlivych sitovych protokolu, filtry a firewally 
(ktere samy mohou mit ruzne podkomponenty, podle sve konfigurace). Pokud 
jsou vsechny tyto komponenty GIANT-FREE pak je GIANT-FREE i vysledny 
sitovy stack. A protoze ruzne verze systemu rovna se ruzne verze 
komponent, coz se rovna moznemu jinemu stavu v (ne)pouzivani tohoto 
zamku, je vysledny stav komponent nejen funkci konkretni konfigurace, 
ale take konkretni verze systemu.

Takze zpatky k te manualove strance. Ta rika, ze PF pravidla vazana na 
UID/GID budou mit potize se zamkovanim, pokud je pouzijes na systemu s 
GIANT-FREE sitovym stackem. Jestli na tve konkretni verzi a zrovna v tve 
konkretni konfiguraci sitovy stack je nebo neni giant-free a tudiz, 
jestli takovy workaround je nebo neni potrebny, ti s informacemi, ktere 
mame k dispozici tezko rekneme. Manualova stranka rika tolik, ze pokud 
je, musis vynutit, aby nebyl, jinak mas problem.

Takze zpatky k tve konkretni konfiguraci nezname verze FreeBSD. Je to 
jednodussi, nez to vypada. Pokud pri startu uvidis:

WARNING: MPSAFE network stack disabled, expect reduced performance.

tak to znamena, ze na tvem kernelu v ve konfiguraci mas stack 
pouzivajici GIANT. V opacnem pripade nemas.

Take sysctl debug.mpsafenet rika v jakem stavu stack je, takze ani 
nemusis procitat zaznam startu systemu.

Jelikoz ale je z dotazu zrejme, ze v zasade netusis jak to se zamkovanim 
na FreeBSD je a co je "Giant problem" vysdlovne upozornuju na druhou 
polovinu te hlasky, kterou jsem shora citoval - "expect reduced 
performance". Nevim, na cem to nasazujes a jak hodne tam (ne)potrebujes 
sitovy vykon. Kazdopadne, pouziti UID/GID based pravidel strop vykonu 
snizi. Pokud se stropu neblizis, je to asi jedno. Jinak musis zvazit, 
zda jsou takova pravidla v PF opravdu tak nutna, ze je potreba je pridat 
a pokdu ano, tak co udelas s nasledky, ktere to prinasi.

					Dan




More information about the Users-l mailing list