diff --git a/updater/blockimg.cpp b/updater/blockimg.cpp
index 77117db..a7821f3 100644
--- a/updater/blockimg.cpp
+++ b/updater/blockimg.cpp
@@ -19,6 +19,7 @@
 #include <dirent.h>
 #include <fcntl.h>
 #include <inttypes.h>
+#include <libgen.h>
 #include <linux/fs.h>
 #include <pthread.h>
 #include <stdarg.h>
@@ -686,6 +687,7 @@
     char *cn = NULL;
     int fd = -1;
     int rc = -1;
+    int dfd = -1;
     int res;
     struct stat st;
 
@@ -744,6 +746,20 @@
         goto wsout;
     }
 
+    const char* dname;
+    dname = dirname(cn);
+    dfd = TEMP_FAILURE_RETRY(open(dname, O_RDONLY | O_DIRECTORY));
+
+    if (dfd == -1) {
+        fprintf(stderr, "failed to open \"%s\" failed: %s\n", dname, strerror(errno));
+        goto wsout;
+    }
+
+    if (fsync(dfd) == -1) {
+        fprintf(stderr, "fsync \"%s\" failed: %s\n", dname, strerror(errno));
+        goto wsout;
+    }
+
     rc = 0;
 
 wsout:
@@ -751,6 +767,10 @@
         close(fd);
     }
 
+    if (dfd != -1) {
+        close(dfd);
+    }
+
     if (fn) {
         free(fn);
     }
