FreeBSD 8.0p2 mbuf clusters Problem

kai_001

Well-Known Member
Hallo,

habe ein 8.0p2 ( amd64 ) mit einem RaidZ2 Pool ( 14TB ) laufen. Netzwerkkarte ist eine Intel PRO/1000 EB Karte ( onboard auf einem Intel Board ).

Der Pool wird per NFS freigegeben. Nun steigt aber der mbuf clusters Verbrauch stetig an, ich musste diesen schon ungewöhnlich hoch setzen, damit er erreichbar bleibt ( mbufs voll, nicht gut ... kein Netzverkehr mehr , nur serieller Zugriff möglich ) :-(

Habe dazu in den Maillinglisten nicht wirklich was gefunden ... habt ihr eine Idee was man da machen kann? Irgendwie wird der Speicher nicht freigegeben, sehe ich dass richtig? Mit net.inet.tcp.recvspace und net.inet.tcp.sendspace ( momentan auf 16k, bzw. 8k, vorher auf 32k ) habe ich auch rumgespielt, ohne Besserung.

Der Wert sieht momentan so aus:

68879/11131/80010/262144 mbuf clusters in use (current/cache/total/max)

Danke
Kai
 
Hi,

danke für die Antwort ... Du hast aba schon gesehen, dass dieses Verhalten nicht normal ist und ich schon an den Limits schrauben musste, so dass die Kiste überhaupt erreichbar bleibt? Hatte die mbufs auf 32k ... zuwenig, 64k ... zuwenig ... jetzt gehts schon auf die 100k zu, dass is doch nicht normal?! Auf nem 7.2er Release gab es dieses Verhalten nicht, habe jetzt auf einer Mailingliste noch mehr solche Fälle gefunden, ohne Lösung. Es wird ein Memleak im nfs Code vermutet *super* ... eventuell hat jemand mehr Infos oder ne Idee.

Gruß
Kai
 
Ok,

bin jetzt mal auf 8-STABLE gegangen ( laut Mailingliste gabs viele nfs und mbuf Updates ). Bisher siehts wieder völlig normal aus ... werde dass weiter beobachten.

Grüße
Kai
 
Ist ein bekanntes Problem auf der Mailinglist, liegt wohl am Cache in Verbindung mit NFS-mounts via UDP.

Hoffentlich wird das Leak bald geschlossen. :)
 
Yo, hab ich auch gefunden. Es soll wohl reichen UDP aus den Flags rauszunehmen, obwohl keine UDP Connects vorhanden sind.


Grüße
Kai
 
Es gab gerade einen Commit in 8-STABLE, der zumindest ein bzw. das Leak schließt:
Code:
Log:                                                                          
    MFC: r205562                                                                
    When the regular NFS server replied to a UDP client out of the replay       
    cache, it did not free the request argument mbuf list, resulting in a       
  leak.                                                                         
    This patch fixes that leak.                                                 
                                                                                
    PR: kern/144330
 
Back
Top