Browse Source

more cancellation points: tcdrain, clock_nanosleep

Rich Felker 14 years ago
parent
commit
11dbbe9fba
2 changed files with 12 additions and 2 deletions
  1. 6 1
      src/termios/tcdrain.c
  2. 6 1
      src/time/clock_nanosleep.c

+ 6 - 1
src/termios/tcdrain.c

@@ -1,7 +1,12 @@
 #include <termios.h>
 #include <sys/ioctl.h>
+#include "libc.h"
 
 int tcdrain(int fd)
 {
-	return ioctl(fd, TCSBRK, 1);
+	int ret;
+	CANCELPT_BEGIN;
+	ret = ioctl(fd, TCSBRK, 1);
+	CANCELPT_END;
+	return ret;
 }

+ 6 - 1
src/time/clock_nanosleep.c

@@ -1,8 +1,13 @@
 #define SYSCALL_RETURN_ERRNO
 #include <time.h>
 #include "syscall.h"
+#include "libc.h"
 
 int clock_nanosleep(clockid_t clk, int flags, const struct timespec *req, struct timespec *rem)
 {
-	return syscall4(__NR_clock_nanosleep, clk, flags, (long)req, (long)rem);
+	int ret;
+	CANCELPT_BEGIN;
+	ret = syscall4(__NR_clock_nanosleep, clk, flags, (long)req, (long)rem);
+	CANCELPT_END;
+	return ret;
 }