Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Jul 2004 21:51:56 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Robert Watson <rwatson@freebsd.org>
Cc:        cvs-all@freebsd.org
Subject:   Re: cvs commit: src/sys/alpha/alpha pmap.c src/sys/amd64/amd64 pmap.c         src/sys/i386/i386 pmap.c src/sys/vm vm_page.c
Message-ID:  <20040729195156.GA57678@darkness.comp.waw.pl>
In-Reply-To: <Pine.NEB.3.96L.1040729154004.46374J-100000@fledge.watson.org>
References:  <20040729131040.F32601@pooker.samsco.org> <Pine.NEB.3.96L.1040729154004.46374J-100000@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--oFGQ2VdWvpciDCpb
Content-Type: text/plain; charset=iso-8859-2
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Jul 29, 2004 at 03:41:03PM -0400, Robert Watson wrote:
+> On Thu, 29 Jul 2004, Scott Long wrote:
+>=20
+> > >    - Enable recursion on the page queues lock.  This allows calls to
+> > >      vm_page_alloc(VM_ALLOC_NORMAL) and UMA's obj_alloc() with the p=
age
+> > >      queues lock held.  Such calls are made to allocate page table p=
ages
+> > >      and pv entries.
+> >=20
+> > My understanding is that recursive mutexes are quite expensive.  Is
+> > recursion a common occurrance now, and is there a good way to
+> > profile/measure these paths?=20
+>=20
+> No opinion on the change itself, but just to clarify this wording a litt=
le
+> for those reading who don't follow the locking work blow-by-blow: flaggi=
ng
+> a mutex as recursive itself is not expensive, but the act of recursing t=
he
+> mutex is expensive.=20

Hmm, why? Code seems to be very simple, I would even risk: simpler than
when lock is obtained at first time (but still one atomic operation...).
I'm not saying here that you don't know what you're talking about, I'm
just looking for an explanation.

--=20
Pawel Jakub Dawidek                       http://www.FreeBSD.org
pjd@FreeBSD.org                           http://garage.freebsd.pl
FreeBSD committer                         Am I Evil? Yes, I Am!

--oFGQ2VdWvpciDCpb
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFBCVVcForvXbEpPzQRAtGeAKDWT3zxgleF2FSSAm23q6kfk7MD3gCgqo3O
qwBKArJZ9Ev5mOS2epSD/7w=
=zhgz
-----END PGP SIGNATURE-----

--oFGQ2VdWvpciDCpb--



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