¿Qué significa el código BSOD 0xD (MUTEX_LEVEL_NUMBER_VIOLATION)?

 
También puede significar:
ConstanteTipoSO
ERROR_INVALID_DATAError de WindowsWindows
KERN_NAME_EXISTSRetorno del kernel de macOSmacOS
ippStsLSFLowEstado de Intel IPPCualquiera
EACCESerrnoCualquiera
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


¿Buscas un código diferente? Buscar otro código de estado o error.