tun(4) in -CURRENT: No buffer space available - race condition patch

John Baldwin jhb at freebsd.org
Thu Sep 16 12:38:08 UTC 2010


On Wednesday, September 15, 2010 5:57:34 pm Marcin Cieslak wrote:
> Dnia 15.09.2010 John Baldwin <jhb at freebsd.org> napisał/a:
> > On Monday, September 13, 2010 9:10:01 pm Marcin Cieslak wrote:
> >> Output queue of tun(4) gets full after some time when sending lots of data.
> >> I have been observing this on -CURRENT at least since March this year.
> >> 
> >> Looks like it's a race condition (same in tun(4) and tap(4)), 
> >> the following patch seems to address the issue:
> >
> > This is a good find.  I actually went through these drivers a bit further and 
> > have a bit of a larger patch to extend the locking some.  Would you care to 
> > test it?
> 
> Sure, I am installing it right now (for if_tun right now).
> 
> There are also a LORs during tunclose (I always get one of them when closing the
> tunnel):

Hmm, this looks to be in the if_purgeaddrs() routine itself and not specific
to tun/tap.

-- 
John Baldwin


More information about the freebsd-current mailing list