{
  "slug": "tape-buffer-synchronization",
  "term": "Tape buffer synchronization",
  "aliases": [
    "tape buffer flush"
  ],
  "definition": "Tape buffer synchronization is completion of a supported operation that confirms previously buffered tape data and marks have been written to the medium.",
  "note": "IBM 3592 documents WRITE FILEMARKS with IMMED=0 and transfer length zero for this purpose. Successful status matters, not just issuing a command. [ibm-3592] In Linux v6.12, MT_ST_NOWAIT_EOF changes MTWEOF and close-time filemarks to immediate operation, including the MTWEOF zero-count path; check configuration before treating completion as a synchronization boundary. [linux-st-code]",
  "related": [
    "tape",
    "lto",
    "tape-filemark",
    "restore-test"
  ],
  "limitations": [
    {
      "text": "Confirmation of covered writes is not proof of long-term readability or an application-level restore.",
      "citationIds": [
        "ibm-3592"
      ]
    }
  ],
  "status": "shipping",
  "advantages": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-16",
  "citations": [
    {
      "id": "linux-st",
      "title": "Linux v6.12: SCSI tape driver, buffering and MT_ST_NOWAIT_EOF",
      "url": "https://github.com/torvalds/linux/blob/v6.12/Documentation/scsi/st.rst",
      "accessed": "2026-10-16"
    },
    {
      "id": "linux-st-code",
      "title": "Linux v6.12 st.c: st_flush, st_set_options and st_int_ioctl",
      "url": "https://github.com/torvalds/linux/blob/v6.12/drivers/scsi/st.c#L2804",
      "accessed": "2026-10-16"
    },
    {
      "id": "ibm-3592",
      "title": "IBM 3592 SCSI Reference GA32-0968-07, section 5.2.52, page 199 (2026)",
      "url": "https://www.ibm.com/support/pages/system/files/inline-files/3592%20SCSI%20Reference_GA32-0968-07.pdf#page=231",
      "accessed": "2026-10-16"
    }
  ]
}
