Skip site navigation (1)Skip section navigation (2)
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>