Krace: Data Race Fuzzing for Kernel File Systems

Krace: Data Race Fuzzing for Kernel File Systems

IEEE Symposium on Security and Privacy via YouTube Direct link

A data race in the kernel

5 of 29

5 of 29

A data race in the kernel

Class Central Classrooms beta

YouTube videos curated by Class Central.

Classroom Contents

Krace: Data Race Fuzzing for Kernel File Systems

Automatically move to the next video in the Classroom when playback concludes

  1. 1 Intro
  2. 2 Let's talk about data race
  3. 3 The classic race condition example
  4. 4 High level of concurrency in the Linux kernel
  5. 5 A data race in the kernel
  6. 6 Fuzzing as a way to explore the program
  7. 7 Code coverage as an approximation
  8. 8 The conventional fuzzing process
  9. 9 Back to our data race example
  10. 10 Bring out data races explicitly with a checker
  11. 11 Checking data races - locking
  12. 12 Checking data races - ordering (causality)
  13. 13 A slightly complicated data race
  14. 14 Case simplified
  15. 15 All interleavings yield to the same code coverage!
  16. 16 Incompleteness of CFG edge coverage
  17. 17 A multi-dimensional view of coverage in fuzzing
  18. 18 Visualizing the concurrency dimension
  19. 19 Bring fuzzing to the concurrency dimension
  20. 20 Concurrency coverage tracking
  21. 21 A straw-man solution
  22. 22 Observations on practical interleaving tracking
  23. 23 Aliased-instruction coverage
  24. 24 Active interleaving exploration - ideal case
  25. 25 Active interleaving exploration through delay injection
  26. 26 Bring them all together
  27. 27 Alias coverage growth will be saturating
  28. 28 Edge and alias coverage goes generally in synchronization
  29. 29 Conclusion and contribution

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.