changeset 4722:9fe8664733c6

6542161 UNIX03: fdatasync() should be a cancellation point
author raf
date Tue, 24 Jul 2007 14:13:46 -0700
parents 02352f4150be
children a67d7aa1f485
files usr/src/lib/common/inc/c_synonyms.h usr/src/lib/libc/inc/synonyms.h usr/src/lib/libc/port/mapfile-vers usr/src/lib/libc/port/sys/fsync.c usr/src/lib/libc/port/threads/scalls.c
diffstat 5 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/lib/common/inc/c_synonyms.h	Tue Jul 24 12:57:32 2007 -0700
+++ b/usr/src/lib/common/inc/c_synonyms.h	Tue Jul 24 14:13:46 2007 -0700
@@ -283,6 +283,7 @@
 #define	fcntl				_fcntl
 #define	fconvert			_fconvert
 #define	fcvt				_fcvt
+#define	fdatasync			_fdatasync
 #define	fdetach				_fdetach
 #define	fdopendir			_fdopendir
 #define	fdopen				_fdopen
--- a/usr/src/lib/libc/inc/synonyms.h	Tue Jul 24 12:57:32 2007 -0700
+++ b/usr/src/lib/libc/inc/synonyms.h	Tue Jul 24 14:13:46 2007 -0700
@@ -329,6 +329,7 @@
 #define	fcntl			_fcntl
 #define	fconvert		_fconvert
 #define	fcvt			_fcvt
+#define	fdatasync		_fdatasync
 #define	fdetach			_fdetach
 #define	fdopendir		_fdopendir
 #define	fdopen			_fdopen
--- a/usr/src/lib/libc/port/mapfile-vers	Tue Jul 24 12:57:32 2007 -0700
+++ b/usr/src/lib/libc/port/mapfile-vers	Tue Jul 24 14:13:46 2007 -0700
@@ -1504,6 +1504,7 @@
 	_F_cplx_div_rx;
 	_F_cplx_mul;
 	_fcvt;
+	_fdatasync;
 	_ffs;
 	_fgetgrent;
 	_fgetgrent_r;
--- a/usr/src/lib/libc/port/sys/fsync.c	Tue Jul 24 12:57:32 2007 -0700
+++ b/usr/src/lib/libc/port/sys/fsync.c	Tue Jul 24 14:13:46 2007 -0700
@@ -20,7 +20,7 @@
  */
 
 /*
- * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -44,7 +44,7 @@
 }
 
 int
-fdatasync(int fd)
+_fdatasync(int fd)
 {
 	return (__fdsync(fd, FDSYNC));
 }
--- a/usr/src/lib/libc/port/threads/scalls.c	Tue Jul 24 12:57:32 2007 -0700
+++ b/usr/src/lib/libc/port/threads/scalls.c	Tue Jul 24 14:13:46 2007 -0700
@@ -694,6 +694,15 @@
 }
 
 int
+fdatasync(int fildes)
+{
+	extern int _fdatasync(int);
+	int rv;
+
+	PERFORM(_fdatasync(fildes))
+}
+
+int
 fsync(int fildes)
 {
 	extern int _fsync(int);