惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
V2EX
小众软件
小众软件
MongoDB | Blog
MongoDB | Blog
Jina AI
Jina AI
G
Google Developers Blog
H
Help Net Security
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
The GitHub Blog
The GitHub Blog
Y
Y Combinator Blog
爱范儿
爱范儿
B
Blog
云风的 BLOG
云风的 BLOG
H
Hackread – Cybersecurity News, Data Breaches, AI and More
GbyAI
GbyAI
博客园 - 叶小钗
aimingoo的专栏
aimingoo的专栏
Blog — PlanetScale
Blog — PlanetScale
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
博客园_首页
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence

LWN.net comments

tcmalloc's weird hack [LWN.net] Fixed? [LWN.net] mpd [LWN.net] Userspace AX.25 [LWN.net] RIP [LWN.net] My two cents... [LWN.net] pipx [LWN.net] Tragedy [LWN.net] A young man destined for glory [LWN.net] And 'less' won't let you search [LWN.net] A great loss [LWN.net] Sad and shocking news [LWN.net] Easy migration from Clementine [LWN.net] Sad coincidence [LWN.net] GNOME is actually usable thanks to Seth et al [LWN.net] Sad news :( [LWN.net] armhf supports preempt_rt [LWN.net] MusicBrainz accurracy [LWN.net] On open source maintainership [LWN.net] Let's stop here [LWN.net] Not a new thing [LWN.net] uv is indeed great pgmoneta Some comments on this on a Postgres blog feed [LWN.net] uv [LWN.net] going to Debian [LWN.net] Upgrading 64-bit-capable systems to 64-bit kernels? [LWN.net] Free Software foundations Maintainers can wait for code review but not for publish review? A reasonably extreme point of view [LWN.net]
Reintroducing all the problems of C [LWN.net]
kkdwvd · 2026-06-25 · via LWN.net comments

The main point is separation of responsibilities. The kernel verifier should simply ensure the kernel's availability, but it shouldn't get into the business statically analyzing memory safety for data structures the program maintains for its internal state. That is both hard to do (in a language independent way at the bytecode level), and also undesirable. We would have to enforce some sort of aliasing regime that is unnatural (except perhaps in Rust) to enable local reasoning.

In the future, we may want even stronger functional correctness for, say, BPF CPU schedulers. It would be easier to compose and lift existing toolchains (Dafny, Verus) in user space and compile them down to native languages (which then successively compile down to BPF bytecode), rather reinventing all that and shoving a SAT solver to discharge more complex verification queries from the kernel verifier. It may be so that not everyone needs such strong guarantees (esp. during development). Optionality and clear distinction of responsibilities seems like a more sustainable long term approach for the ecosystem.

> If normal C is easy to write, it's unsafe.

I think the way to address this is to use a better language than C to write kernel extensions, and layer memory safety for extension's own state on top of the guarantees BPF already ensures for the kernel resources and interfaces. Eventually the Rust frontend for BPF should become a thing (it's WIP), which would hopefully be an improvement. You could argue Rust is not perfect and still leaves much to be desired, but it has primitives that allow you to negate presence of memory safety issues (as long as unsafe code is not violating that property) in a decidable fashion for BPF program's arena accesses. The kernel verifier already presents a restricted interface into the kernel and makes sure things are correct when accessing kernel objects.

> Instead of making BPF look more like userspace, I'd make it easier to integrate BPF *with* userspace,

This is how it works already. Several use cases you pointed out (schedulers in particular) already have much of their logic in user space.