Date: Wed, 19 Mar 2014 20:57:01 +0100 From: Attilio Rao <attilio@freebsd.org> To: Jilles Tjoelker <jilles@stack.nl> Cc: "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org> Subject: Re: svn commit: r263318 - in head: sys/compat/freebsd32 sys/kern sys/sys usr.bin/truss Message-ID: <CAJ-FndBrk=T2YKdzTHnnfk7Q3TjnwE2bkh_ma7yzBZwe69f7VA@mail.gmail.com> In-Reply-To: <20140319181051.GA86549@stack.nl> References: <201403182132.s2ILW33e060898@svn.freebsd.org> <20140319181051.GA86549@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 19, 2014 at 7:10 PM, Jilles Tjoelker <jilles@stack.nl> wrote: > On Tue, Mar 18, 2014 at 09:32:03PM +0000, Attilio Rao wrote: >> Author: attilio >> Date: Tue Mar 18 21:32:03 2014 >> New Revision: 263318 >> URL: http://svnweb.freebsd.org/changeset/base/263318 > >> Log: >> Remove dead code from umtx support: >> - Retire long time unused (basically always unused) sys__umtx_lock() >> and sys__umtx_unlock() syscalls >> - struct umtx and their supporting definitions >> - UMUTEX_ERROR_CHECK flag >> - Retire UMTX_OP_LOCK/UMTX_OP_UNLOCK from _umtx_op() syscall > >> __FreeBSD_version is not bumped yet because it is expected that further >> breakages to the umtx interface will follow up in the next days. >> However there will be a final bump when necessary. > >> Sponsored by: EMC / Isilon storage division >> Reviewed by: jhb > >> [snip] >> Modified: head/sys/sys/umtx.h >> ============================================================================== >> --- head/sys/sys/umtx.h Tue Mar 18 20:14:13 2014 (r263317) >> +++ head/sys/sys/umtx.h Tue Mar 18 21:32:03 2014 (r263318) >> [snip] >> -static __inline int >> -umtx_wait(u_long *p, long val, const struct timespec *timeout) >> -{ >> - if (_umtx_op(p, UMTX_OP_WAIT, val, 0, >> - __DECONST(void *, timeout)) == -1) >> - return (errno); >> - return (0); >> -} >> - >> -/* Wake threads waiting on a user address. */ >> -static __inline int >> -umtx_wake(u_long *p, int nr_wakeup) >> -{ >> - if (_umtx_op(p, UMTX_OP_WAKE, nr_wakeup, 0, 0) == -1) >> - return (errno); >> - return (0); >> -} >> - > > These two do not use struct umtx, are not obsolete and are used by some > ports, such as lang/sbcl with certain options. They are similar to the > Linux futex system call. The relatively recent libxshmfence uses the > underlying umtx_op directly, mainly because there is no static inline > function for UMTX_OP_WAIT_UINT. They can just use _umtx_op() straight off. I already mentioned in the commit message that I will bump __FreeBSD_version appropriately when more API breakage will be introduced and we will have a relatively "stable" API situation of umtx. At that point ports maintainer can fix the ports. Attilio -- Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-FndBrk=T2YKdzTHnnfk7Q3TjnwE2bkh_ma7yzBZwe69f7VA>