Date: Wed, 30 Apr 2003 13:18:09 -0400 (EDT) From: John Baldwin <jhb@FreeBSD.org> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/fxp if_fxp.c if_fxpvar.h Message-ID: <XFMail.20030430131809.jhb@FreeBSD.org> In-Reply-To: <16046.62962.818957.664893@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
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@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20030430131809.jhb>