1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 14:37:46 +00:00

Kernel: Add the ability to verify we don't kmalloc under spinlock.

Ideally we would never allocate under a spinlock, as it has many
performance and potentially functionality (deadlock) pitfalls.

We violate that rule in many places today, but we need a tool to track
them all down and fix them. This change introduces a new macro option
named `KMALLOC_VERIFY_NO_SPINLOCK_HELD` which can catch these
situations at runtime via an assert.
This commit is contained in:
Brian Gianforcaro 2021-05-14 04:09:06 -07:00 committed by Andreas Kling
parent 6329e9fce6
commit 9c38475608
3 changed files with 18 additions and 0 deletions

View file

@ -65,6 +65,7 @@ set(PORTABLE_IMAGE_LOADER_DEBUG ON)
set(SYNTAX_HIGHLIGHTING_DEBUG ON)
set(KEYBOARD_SHORTCUTS_DEBUG ON)
set(KMALLOC_DEBUG ON)
set(KMALLOC_VERIFY_NO_SPINLOCK_HELD ON)
set(MARKDOWN_DEBUG ON)
set(REGEX_DEBUG ON)
set(TLS_DEBUG ON)