svn commit: r248534 - in head: lib/libc/sys share/man/man4 sys/kern sys/sys

Jilles Tjoelker jilles at stack.nl
Sat Apr 6 15:34:34 UTC 2013


On Sat, Apr 06, 2013 at 01:06:24AM -0700, Peter Wemm wrote:
> On Wed, Mar 20, 2013 at 4:50 PM, Jilles Tjoelker <jilles at stack.nl> wrote:
> > On Wed, Mar 20, 2013 at 01:18:56PM +0400, Gleb Smirnoff wrote:
> >> On Tue, Mar 19, 2013 at 08:58:18PM +0000, Jilles Tjoelker wrote:
> >> J> Author: jilles
> >> J> Date: Tue Mar 19 20:58:17 2013
> >> J> New Revision: 248534
> >> J> URL: http://svnweb.freebsd.org/changeset/base/248534

> >> J> Log:
> >> J>   Implement SOCK_CLOEXEC, SOCK_NONBLOCK and MSG_CMSG_CLOEXEC.
> >[..]
> >> IMO, it won't hurt if changes like this (bringing in new functionality)
> >> would bump __FreeBSD_version.

> > This change can be detected via the new #defines, and I plan to add
> > similar changes in the near future (see the hackers@ mail about this
> > patch; some of them cannot be detected via the preprocessor or even at
> > compile time). Therefore, I think a __FreeBSD_version bump is not yet
> > appropriate.

> FYI.. The heimdal krb5 in /usr/src auto-detects these and uses them,
> as do a couple of random ports.  These binaries will no longer run on
> kernel.old, or 9.x.

> This is probably worth making a warning about because it's been a
> while since installworld/reboot/installkernel discipline has been
> required and folks have probably got lazy.  Heck, you have been able
> to do an installworld from 9.x -> 10.x for a while without requiring a
> reboot.  (I know, because I've developed this bad habit)

Note that MSG_CMSG_CLOEXEC is harmlessly ignored by older kernels.

I'm planning to add pipe2() and accept4() system calls and mkostemp()
and mkostemps() libc functions, which may cause similar issues.

How about this change to UPDATING? I'm inserting it into the middle to
keep the file sorted by date.

Index: UPDATING
===================================================================
--- UPDATING	(revision 249203)
+++ UPDATING	(working copy)
@@ -33,6 +33,12 @@
 	removed.  Kernel option `options ATA_CAM` is now permanently enabled
 	and removed.
 
+20130319:
+	SOCK_CLOEXEC and SOCK_NONBLOCK flags have been added to socket(2)
+	and socketpair(2). Software, in particular Kerberos, may
+	automatically detect and use these during building. The resulting
+	binaries will not work on older kernels.
+
 20130308:
 	CTL_DISABLE has also been added to the sparc64 GENERIC (for further
 	information, see the respective 20130304 entry).

-- 
Jilles Tjoelker


More information about the svn-src-all mailing list