POP_CURRENT_BROADCAST

The POP_CURRENT_BROADCAST structure (formally _POP_CURRENT_BROADCAST) is the type of the kernel’s internal variable PopCurrentBroadcast. This can be helpful to know when debugging problems with power management.

Documentation Status

As merely the type of an internal variable, the POP_CURRENT_BROADCAST is not documented.

Variability

Also because the POP_CURRENT_BROADCAST is used only as the type of a variable that the kernel does not expose even to other kernel-mode software, it is highly susceptible to changing between builds. And yet, it has not ever changed. It is 0x10 and 0x18 bytes in 32-bit and 64-bit WIndows, respectively, in all versions from 6.2 up to and including the 2004 release of Windows 10.

Layout

The offsets, names and types below are from type information in public symbol files for the kernel, starting with Windows 8. What’s known of it for Windows 7 is inferred from comparing this version’s use of the PopCurrentBroadcast variable with that of later versions.

Offset (x86) Offset (x64) Definition Versions
0x00 0x00
BOOLEAN InProgress;
6.1 and higher
0x04 0x04
SYSTEM_POWER_STATE_CONTEXT SystemContext;
6.1 and higher
0x08 0x08
POWER_ACTION PowerAction;
6.1 and higher
0x0C 0x10
POP_DEVICE_SYS_STATE *DeviceState;
6.1 and higher