Browse Source

make fsync, fdatasync, and msync cancellation points

these are mandatory cancellation points per POSIX, so their omission
was a conformance bug.
Trutz Behn 10 years ago
parent
commit
0b21a07c78
3 changed files with 3 additions and 3 deletions
  1. 1 1
      src/mman/msync.c
  2. 1 1
      src/unistd/fdatasync.c
  3. 1 1
      src/unistd/fsync.c

+ 1 - 1
src/mman/msync.c

@@ -3,5 +3,5 @@
 
 int msync(void *start, size_t len, int flags)
 {
-	return syscall(SYS_msync, start, len, flags);
+	return syscall_cp(SYS_msync, start, len, flags);
 }

+ 1 - 1
src/unistd/fdatasync.c

@@ -3,5 +3,5 @@
 
 int fdatasync(int fd)
 {
-	return syscall(SYS_fdatasync, fd);
+	return syscall_cp(SYS_fdatasync, fd);
 }

+ 1 - 1
src/unistd/fsync.c

@@ -3,5 +3,5 @@
 
 int fsync(int fd)
 {
-	return syscall(SYS_fsync, fd);
+	return syscall_cp(SYS_fsync, fd);
 }