Re:Extended BPF: A New Type of Software [pdf]
by BubRoss on Thursday December 05, 2019 @11:56AM
(#21713889)
Is there a good explanation for why saying this is a 'new type of software' and a 'fundamental change to the 50 year old kernel structure' isn't hyperbole? I understand that it is some sort of constrained virtual machine that can analyze packets, bit it seems like the marketing here is a little much.
Re:Extended BPF: A New Type of Software [pdf]
by allset_ on Thursday December 05, 2019 @12:44PM
(#21714375)
It can do much more than analyze packets. It's a way of running user defined programs in kernel space with fairly strong assurances that it won't crash the kernel.
Re:Extended BPF: A New Type of Software [pdf]
by farisjarrah on Thursday December 05, 2019 @04:14PM
(#21716601)
BPF programs can hook directly into the kernel more or less and can safely share memory to userspace. This is important because after all the fall out from Spectre and Meltdown, they found that the BPF virtual machine programs were immune from this class of vulnerabilities.
Re:Extended BPF: A New Type of Software [pdf]
by aey on Thursday December 05, 2019 @08:27PM
(#21718520)
It’s a culmination of decades of research and implementation to mainstream Ring-0 OS kernels that are upgradable at runtime with untrusted userspace code.
Re:Extended BPF: A New Type of Software [pdf]
by cbdumas on Thursday December 05, 2019 @02:09PM
(#21715311)
This seems like a roundabout way of getting to something much more like what wikipedia calls a "Language-based System"[1], which is something I've been thinking about a lot lately. Very cool.
Re:Extended BPF: A New Type of Software [pdf]
by Terretta on Thursday December 05, 2019 @10:18AM
(#21712974)
> tl;dr
Well, that doesn’t say much. :-)
Here’s more:
BPF (eBPF) tracing is a superpower that can analyze everything, and I'll show you how in my upcoming book BPF Performance Tools: Linux System and Application Observability, coming soon from Addison Wesley. The book includes over 150 BPF observability tools that you can run to find performance wins and troubleshoot software, and also shows you how to write your own. Over one hundred of these BPF tools are newly-developed for this book; you can see many of them in this diagram...
We built a whole rust tool chain around it.
https://github.com/solana-labs/rust-bpf-sysroot https://github.com/solana-labs/rust-bpf-builder
[1] https://en.wikipedia.org/wiki/Language-based_system
xmlHttpRequest became Ajax after all.
Well, that doesn’t say much. :-)
Here’s more:
BPF (eBPF) tracing is a superpower that can analyze everything, and I'll show you how in my upcoming book BPF Performance Tools: Linux System and Application Observability, coming soon from Addison Wesley. The book includes over 150 BPF observability tools that you can run to find performance wins and troubleshoot software, and also shows you how to write your own. Over one hundred of these BPF tools are newly-developed for this book; you can see many of them in this diagram...
http://www.brendangregg.com/blog/2019-07-15/bpf-performance-...
And a writeup:
Netflix: BPF is a new type of software we use to run Linux apps securely in the kernel
A Netflix performance architect says BPF promises a fundamental change to a 50-year-old kernel model.
https://www.zdnet.com/article/netflix-bpf-is-a-new-type-of-s...