From 8ad48f6ce444648397d82b107cd196c24599d7cb Mon Sep 17 00:00:00 2001 From: "Michael I. Bushnell" Date: Fri, 19 Jul 1996 03:42:43 +0000 Subject: *** empty log message *** --- libtrivfs/ChangeLog | 7 ++++--- libtrivfs/io-reauthenticate.c | 13 ++++++------- 2 files changed, 10 insertions(+), 10 deletions(-) (limited to 'libtrivfs') diff --git a/libtrivfs/ChangeLog b/libtrivfs/ChangeLog index eaf3afa2..51e946e4 100644 --- a/libtrivfs/ChangeLog +++ b/libtrivfs/ChangeLog @@ -1,7 +1,8 @@ -Thu Jul 18 19:39:32 1996 Miles Bader +Thu Jul 18 23:14:44 1996 Michael I. Bushnell, p/BSG - * io-reauthenticate.c (trivfs_S_io_reauthenticate): Hold - GLOBAL_LOCK while we're setting up the new port. + * io-reauthenticate.c (trivfs_S_io_reauthenticate): Use noinstall + version of ports_create_port. Put it in the port set after the + node has been fully initialized. Sat Jul 13 20:15:56 1996 Michael I. Bushnell, p/BSG diff --git a/libtrivfs/io-reauthenticate.c b/libtrivfs/io-reauthenticate.c index 10e32481..e199642b 100644 --- a/libtrivfs/io-reauthenticate.c +++ b/libtrivfs/io-reauthenticate.c @@ -48,13 +48,11 @@ trivfs_S_io_reauthenticate (struct trivfs_protid *cred, aux_uids = aubuf; aux_gids = agbuf; - mutex_lock (&global_lock); - do - err = ports_create_port (cred->po->cntl->protid_class, - cred->po->cntl->protid_bucket, - sizeof (struct trivfs_protid), - &newcred); + err = ports_create_port_noinstall (cred->po->cntl->protid_class, + cred->po->cntl->protid_bucket, + sizeof (struct trivfs_protid), + &newcred); while (err == EINTR); if (err) return err; @@ -126,7 +124,8 @@ trivfs_S_io_reauthenticate (struct trivfs_protid *cred, /* Signal that the user destroy hook shouldn't be called on NEWCRED. */ newcred->realnode = MACH_PORT_NULL; - mutex_unlock (&global_lock); + mach_port_move_member (mach_task_self (), newcred->pi.port_right, + cred->po->cntl->protid_bucket->portset); if (gubuf != gen_uids) vm_deallocate (mach_task_self (), (u_int) gen_uids, -- cgit v1.2.3