tmpfiles: open directories with O_NOATIME to preserve timestamp

Before:
  # stat /tmp/pulse-Du5ectm60QYM | grep 'Access: 20'
  Access: 2012-04-11 21:32:48.444920237 +0200
  # systemd-tmpfiles --clean
  # stat /tmp/pulse-Du5ectm60QYM | grep 'Access: 20'
  Access: 2012-04-11 21:36:27.628925459 +0200

After:
  # stat /tmp/pulse-Du5ectm60QYM | grep 'Access: 20'
  Access: 2012-04-11 21:32:48.444920237 +0200
  # ./systemd-tmpfiles --clean
  # stat /tmp/pulse-Du5ectm60QYM | grep 'Access: 20'
  Access: 2012-04-11 21:32:48.444920237 +0200

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=810257
This commit is contained in:
Kay Sievers
2012-04-11 21:40:25 +02:00
parent 6bb92a169e
commit e5f3d1ba12
+1 -1
View File
@@ -269,7 +269,7 @@ static int dir_cleanup(
DIR *sub_dir;
int q;
sub_dir = xopendirat(dirfd(d), dent->d_name, O_NOFOLLOW);
sub_dir = xopendirat(dirfd(d), dent->d_name, O_NOFOLLOW|O_NOATIME);
if (sub_dir == NULL) {
if (errno != ENOENT) {
log_error("opendir(%s/%s) failed: %m", p, dent->d_name);