Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (seongtaejeong at gmail.com)
홈페이지
첨부 파일
 

Windows - 최대 절전 모드 시 DRIVER_POWER_STATE_FAILURE 발생 (pacer.sys)

이상하군요, 어느 순간부터 최대 절전 모드로 들어가면 평소와는 달리 길게 시간을 끌더니만 그냥 꺼지는 현상이 발생합니다. 한 번은 모니터를 켜놓고 어떻게 되는지 확인했는데, 블루스크린이 뜨는 경우도 있었고 그것도 없이 그냥 종료해 버리는 경우도 있었습니다.

블루스크린으로 생성된 덤프 파일을 WinDbg로 확인해 보면 이런 내용이 나옵니다.

************* Preparing the environment for Debugger Extensions Gallery repositories **************
...[생략]...

For analysis of this file, run !analyze -v
nt!KeBugCheckEx:
fffff803`63014f10 48894c2408      mov     qword ptr [rsp+8],rcx ss:0018:fffff60f`e9fdf6f0=000000000000009f

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

DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an IRP for too long a time
Arg2: ffff8389105ebab0, Physical Device Object of the stack
Arg3: fffff60fe9fdf738, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffff83894b757550, The blocked IRP

Debugging Details:
------------------

...[생략]...

PROCESS_NAME:  System

STACK_TEXT:  
fffff60f`f9f1e420 fffff803`62e1e385     : ffffa680`42911180 00000000`00000000 ffff8389`105b3040 00000000`00000000 : nt!KiSwapContext+0x76
fffff60f`f9f1e560 fffff803`62e1f7a7     : 00000000`00000000 fffff803`00000000 00000000`00000001 00000000`00000000 : nt!KiSwapThread+0xaa5
fffff60f`f9f1e6b0 fffff803`62e7f366     : ffff8389`00000000 00000000`00000001 ffff8389`00000000 00000000`00000000 : nt!KiCommitThreadWait+0x137
fffff60f`f9f1e760 fffff803`67a8b441     : fffff60f`f9f1eb70 ffff8389`32aa31a0 fffff60f`f9f1ec70 00000000`00000001 : nt!KeWaitForSingleObject+0x256
fffff60f`f9f1eb00 fffff803`679c4e99     : ffff8389`00000000 ffff8389`32aa31a0 fffff60f`f9f1ec70 00000000`00000000 : ndis!ndisWaitForKernelObject+0x21
fffff60f`f9f1eb40 fffff803`67ac6101     : 00000000`00000000 00000000`00000000 fffff60f`f9f1ec70 00000000`00000001 : ndis!ndisAcquireMiniportPnPEventLock+0x28bb9
fffff60f`f9f1eb70 fffff803`67994eb7     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c7620 : ndis!ndisPnPNotifyAllTransports+0xb1
fffff60f`f9f1ecb0 fffff803`62e80aba     : ffff8389`330c7620 ffff8389`59ecb0b4 fffff60f`f9f1ef00 fffff60f`f9f1f248 : ndis!ndisFNetPnPEventInternal+0x187
fffff60f`f9f1ede0 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1eed8 ffff8389`330c7620 00000000`00000000 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1ee50 fffff803`67995601     : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1ee90 fffff803`67995501     : 00000000`00000000 ffff8389`330c7620 fffff60f`f9f1f350 00000000`00000000 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1ef10 fffff803`67994e04     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c6410 : ndis!ndisFForwardNetPnPEventToFilter+0x55
fffff60f`f9f1f020 fffff803`62e80aba     : 00000000`00000001 ffff8389`59ecb0b4 fffff60f`f9f1f270 fffff60f`f9f1f648 : ndis!ndisFNetPnPEventInternal+0xd4
fffff60f`f9f1f150 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1f248 ffff8389`330c6410 fffff803`66a912d3 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1f1c0 fffff803`67995601     : 00000000`04b404dc fffff60f`f9f1f288 00000000`0000000d 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1f200 fffff803`69ab8eb4     : 00000000`00000004 ffff8389`330c6410 fffff60f`f9f1f350 fffff60f`f9f1f648 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1f280 fffff803`67a8e69b     : ffff8389`330c6410 ffff8389`326cadb0 00000000`00000001 fffff803`67a91446 : pacer!PcFilterPnPEvent+0x14
fffff60f`f9f1f2b0 fffff803`67995583     : ffff8389`330c6410 fffff60f`f9f1f3b9 ffff8389`330c6410 fffff60f`f9f1f7d0 : ndis!ndisFInvokeNetPnPEvent+0x77
fffff60f`f9f1f310 fffff803`67994e04     : 00000000`00000000 00000000`00000000 00000000`00000000 ffff8389`330c4240 : ndis!ndisFForwardNetPnPEventToFilter+0xd7
fffff60f`f9f1f420 fffff803`62e80aba     : ffff8389`330c4240 ffff8389`59ecb0b4 fffff60f`f9f1f670 fffff803`67a73048 : ndis!ndisFNetPnPEventInternal+0xd4
fffff60f`f9f1f550 fffff803`62e80a2d     : fffff803`67994d30 fffff60f`f9f1f648 ffff8389`330c4240 ffff8389`133f6938 : nt!KeExpandKernelStackAndCalloutInternal+0x7a
fffff60f`f9f1f5c0 fffff803`67995601     : 00000000`00000928 00000000`0000009c 00000000`00000000 00000000`00000000 : nt!KeExpandKernelStackAndCalloutEx+0x1d
fffff60f`f9f1f600 fffff803`67995501     : ffff8389`104b81cc ffff8389`330c4240 fffff60f`f9f1f7d0 fffff60f`f9f1f718 : ndis!NdisFNetPnPEvent+0x51
fffff60f`f9f1f680 fffff803`67994be6     : ffff8389`00000000 ffff8389`32aa31a0 ffff8389`32aa31a0 fffff60f`f9f1f920 : ndis!ndisFForwardNetPnPEventToFilter+0x55
fffff60f`f9f1f790 fffff803`67ac63ca     : ffff8389`32aa31a0 ffff8389`4b757668 ffff8389`32aa31a0 00000000`00000000 : ndis!ndisDevicePnPEventNotifyFiltersAndAllTransports+0xfa
fffff60f`f9f1f8c0 fffff803`67995d2d     : ffff8389`4b757550 ffff8389`105ebab0 ffff8389`4b757668 ffff8389`32aa31a0 : ndis!ndisQueryPower+0x18e
fffff60f`f9f1fa20 fffff803`62e0362a     : ffff8389`59ecb040 fffff60f`f9f1fb00 fffff803`6383a100 ffff8389`32aa3050 : ndis!ndisPowerDispatch+0x1cd
fffff60f`f9f1fa80 fffff803`62f4d247     : ffff8389`00000002 ffffffff`fa0a1f00 fffff803`62e033d0 00000000`00000000 : nt!PopIrpWorker+0x25a
fffff60f`f9f1fb30 fffff803`6301a084     : ffffa680`42d11180 ffff8389`59ecb040 fffff803`62f4d1f0 00000000`00000246 : nt!PspSystemThreadStartup+0x57
fffff60f`f9f1fb80 00000000`00000000     : fffff60f`f9f20000 fffff60f`f9f19000 00000000`00000000 00000000`00000000 : nt!KiStartSystemThread+0x34


SYMBOL_NAME:  pacer!PcFilterPnPEvent+14

MODULE_NAME: pacer

IMAGE_NAME:  pacer.sys

IMAGE_VERSION:  10.0.22621.3952

STACK_COMMAND:  .process /r /p 0xffff8389104ff040; .thread 0xffff838959ecb040 ; kb

BUCKET_ID_FUNC_OFFSET:  14

FAILURE_BUCKET_ID:  0x9F_3_POWER_DOWN_pacer!PcFilterPnPEvent

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

FAILURE_ID_HASH:  {bc1e8814-1104-9f6d-a9de-f6b5bc67aa27}

Followup:     MachineOwner
---------

다른 덤프도 확인했으나 모두 같은 출력이 나왔습니다. 그러니까, 확실히 pacer.sys 드라이버 측에서 전원 관리에 문제가 발생하고 있는 것입니다.

그나저나, pacer.sys가 뭔지 검색해 보면 "QoS Packet Scheduler"라고 하는데요, 어쨌든 문제는 없게 만들어야 하니 제어판에서 "Network and Sharing Center"의 "Change adapter settings" 링크로 들어가 열람할 수 있는 "Network Connections"에 대해 "QoS Packet Scheduler" 관련 옵션을 모두 해제했습니다.

disable_qos_packet_scheduler_1.png

다행히, 이후로는 최대 절전 모드로 잘 진입합니다. ^^




저 문제가 발생하고 며칠 후 다시 현상을 재현하려고 QoS 옵션을 켰는데, 이제는 문제가 발생하지 않았고 혹시나 싶어 pacer.sys의 파일 버전을 확인했더니 (이전에는 10.0.22621.3952였는데) 10.0.22621.2506으로 바뀌었습니다. 낮아진 걸로 봐서는 업데이트로 인해 롤백이 된 것이 아닌가... 싶습니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 2/3/2025]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  [11]  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13667정성태7/7/20246603닷넷: 2273. C# - 리눅스 환경에서의 Hyper-V Socket 연동 (AF_VSOCK)파일 다운로드1
13666정성태7/7/20247682Linux: 74. C++ - Vsock 예제 (Hyper-V Socket 연동)파일 다운로드1
13665정성태7/6/20247855Linux: 73. Linux 측의 socat을 이용한 Hyper-V 호스트와의 vsock 테스트파일 다운로드1
13663정성태7/5/20247470닷넷: 2272. C# - Hyper-V Socket 통신(AF_HYPERV, AF_VSOCK)의 VMID Wildcards 유형파일 다운로드1
13662정성태7/4/20247475닷넷: 2271. C# - WSL 2 VM의 VM ID를 알아내는 방법 - Host Compute System API파일 다운로드1
13661정성태7/3/20247392Linux: 72. g++ - 다른 버전의 GLIBC로 소스코드 빌드
13660정성태7/3/20247499오류 유형: 912. Visual C++ - Linux 프로젝트 빌드 오류
13659정성태7/1/20247839개발 환경 구성: 715. Windows - WSL 2 환경의 Docker Desktop 네트워크
13658정성태6/28/20248213개발 환경 구성: 714. WSL 2 인스턴스와 호스트 측의 Hyper-V에 운영 중인 VM과 네트워크 연결을 하는 방법 - 두 번째 이야기
13657정성태6/27/20247892닷넷: 2270. C# - Hyper-V Socket 통신(AF_HYPERV, AF_VSOCK)을 위한 EndPoint 사용자 정의
13656정성태6/27/20248053Windows: 264. WSL 2 VM의 swap 파일 위치
13655정성태6/24/20247830닷넷: 2269. C# - Win32 Resource 포맷 해석파일 다운로드1
13654정성태6/24/20247783오류 유형: 911. shutdown - The entered computer name is not valid or remote shutdown is not supported on the target computer.
13653정성태6/22/20247917닷넷: 2268. C# 코드에서 MAKEINTREOURCE 매크로 처리
13652정성태6/21/20249230닷넷: 2267. C# - Linux 환경에서 (Reflection 없이) DLL AssemblyFileVersion 구하는 방법파일 다운로드2
13651정성태6/19/20248468닷넷: 2266. C# - (Reflection 없이) DLL AssemblyFileVersion 구하는 방법파일 다운로드1
13650정성태6/18/20248391개발 환경 구성: 713. "WSL --debug-shell"로 살펴보는 WSL 2 VM의 리눅스 환경
13649정성태6/18/20247945오류 유형: 910. windbg - !py 확장 명령어 실행 시 "failed to find python interpreter" (2)
13648정성태6/17/20248261오류 유형: 909. C# - DynamicMethod 사용 시 System.TypeAccessException
13647정성태6/16/20249312개발 환경 구성: 712. Windows - WSL 2의 네트워크 통신 방법 - 세 번째 이야기 (같은 IP를 공유하는 WSL 2 인스턴스) [1]
13646정성태6/14/20247735오류 유형: 908. Process Explorer - "Error configuring dump resources: The system cannot find the file specified."
13645정성태6/13/20248197개발 환경 구성: 711. Visual Studio로 개발 시 기본 등록하는 dev tag 이미지로 Docker Desktop k8s에서 실행하는 방법
13644정성태6/12/20248843닷넷: 2265. C# - System.Text.Json의 기본적인 (한글 등에서의) escape 처리 [1]
13643정성태6/12/20248294오류 유형: 907. MySqlConnector 사용 시 System.IO.FileLoadException 오류
13642정성태6/11/20248192스크립트: 65. 파이썬 - asgi 버전(2, 3)에 따라 달라지는 uvicorn 호스팅
13641정성태6/11/20248655Linux: 71. Ubuntu 20.04를 22.04로 업데이트
1  2  3  4  5  6  7  8  9  10  [11]  12  13  14  15  ...