Mercurial > illumos > illumos-gate
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);