Skip to content

Conversation

@darugeri
Copy link
Contributor

No description provided.

@darugeri darugeri requested a review from a team as a code owner November 25, 2025 19:01
DECLARE_CONST_UNICODE_STRING(circuitUri, EXT_CAPTURE_CIRCUIT_URI);

#pragma prefast(suppress:__WARNING_ALIASED_MEMORY_LEAK, "memory is freed by scope_exit")
PSDCAXU_ACX_CIRCUIT_CONFIG exCircuitConfig = (PSDCAXU_ACX_CIRCUIT_CONFIG)ExAllocatePool2(

Check warning

Code scanning / CodeQL

Possible information leakage from uninitialized padding bytes. Warning

Memory allocation of
_SDCAXU_ACX_CIRCUIT_CONFIG
includes uninitialized padding bytes.
DECLARE_CONST_UNICODE_STRING(circuitUri, EXT_RENDER_CIRCUIT_URI);

#pragma prefast(suppress:__WARNING_ALIASED_MEMORY_LEAK, "memory is freed by scope_exit")
PSDCAXU_ACX_CIRCUIT_CONFIG exCircuitConfig = (PSDCAXU_ACX_CIRCUIT_CONFIG)ExAllocatePool2(

Check warning

Code scanning / CodeQL

Possible information leakage from uninitialized padding bytes. Warning

Memory allocation of
_SDCAXU_ACX_CIRCUIT_CONFIG
includes uninitialized padding bytes.
RETURN_NTSTATUS_IF_TRUE(pinConnection != nullptr, status);

pinConnectionSize = (ULONG)info;
pinConnection = (PKSPIN_PHYSICALCONNECTION)ExAllocatePool2(POOL_FLAG_NON_PAGED, pinConnectionSize, DRIVER_TAG);

Check warning

Code scanning / CodeQL

Possible information leakage from uninitialized padding bytes. Warning

Memory allocation of
KSPIN_PHYSICALCONNECTION
includes uninitialized padding bytes.
}
}

KeReleaseSpinLock(&m_BufferingStateSpinLock, irql);

Check warning

Code scanning / CodeQL

IRQL too low (C28120) Warning

CKeywordDetector::UpdateBufferingState
: IRQL potentially too low at call to
KeReleaseSpinLock
. Minimum IRQL for this call: 2, IRQL at preceding node: 15
}
}

KeReleaseSpinLock(&m_BufferingStateSpinLock, irql);

Check warning

Code scanning / CodeQL

IRQL too low (C28120) Warning

CKeywordDetector::NotifyDetection
: IRQL potentially too low at call to
KeReleaseSpinLock
. Minimum IRQL for this call: 2, IRQL at preceding node: 15
m_PartialFrameBytes = m_FrameSize - (DWORD)length;

Done:
KeRestoreFloatingPointState(&saveData);

Check warning

Code scanning / CodeQL

Irql Float State Mismatch Warning

The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (2) does not match the irql level f
//
// Restore floating state.
//
KeRestoreFloatingPointState(&saveData);

Check warning

Code scanning / CodeQL

Irql Float State Mismatch Warning

The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (2) does not match the irql level f
//
// Restore floating state.
//
KeRestoreFloatingPointState(&saveData);

Check warning

Code scanning / CodeQL

Irql Float State Mismatch Warning

The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (2) does not match the irql level f
ntStatus = ReadHeaderAndFillBuffer();

Done:
(void)KeRestoreFloatingPointState(&saveData);

Check warning

Code scanning / CodeQL

Irql Float State Mismatch Warning

The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (2) does not match the irql level f
ntStatus = ReadHeaderAndFillBuffer();

Done:
(void)KeRestoreFloatingPointState(&saveData);

Check warning

Code scanning / CodeQL

Irql Float State Mismatch Warning

The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (0) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (2).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (4).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (5).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (6).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (7).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (8).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (9).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (10).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (11).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (12).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (13).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (14).
The irql level where the floating-point state was saved (1) does not match the irql level for the restore operation (15).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (0).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (1).
The irql level where the floating-point state was saved (2) does not match the irql level for the restore operation (3).
The irql level where the floating-point state was saved (2) does not match the irql level f
@darugeri darugeri requested a review from saurinshah9 December 15, 2025 23:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants