Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   ozaki-r
Date:           Mon Aug 31 08:05:20 UTC 2015

Modified Files:
        src/sys/net: if_arp.h if_ethersubr.c if_llatbl.c if_llatbl.h
            if_tokensubr.c
        src/sys/netinet: if_arp.c in.c in_proto.c in_var.h

Log Message:
Replace ARP cache (llinfo) with lltable/llentry

Highlights of the change are:
- Use llentry instead of llinfo to manage ARP caches
  - ARP specific data are stored in the hashed list
    of an interface instead of the global list (llinfo_arp)
- Fine-grain locking on llentry
- arptimer (callout) per ARP cache
  - the global timer callout with the big locks can be
    removed (though softnet_lock is still required for now)
- net.inet.arp.prune is now obsoleted
  - it was the interval of the global timer callout
- net.inet.arp.refresh is now obsoleted
  - it was a parameter that prevents expiration of active caches
  - Removed to simplify the timer logic, but we may be able to
    restore the feature if really needed

Proposed on tech-kern and tech-net.


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 src/sys/net/if_arp.h
cvs rdiff -u -r1.212 -r1.213 src/sys/net/if_ethersubr.c
cvs rdiff -u -r1.1 -r1.2 src/sys/net/if_llatbl.c src/sys/net/if_llatbl.h
cvs rdiff -u -r1.70 -r1.71 src/sys/net/if_tokensubr.c
cvs rdiff -u -r1.173 -r1.174 src/sys/netinet/if_arp.c
cvs rdiff -u -r1.158 -r1.159 src/sys/netinet/in.c
cvs rdiff -u -r1.113 -r1.114 src/sys/netinet/in_proto.c
cvs rdiff -u -r1.73 -r1.74 src/sys/netinet/in_var.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index