Subject: Re: Pulling simple syscalls out from the giant lock
To: Nathan J. Williams <nathanw@wasabisystems.com>
From: Tonnerre <tonnerre@thundrix.ch>
List: tech-kern
Date: 06/07/2005 22:19:02
--Km1U/tdNT/EmXiR1
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Salut,

On Tue, Jun 07, 2005 at 03:53:40PM -0400, Nathan J. Williams wrote:
> Ignatios Souvatzis <is@NetBSD.org> writes:
>=20
> > Why? Maybe I'm missing something, but what keeps the parent from dying
> > after the syscall returns in the child, but before the child uses the
> > information? If nothing, as I think, what changes when the parent dies
> > using a different cpu? Oh wait, getppid & friends have to pull the ppid
> > value out of the parent's nose... I wonder whether it would be better to
> > cache the ppid value in the children and update it when the parent dies.
>=20
> Perhaps I'm being too pessimistic, but I don't like to assume that any
> variable updates are atomic. It's okay if the result is the old parent
> or the new parent, but it's not okay to get (say) the top bits from
> the old parent and the bottom bits from the new parent.

Use atomic_t's then, I made a patch for them, since we need them anyway for
DRM. Does anyone want it?

				Tonnerre

--Km1U/tdNT/EmXiR1
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (NetBSD)

iD8DBQFCpgE2XUVlAbfmNMIRAuouAJ0XJ5zhuFx+M7+1fCshqY6vMDV9dwCfVH8o
iFC8/5waPbMLAOMYuBN/ukk=
=8dj+
-----END PGP SIGNATURE-----

--Km1U/tdNT/EmXiR1--