Kaynağa Gözat

s-s-d: Do not unneedingly fsync() the pid file

The pid file is a run-time resource, which will not be valid on reboot
anyway. There's no need to guarantee its durability. But now that we are
not checking for errors from flushing the stream, check them instead
when closing it, which we should have been doing anyway.
Guillem Jover 15 yıl önce
ebeveyn
işleme
d72022b1d3
1 değiştirilmiş dosya ile 2 ekleme ve 5 silme
  1. 2 5
      utils/start-stop-daemon.c

+ 2 - 5
utils/start-stop-daemon.c

@@ -1595,11 +1595,8 @@ main(int argc, char **argv)
 			fatal("unable to open pidfile '%s' for writing",
 			      pidfile);
 		fprintf(pidf, "%d\n", pidt);
-		if (fflush(pidf))
-			fatal("unable to flush pidfile '%s'", pidfile);
-		if (fsync(fileno(pidf)))
-			fatal("unable to sync pidfile '%s'", pidfile);
-		fclose(pidf);
+		if (fclose(pidf))
+			fatal("unable to close pidfile '%s'", pidfile);
 	}
 	if (changeroot != NULL) {
 		if (chdir(changeroot) < 0)