Note: the mount options index=off,nfs_export=on are conflicting for a
 read-write mount and will result in an error.
 
+Note: the mount option uuid=off can be used to replace UUID of the underlying
+filesystem in file handles with null, and effectively disable UUID checks. This
+can be useful in case the underlying disk is copied and the UUID of this copy
+is changed. This is only applicable if all lower/upper/work directories are on
+the same filesystem, otherwise it will fallback to normal behaviour.
 
 Volatile mount
 --------------
 
        /*
         * Make sure that the stored uuid matches the uuid of the lower
         * layer where file handle will be decoded.
+        * In case of uuid=off option just make sure that stored uuid is null.
         */
-       if (!uuid_equal(&fh->fb.uuid, &mnt->mnt_sb->s_uuid))
+       if (ofs->config.uuid ? !uuid_equal(&fh->fb.uuid, &mnt->mnt_sb->s_uuid) :
+                             !uuid_is_null(&fh->fb.uuid))
                return NULL;
 
        bytes = (fh->fb.len - offsetof(struct ovl_fb, fid));
 
                seq_printf(m, ",redirect_dir=%s", ofs->config.redirect_mode);
        if (ofs->config.index != ovl_index_def)
                seq_printf(m, ",index=%s", ofs->config.index ? "on" : "off");
+       if (!ofs->config.uuid)
+               seq_puts(m, ",uuid=off");
        if (ofs->config.nfs_export != ovl_nfs_export_def)
                seq_printf(m, ",nfs_export=%s", ofs->config.nfs_export ?
                                                "on" : "off");
        OPT_REDIRECT_DIR,
        OPT_INDEX_ON,
        OPT_INDEX_OFF,
+       OPT_UUID_ON,
+       OPT_UUID_OFF,
        OPT_NFS_EXPORT_ON,
        OPT_NFS_EXPORT_OFF,
        OPT_XINO_ON,
        {OPT_REDIRECT_DIR,              "redirect_dir=%s"},
        {OPT_INDEX_ON,                  "index=on"},
        {OPT_INDEX_OFF,                 "index=off"},
+       {OPT_UUID_ON,                   "uuid=on"},
+       {OPT_UUID_OFF,                  "uuid=off"},
        {OPT_NFS_EXPORT_ON,             "nfs_export=on"},
        {OPT_NFS_EXPORT_OFF,            "nfs_export=off"},
        {OPT_XINO_ON,                   "xino=on"},
                        index_opt = true;
                        break;
 
+               case OPT_UUID_ON:
+                       config->uuid = true;
+                       break;
+
+               case OPT_UUID_OFF:
+                       config->uuid = false;
+                       break;
+
                case OPT_NFS_EXPORT_ON:
                        config->nfs_export = true;
                        nfs_export_opt = true;
        ofs->share_whiteout = true;
 
        ofs->config.index = ovl_index_def;
+       ofs->config.uuid = true;
        ofs->config.nfs_export = ovl_nfs_export_def;
        ofs->config.xino = ovl_xino_def();
        ofs->config.metacopy = ovl_metacopy_def;
        if (!ovl_upper_mnt(ofs))
                sb->s_flags |= SB_RDONLY;
 
+       if (!ofs->config.uuid && ofs->numfs > 1) {
+               pr_warn("The uuid=off requires a single fs for lower and upper, falling back to uuid=on.\n");
+               ofs->config.uuid = true;
+       }
+
        if (!ovl_force_readonly(ofs) && ofs->config.index) {
                err = ovl_get_indexdir(sb, ofs, oe, &upperpath);
                if (err)