Tracking down undefined behaviour in Servo
by Josh Bowman-Matthews
Servo is a web rendering engine written in Rust that relies on a lot of unsafe code. What actually happens when that unsafe code breaks the language’s rules?
We’ll walk through a mysterious panic in Servo that took two weeks to understand and resolve, explore how undefined behaviour in a program can manifest, and discuss techniques to catch similar issues before they ships.
Josh Bowman-Matthews
he/himServo maintainer
Josh has worked on web browsers and distributed systems at Mozilla and Cash App, but he’s currently a part time Servo maintainer and full time dad. He can truthfully claim 15 years of continuous experience writing Rust code. He also sings in a barbershop quartet called the Bearded Baritones.