cvs commit: src/sys/netinet if_ether.c
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Wed Oct 1 02:17:26 PDT 2008
sephe 2008/10/01 02:16:18 PDT
DragonFly src repository
Modified files:
sys/netinet if_ether.c
Log:
Split arprequest() into two parts, arpreq_alloc() and arpreq_send().
arprequest() simply calls these two functions sequencially.
Add arprequest_async(), which allocates the arp request using arpreq_alloc()
and then dispatch the real sending (arpreq_send()) to current CPU's netisr.
Callers of arprequest_async() do not need to worry about the ifp's serializer
state. This function also makes sure that the network output happens in
TDF_NETWORK kernel thread.
Let arp_ifinit(), arp_ifinit2() and arp_rtrequest() call arprequest_async().
Revision Changes Path
1.55 +92 -30 src/sys/netinet/if_ether.c
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_ether.c.diff?r1=1.54&r2=1.55&f=u
More information about the Commits
mailing list