From c0f2d88f342f4d185f3991f98b79ab61a03896e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= Date: Mon, 27 Feb 2017 11:02:16 +0200 Subject: db: allow caching packages on tmpfs fixes #5616 The original intention was not use unnecessary space on tmpfs e.g. if the cache directory is a mount point, but accidentally left unmounted. But there are valid cases when packages are intentionally wanted to be cached on tmpfs. If caching is not desired, the user can just remove the cache directory. --- src/database.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/database.c b/src/database.c index 7a0bb5d7cf..c505dba60e 100644 --- a/src/database.c +++ b/src/database.c @@ -1593,7 +1593,7 @@ int apk_db_open(struct apk_database *db, struct apk_db_options *dbopts) /* figure out where to have the cache */ fd = openat(db->root_fd, apk_linked_cache_dir, O_RDONLY | O_CLOEXEC); - if (fd >= 0 && fstatfs(fd, &stfs) == 0 && stfs.f_type != TMPFS_MAGIC) { + if (fd >= 0) { db->cache_dir = apk_linked_cache_dir; db->cache_fd = fd; db->cache_remount_flags = map_statfs_flags(stfs.f_flags); @@ -1612,8 +1612,6 @@ int apk_db_open(struct apk_database *db, struct apk_db_options *dbopts) } } } else { - if (fd >= 0) - close(fd); db->cache_dir = apk_static_cache_dir; db->cache_fd = openat(db->root_fd, db->cache_dir, O_RDONLY | O_CLOEXEC); } -- cgit v1.2.3