Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Nov 2008 17:50:08 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        "Ivan Voras" <ivoras@gmail.com>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r184652 - in head/sys: dev/hwpmc fs/procfs kern
Message-ID:  <200811041750.08355.jhb@freebsd.org>
In-Reply-To: <9bbcef730811041422x5f1e7bfco45380390c64b3b1c@mail.gmail.com>
References:  <200811041904.mA4J41dL005103@svn.freebsd.org> <9bbcef730811041422x5f1e7bfco45380390c64b3b1c@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 04 November 2008 05:22:47 pm Ivan Voras wrote:
> 2008/11/4 John Baldwin <jhb@freebsd.org>:
> > Author: jhb
> > Date: Tue Nov  4 19:04:01 2008
> > New Revision: 184652
> > URL: http://svn.freebsd.org/changeset/base/184652
> >
> > Log:
> >  Remove unnecessary locking around vn_fullpath().  The vnode lock for the
> 
> Does this affect realpath(3)? (whose non-scalability is often reported
> for PHP web servers).

realpath(3) calls getcwd(3) (which devolves to __getcwd(2) I think) once per 
invocation (and that already did not lock the vnode).  It then calls lstat() 
for each component in the path.  The lstat() calls should be using shared 
locks (at least with the recent changes to use shared lookups for UFS in 
HEAD).  I imagine the bottleneck is more with lstat() than getcwd(3).  
Neither is helped by the specific changes above.

-- 
John Baldwin



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