Bugcheck: CRITICAL_STRUCTURE_CORRUPTION (109)

I got this on Windows 8.1 today but my driver don’t do anything strange so
hopefully it was “too warm computer” or something like that?

/Bo Brantén

3: kd> !analyze -v
*******************************************************************************
*
*
* Bugcheck Analysis
*
*
*
*******************************************************************************

CRITICAL_STRUCTURE_CORRUPTION (109)
This bugcheck is generated when the kernel detects that critical kernel
code or data have been corrupted. There are generally three causes for a
corruption:

  1. A driver has inadvertently or deliberately modified critical kernel
    code or data. See
    http://www.microsoft.com/whdc/driver/kernel/64bitPatching.mspx
  2. A developer attempted to set a normal kernel breakpoint using a kernel
    debugger that was not attached when the system was booted. Normal
    breakpoints, “bp”, can only be set if the debugger is attached at boot
    time. Hardware breakpoints, “ba”, can be set at any time.
  3. A hardware corruption occurred, e.g. failing RAM holding kernel code or
    data.
    Arguments:
    Arg1: a3a01f58afc8b8a2, Reserved
    Arg2: b3b72bdf0248bdfd, Reserved
    Arg3: ffffd001995e90c0, Failure type dependent information
    Arg4: 0000000000000002, Type of corrupted region, can be
    0 : A generic data region
    1 : Modification of a function or .pdata
    2 : A processor IDT
    3 : A processor GDT
    4 : Type 1 process list corruption
    5 : Type 2 process list corruption
    6 : Debug routine modification
    7 : Critical MSR modification

> hopefully it was “too warm computer” or something like that?

Is it reproducible in a stable way, or random with different parameters each time?

Also look at computer temperatures, >=60C is evil.


Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.com
http://www.storagecraft.com

>Also look at computer temperatures, >=60C is evil.

Tmax for most CPUs is 100 ºC, for some Xeons it’s higher. Also would find it
pretty weird if only temperature could exactly modify the IDT though nothing
is impossible.

//Daniel

I think the problem was that I used to old version of “OSR DebugMon”, it
suported only Vista (v4.5/6.0.6000.16386) but they have a never version
I can try, it sounds like the kind of driver that might corrupt internal
structures.

/Bo Brantén