Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Sep 2004 23:47:31 -0400
From:      David Schultz <das@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>, Julian Elischer <julian@elischer.org>, src-committers@freebsd.org, cvs-src@freebsd.org, cvs-all@freebsd.org
Subject:   Re: cvs commit: src/sys/kern kern_proc.c kern_switch.c src/sys/sys sched.h src/sys/vm vm_glue.c
Message-ID:  <20040921034731.GA7565@VARK.MIT.EDU>
In-Reply-To: <20040920205940.GA4784@VARK.MIT.EDU>
References:  <200409191834.i8JIYHXU089517@repoman.freebsd.org> <414E0DCA.5090601@elischer.org> <20040920001317.GA2829@VARK.MIT.EDU> <200409201410.58648.jhb@FreeBSD.org> <20040920205940.GA4784@VARK.MIT.EDU>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 20, 2004, David Schultz wrote:
> BTW, shouldn't PHOLD() assert that (p == curproc)?  I think this is
> the only race-free way to use it (as opposed to _PHOLD() with the
> process already locked).  Maybe PHOLD(p) should simply be renamed
> PHOLD_CURPROC().

Never mind.  It's also safe to PHOLD(uio->uio_td->td_proc), as is
done sys/ufs/ffs/ffs_rawread.c.  This is because the thread that
issued the I/O is known to be sleeping awaiting the I/O
completion, so the proc reference must be valid.  Not sure what
happens with AIO...



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