<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>TLB on Nalar</title>
    <link>https://nalar.dev/tags/tlb/</link>
    <description>Recent content in TLB on Nalar</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sat, 19 Sep 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://nalar.dev/tags/tlb/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>TLB Shootdowns Coordinate Page-Table Changes Across CPUs</title>
      <link>https://nalar.dev/tlb-shootdowns-coordinate-page-table-changes-across-cpus/</link>
      <pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/tlb-shootdowns-coordinate-page-table-changes-across-cpus/</guid>
      <description>&lt;p&gt;A page-table entry can change in memory while another CPU still holds the old address translation in its translation lookaside buffer (TLB). Updating the page table alone therefore does not necessarily make the new mapping effective on every processor that has executed the affected address space.&lt;/p&gt;&#xA;&lt;p&gt;Operating systems close that gap with TLB invalidation. When a mapping change can make a cached translation unsafe, processors that may retain the translation must invalidate it before the kernel treats the change as globally complete. On a multiprocessor system, coordinating those remote invalidations is commonly called a TLB shootdown.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TLB Shootdowns Extend Page-Table Changes Across CPUs</title>
      <link>https://nalar.dev/tlb-shootdowns-extend-page-table-changes-across-cpus/</link>
      <pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://nalar.dev/tlb-shootdowns-extend-page-table-changes-across-cpus/</guid>
      <description>&lt;h1 id=&#34;tlb-shootdowns-extend-page-table-changes-across-cpus&#34;&gt;TLB Shootdowns Extend Page-Table Changes Across CPUs&lt;/h1&gt;&#xA;&lt;p&gt;Changing a page-table entry in memory does not by itself retire every translation derived from that entry. A CPU that previously used the mapping can retain it in a translation lookaside buffer, or TLB. On a multiprocessor system, other CPUs may hold their own cached copies, so a mapping change can require coordination beyond the CPU that modified the page table.&lt;/p&gt;&#xA;&lt;p&gt;Linux exposes this distinction through its TLB-flush interfaces. After page-table state changes, architecture code must make the affected translations unusable on every relevant CPU before software relies on the new mapping or releases memory that the old mapping could reach.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
