{
  "slug": "relatime",
  "term": "Relative access-time updates",
  "aliases": [
    "relatime",
    "Relative atime",
    "MS_RELATIME"
  ],
  "definition": "Relatime is a Linux policy that selects access-time updates using the existing access, modification and inode-change times and a daily age condition.",
  "note": "In Linux v6.12, an otherwise eligible access passes the relatime test when mtime or ctime is at least as recent as atime, or when the difference between the current time and the stored atime, using their integer-second fields, reaches 86,400. Equality qualifies. This is checked during access, not by a daily timer updating idle files. Other update suppression and failure conditions still apply. [linux-inode-v612]\n\nRelatime selects updates; lazytime controls their persistence. noatime suppresses access-triggered updates, while strictatime requests traditional access-time behavior. These policies do not make atime a complete access log or a file-content identity. [linux-mount-flags]",
  "related": [
    "file-access-time",
    "file-modification-time",
    "inode-change-time",
    "lazytime"
  ],
  "citations": [
    {
      "id": "linux-inode-v612",
      "title": "Linux v6.12 fs/inode.c: relatime_need_update and generic_update_time",
      "url": "https://github.com/torvalds/linux/blob/v6.12/fs/inode.c#L1823",
      "accessed": "2026-11-09"
    },
    {
      "id": "linux-mount-flags",
      "title": "Linux mount(2): MS_LAZYTIME and timestamp policy",
      "url": "https://man7.org/linux/man-pages/man2/mount.2.html",
      "accessed": "2026-11-09"
    },
    {
      "id": "hesela-timestamp-policies",
      "title": "Hesela: timestamp selection is separate from persistence",
      "url": "https://hesela.com/analyses/rsync-delta-shifted-blocks/#timestamp-policies",
      "accessed": "2026-11-09"
    }
  ],
  "status": "shipping",
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-11-09",
  "advantages": [
    "Can reduce access-driven timestamp updates compared with strict access-time policy."
  ],
  "limitations": [
    "An unchanged atime does not establish that no read occurred.",
    "The age condition is not a timestamp-persistence deadline."
  ],
  "provenance": [
    "Source synthesis of Linux API documentation and the pinned v6.12 implementation; no access-policy or power-loss experiment performed."
  ]
}
