cvs commit: src/sys/dev/fxp if_fxp.c if_fxpvar.h
John Baldwin
jhb at FreeBSD.org
Wed Apr 30 10:19:24 PDT 2003
On 29-Apr-2003 Andrew Gallatin wrote:
>
> John Baldwin writes:
> >
> > Well, this also now involves extra locking in ithread_loop() (though we
> > should be doing it anyway). I'm kind of busy doing sigacts locking so
> > I can finally get all of signal handling out from under Giant, but I
> > can come back to this after that.
>
> Thanks, I appreciate that.
>
> What really needs to come out from under giant is uiomove.
> I'll be the first to admit that I have no idea what would be involved
> in that.
If you are using a private uio structure then it doesn't need Giant.
copyin/copyout only need Giant if they fault and they will already
get it in that case. bcopy() doesn't need Giant. The per-thread flag
is already locked. uio_yield() is already Giant-free.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
More information about the cvs-src
mailing list