| Anterior | Siguiente |
| MAXIMUM_WAIT_OBJECTS_EXCEEDED | NO_USER_MODE_CONTEXT |
MUTEX_LEVEL_NUMBER_VIOLATION
Qué significa MUTEX_LEVEL_NUMBER_VIOLATION
MUTEX_LEVEL_NUMBER_VIOLATION (0x0D) es un bugcheck de orden de locks. Indica que la ruta adquirió primitives de sincronización en una jerarquía incompatible con la que el kernel espera para evitar deadlocks.
El problema es el orden global entre locks, no que uno de ellos esté “roto”. Dos paths que adquieren A→B y B→A pueden crear la inversión.
Qué comprobar en el dump
- Anote el orden de locks poseídos y el lock que se intenta adquirir en el stack.
- Compare todos los paths que toman ese conjunto de mutexes/resources.
- Defina una jerarquía única y haga que cada ruta la respete.
- Evite resolverlo con retries/timeouts; una inversión de lock order sigue siendo un deadlock potencial.
Referencias técnicas
- Introduction to spin locks
- Microsoft Bug Check Code Reference
- Crash dump files and WinDbg
- Microsoft: referencia de bug checks
¿Buscas un código diferente? Buscar otro código de estado o error.
