Date: Thu, 30 Aug 2001 17:37:07 -0700 (PDT) From: John Baldwin <jhb@FreeBSD.org> To: Matt Dillon <dillon@FreeBSD.org> Cc: cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Subject: RE: cvs commit: src/sys/kern init_sysent.c sysv_msg.c sysv_sem.c Message-ID: <XFMail.010830173707.jhb@FreeBSD.org> In-Reply-To: <200108310002.f7V02I979592@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 31-Aug-01 Matt Dillon wrote:
> dillon 2001/08/30 17:02:18 PDT
>
> Modified files:
> sys/kern init_sysent.c sysv_msg.c sysv_sem.c
> sysv_shm.c syscalls.master
> Log:
> Giant Pushdown: sysv shm, sem, and msg calls.
You could probably minimize a lot of these diffs using a UGAR() macro similar
ot BSD/OS's EGAR macro. It unlocks Giant and then returns the value passed in.
Thus return(foo); becomes UGAR(foo);
This would make the diffs much simpler, which also makes it easier to take
Giant out of syscalls later on:
#define UGAR(rval) do { \
int _val = (rval); \
mtx_unlock(&Giant); \
return (_val); \
} while (0)
--
John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.010830173707.jhb>
