{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreieqgs2ak3lsjhcxfgztpzofly2bcv4h3imch5f2s7bi55k4ileyxe",
    "uri": "at://did:plc:b3tz6srl4ochk2wxn6dv6xpy/app.bsky.feed.post/3mnugrptt7zu2"
  },
  "path": "/Articles/1076121/",
  "publishedAt": "2026-06-09T13:37:36.000Z",
  "site": "https://lwn.net",
  "tags": [
    "Linux Storage, Filesystem, Memory-Management, and BPF Summit"
  ],
  "textContent": "The BPF verifier has, in the course of wrestling with the difficult problem of statically analyzing loops, grown special support for many kinds of loops over its history, but its fundamental approach to simple `for` loops has not changed. When it encounters a loop, it evaluates it, iteration by iteration, until reaching an exit condition — a process that can cause the verifier to mistakenly hit the limit on the number of allowed instructions where a better implementation would not. Eduard Zingerman spoke at the 2026 \nLinux Storage, Filesystem, Memory-Management, and BPF Summit about his in-progress work on improving the verifier's treatment of loops, especially nested loops.",
  "title": "[$] BPF loop verification with scalar evolution"
}