On Wed, Jun 02, 2021 at 04:11:14PM -0400, Taylor Blau wrote: > Subject: [PATCH] compat: introduce git_fsync_with_restart() > > Some platforms, like NonStop do not automatically restart fsync() when > interrupted by a signal, even when that signal is setup with SA_RESTART. > > This can lead to test breakage, e.g., where "--progress" is used, thus > SIGALRM is sent often, and can interrupt an fsync() syscall. > > Add a Makefile knob FSYNC_NEEDS_RESTART to replace fsync() with one that > gracefully handles getting EINTR. > > Reported-by: Randall S. Becker <randall.becker@xxxxxxxxxxxx> > Signed-off-by: Jeff King <peff@xxxxxxxx> Probably Helped-by might be more appropriate. But regardless, I definitely give my S-o-B for anything I contributed. > Makefile | 8 ++++++++ > compat/fsync.c | 10 ++++++++++ > git-compat-util.h | 6 ++++++ > 3 files changed, 24 insertions(+) > create mode 100644 compat/fsync.c This looks as I'd expect. But after seeing Eric's response, we perhaps want to do away with the knob entirely. -Peff