summaryrefslogtreecommitdiff
path: root/document-portal
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2015-10-01 18:02:13 +0200
committerAlexander Larsson <alexl@redhat.com>2015-10-01 18:02:13 +0200
commitcf5050126e57c3c7efeb27f93735752aaed99639 (patch)
treec6286fd4b84192f25cdfe820ca717aaa3369de8f /document-portal
parentc66f09b6b628f91850a6ac3f720566f470108b46 (diff)
downloadxdg-app-cf5050126e57c3c7efeb27f93735752aaed99639.tar.gz
fuse: Disable entry cache to work around race condition
Diffstat (limited to 'document-portal')
-rw-r--r--document-portal/xdp-fuse.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/document-portal/xdp-fuse.c b/document-portal/xdp-fuse.c
index 2d013ae..2de239a 100644
--- a/document-portal/xdp-fuse.c
+++ b/document-portal/xdp-fuse.c
@@ -94,7 +94,11 @@ get_attr_cache_time (int st_mode)
static double
get_entry_cache_time (fuse_ino_t inode)
{
- return 60.0;
+ /* We have to disable entry caches because otherwise we have a race
+ on rename. The kernel set the target inode as NOEXIST after a
+ rename, which breaks in the tmp over real case due to us reusing
+ the old non-temp inode. */
+ return 0.0;
}
/******************************* XdpTmp *******************************