overlay: fix race condition when switching to jffs2
[project/fstools.git] / libfstools / overlay.c
index 7ada5ffc3b37c1c370f945a55cceef6b2efe0a92..8423a57c36df8fd67b445c3ff76ecc9b2afd8db6 100644 (file)
@@ -243,6 +243,10 @@ jffs2_switch(struct volume *v)
                ULOG_INFO("performing overlay whiteout\n");
                umount2("/tmp/root", MNT_DETACH);
                foreachdir("/overlay/", handle_whiteout);
+
+               /* try hard to be in sync */
+               ULOG_INFO("syncronizing overlay\n");
+               system("cp -a /tmp/root/upper/* / 2>/dev/null");
                break;
 
        case FS_EXT4: