Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Apr 2014 14:17:57 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        "Bjoern A. Zeeb" <bz@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r264321 - head/sys/netinet
Message-ID:  <201404111417.57601.jhb@freebsd.org>
In-Reply-To: <2775D53A-8728-4E8D-B53D-ADC00649D737@FreeBSD.org>
References:  <201404101815.s3AIFZx3065541@svn.freebsd.org> <2775D53A-8728-4E8D-B53D-ADC00649D737@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, April 11, 2014 6:56:16 am Bjoern A. Zeeb wrote:
> On 10 Apr 2014, at 18:15 , John Baldwin <jhb@FreeBSD.org> wrote:
> 
> > +/* Global timewait lock */
> > +static VNET_DEFINE(struct rwlock, tw_lock);
> > +#define	V_tw_lock			VNET(tw_lock)
> 
> Why do we virtualise individual locks now?   Usually we only do for those 
embedded into larger virtualised data structures?  Does this align with an 
independently virtualised data structure (in which case the lock should be 
part of that)?

The larger structure is currently a single TAILQ:

static VNET_DEFINE(TAILQ_HEAD(, tcptw), twq_2msl);
#define	V_twq_2msl			VNET(twq_2msl)

Would seem overkill to make a separate struct just for the TAILQ_HEAD and
lock?

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404111417.57601.jhb>