Surge 2015 - Lightning Talks
OmniTICited 3× on HN, 2017–2020
talk · advanced · evergreen · 2017–2020 on HN
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.
Up next
14 mo on HNThe Tragedy of systemd
linux.conf.au
Recommended 16× on HN · 2019–2025
11 mo on HNThe Thirty Million Line Problem
Molly Rocket
Recommended 11× on HN · 2018–2024
10 mo on HNVCF East: Ken Thompson interviewed by Brian Kernighan
Vintage Computer Federation
Recommended 11× on HN · 2019–2025
9 mo on HNLISA11 - Fork Yeah! The Rise and Development of illumos
USENIX
Recommended 9× on HN · 2012–2026
9 mo on HNUSENIX ATC '21/OSDI '21 Joint Keynote Address-It's Time for Operating Systems to Rediscover Hardware
USENIX
Recommended 12× on HN · 2021–2026
8 mo on HNAT&T Archives: The UNIX Operating System
AT&T Tech Channel
Recommended 10× on HN · 2013–2026
8 mo on HNTempleOS | Down the Rabbit Hole
Fredrik Knudsen
Recommended 7× on HN · 2019–2022
7 mo on HNUnix and Google
FOAM
Recommended 4× on HN · 2016–2023
6 mo on HNBryan Cantrill on Jails and Solaris Zones
PapersWeLove
Recommended 6× on HN · 2016–2025
6 mo on HNContainers From Scratch • Liz Rice • GOTO 2018
GOTO Conferences
Recommended 6× on HN · 2018–2025
6 mo on HNUser-level threads....... with threads. - Paul Turner - Google
Linux Plumbers Conference
Recommended 6× on HN · 2013–2024
5 mo on HNBryan Cantrill from Joyent on Manta: internet-facing object storage facility that features compute
AI Council
Recommended 4× on HN · 2014–2026
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