File 2171-On-macOS-prefer-F_BARRIERFSYNC-over-F_FULLFSYNC.patch of Package erlang

From fe4eb5ec0e8935bf7d2db18ecd14a018401a5dc9 Mon Sep 17 00:00:00 2001
From: Michal Kuratczyk <mkuratczyk@vmware.com>
Date: Thu, 31 Mar 2022 11:05:27 +0200
Subject: [PATCH] On macOS, prefer F_BARRIERFSYNC over F_FULLFSYNC

---
 erts/emulator/nifs/unix/unix_prim_file.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/erts/emulator/nifs/unix/unix_prim_file.c b/erts/emulator/nifs/unix/unix_prim_file.c
index afd87e5d14..966086e572 100644
--- a/erts/emulator/nifs/unix/unix_prim_file.c
+++ b/erts/emulator/nifs/unix/unix_prim_file.c
@@ -538,7 +538,9 @@ int efile_sync(efile_data_t *d, int data_only) {
     }
 #endif
 
-#if defined(__DARWIN__) && defined(F_FULLFSYNC)
+#if defined(__DARWIN__) && defined(F_BARRIERFSYNC)
+    if(fcntl(u->fd, F_BARRIERFSYNC) < 0) {
+#elif defined(__DARWIN__) && defined(F_FULLFSYNC)
     if(fcntl(u->fd, F_FULLFSYNC) < 0) {
 #else
     if(fsync(u->fd) < 0) {
-- 
2.34.1

openSUSE Build Service is sponsored by