Race conditions: practical tools and techniques for testing, preventing, and debugging.
Greg Law
There are many tools and techniques that can help: some well known, others less so. This talk contains few slides, lots of practical examples of how to test for them, and how to fix them. Includes introduction and advanced usage of Thread Sanitizer, Helgrind and DRD, how to get the most of GDB with threaded programs, super-lightweight and lock-free logging with L3, an introduction to use thread fuzzing, introduction to static analysis, and some tips and tricks on how to test for them and how to avoid them in the first place.
Greg Law
Greg has 25 yearsβ experience in the software industry and has held development and management roles at companies including the pioneering British computer firm Acorn, as well as fast-growing start ups, NexWave and Solarflare. It was at Acorn that Greg met Julian and on evenings and weekends, they invented the time-travel technology that would become the basis of Undo that is used today by developers at the world's leading tech companies to help them understand and root cause the most complex bugs -- as well as the day-to-day stuff.
Greg lives in Cambridge, UK with his wife, two teenagers, two dogs and two cats. In his spare time, he catches up on email.