Surge 2015 - Lightning Talks
OmniTICited 3× on HN, 2017-2020
12K views · 10 years ago · talk · evergreen
A collection of lightning talks from the Surge 2015 conference on scalable systems, hosted by Geir Magnusson. HN mostly points to one segment, a Bryan Cantrill talk touching on madvise semantics.
Cited as a classic Cantrill talk when threads discuss madvise, malloc and Dirty COW behavior.
2:13:32The Cantrill Strikes Back | BSD Now 117
Jupiter Broadcasting
9K views • 10 years ago
40:56"Liberating the Smalltalk lurking in C and Unix" by Stephen Kell
Strange Loop Conference
25K views • 12 years ago
41:12Run containers on bare metal already!
Bryan Cantrill
40K views • 11 years ago
52:35Debugging Under Fire: Keep your Head when Systems have Lost their Mind • Bryan Cantrill • GOTO 2017
GOTO Conferences
101K views • 9 years ago
1:26:02Stanford Seminar - The Soul of a New Machine: Rethinking the Computer
Stanford Online
76K views • 6 years ago
1:45:47Bryan Cantrill on Jails and Solaris Zones
PapersWeLove
34K views • 10 years ago
52:24Friday evening lightning talks
Next Day Video
6K views • 13 years ago
1:31:05Bryan Cantrill from Joyent on Manta: internet-facing object storage facility that features compute
AI Council
25K views • 12 years ago
56:19MINIX 3: a Modular, Self-Healing POSIX-compatible Operating System
FOSDEM
90K views • 16 years ago
42:54Containers From Scratch • Liz Rice • GOTO 2018
GOTO Conferences
321K views • 8 years ago
1:03:56Aalto Talk with Linus Torvalds [Full-length]
aaltouniversityace
2M views • 14 years ago
45:47The State of Kernel Self Protection Project by Kees Cook, Google
The Linux Foundation
7K views • 9 years ago
54:14Rick Reed - WhatsApp: Half a billion unsuspecting FreeBSD users
iX
31K views • 11 years ago
2:00:28Ubuntu Slaughters Kittens | BSD Now 103
Jupiter Broadcasting
39K views • 11 years ago
32:30Benno Rice: The Tragedy of systemd -- BSDCan 2018
BSDCan
25K views • 8 years ago
46:37Zebras All the Way Down - Bryan Cantrill, Uptime 2017
Code & Supply
49K views • 9 years ago
42:45RustConf 2017 - Closing Keynote: Safe Systems Software and the Future of Computing by Joe Duffy
Confreaks
2K views • 9 years ago
44:37Kubernetes for SysAdmins | Kelsey Hightower at PuppetConf | Talk & Demo
Perforce Puppet
153K views • 10 years ago
3:10:28The Mind Behind Windows: Dave Cutler
Dave's Garage
1M views • 3 years ago
28:31Velocity 2010: James Hamilton, "Datacenter Infrastructure Innovation"
O'Reilly
9K views • 16 years ago
3 comments from Hacker News
Although this is true on Linux, it's worth noting that this behavior doesn't match the specified behavior of posix_madvise.[1] It was also a subject of Bryan Cantril's hilarious "A crime against common sense" Surge 2015 talk (at ~1:06:50).[2] [1]: link [2]: ▶ this video
From the paper. > and subsequently allow the kernel to immediately reuse the associated physical memory. On Linux, this can be achieved by passing the MADV_DONTNEED flag to the the madvise system call. Shouldn't this be MADV_FREE? This instantly reminded me of this classic Bryan Cantrill talk ▶ this video Edit: It seems that the Linux behavior is relied upon? From later in the paper. > Note that it is even legal for a page to be unloaded while the page con-tent is being read optimistically. This is possible since the virtual memory region reserved for a buffer frame always remains valid (see above), and read accesses to a memory region that was marked with the MADV_DONTNEED flag simply result in zero bytes. No additional physical memory is allocated in this case, as all such accesses are mapped to the same zero page
Perhaps the talk[1] given by Bryan Cantrill in 2015, and mentioned in footnote 1 of the article, may have alerted someone to the possibility that there might be something exploitable here? In addition, any of the other online discussions of madvise(,,MADV_DONTNEED), mentioned in that talk, may have attracted someone's interest. This exploit seems to lie at the intersection of several things that I guess might indicate a higher-than-average risk of exploitability: shared memory, special provisions for debugging access to running processes, complicated and unintuitive (if not broken) semantics, and concurrency. [1] ▶ this video