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

비밀번호

댓글 작성자
 




... 121  122  123  124  125  126  127  128  129  130  131  [132]  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
1756정성태9/23/201427489기타: 48. NVidia 제품의 과다한 디스크 사용 [2]
1755정성태9/22/201434281오류 유형: 241. Unity Web Player를 설치해도 여전히 설치하라는 화면이 나오는 경우 [4]
1754정성태9/22/201424669VC++: 80. 내 컴퓨터에서 C++ AMP 코드가 실행이 될까요? [1]
1753정성태9/22/201420612오류 유형: 240. Lync로 세미나 참여 시 소리만 들리지 않는 경우 [1]
1752정성태9/21/201441071Windows: 100. 윈도우 8 - RDP 연결을 이용해 VNC처럼 사용자 로그온 화면을 공유하는 방법 [5]
1751정성태9/20/201438957.NET Framework: 464. 프로세스 간 통신 시 소켓 필요 없이 간단하게 Pipe를 열어 통신하는 방법 [1]파일 다운로드1
1750정성태9/20/201423834.NET Framework: 463. PInvoke 호출을 이용한 비동기 파일 작업파일 다운로드1
1749정성태9/20/201423733.NET Framework: 462. 커널 객체를 위한 null DACL 생성 방법파일 다운로드1
1748정성태9/19/201425386개발 환경 구성: 238. [Synergy] 여러 컴퓨터에서 키보드, 마우스 공유
1747정성태9/19/201428502오류 유형: 239. psexec 실행 오류 - The system cannot find the file specified.
1746정성태9/18/201426106.NET Framework: 461. .NET EXE 파일을 닷넷 프레임워크 버전에 상관없이 실행할 수 있을까요? - 두 번째 이야기 [6]파일 다운로드1
1745정성태9/17/201423039개발 환경 구성: 237. 리눅스 Integration Services 버전 업그레이드 하는 방법 [1]
1744정성태9/17/201431065.NET Framework: 460. GetTickCount / GetTickCount64와 0x7FFE0000 주솟값 [4]파일 다운로드1
1743정성태9/16/201420985오류 유형: 238. 설치 오류 - Failed to get size of pseudo bundle
1742정성태8/27/201426976개발 환경 구성: 236. Hyper-V에 설치한 리눅스 VM의 VHD 크기 늘리는 방법 [2]
1741정성태8/26/201421334.NET Framework: 459. GetModuleHandleEx로 알아보는 .NET 메서드의 DLL 모듈 관계파일 다운로드1
1740정성태8/25/201432525.NET Framework: 458. 닷넷 GC가 순환 참조를 해제할 수 있을까요? [2]파일 다운로드1
1739정성태8/24/201426565.NET Framework: 457. 교착상태(Dead-lock) 해결 방법 - Lock Leveling [2]파일 다운로드1
1738정성태8/23/201422054.NET Framework: 456. C# - CAS를 이용한 Lock 래퍼 클래스파일 다운로드1
1737정성태8/20/201419765VS.NET IDE: 93. Visual Studio 2013 동기화 문제
1736정성태8/19/201425581VC++: 79. [부연] CAS Lock 알고리즘은 과연 빠른가? [2]파일 다운로드1
1735정성태8/19/201418238.NET Framework: 455. 닷넷 사용자 정의 예외 클래스의 최소 구현 코드 - 두 번째 이야기
1734정성태8/13/201419900오류 유형: 237. Windows Media Player cannot access the file. The file might be in use, you might not have access to the computer where the file is stored, or your proxy settings might not be correct.
1733정성태8/13/201426363.NET Framework: 454. EmptyWorkingSet Win32 API를 사용하는 C# 예제파일 다운로드1
1732정성태8/13/201434481Windows: 99. INetCache 폴더가 다르게 보이는 이유
1731정성태8/11/201427087개발 환경 구성: 235. 점(.)으로 시작하는 파일명을 탐색기에서 만드는 방법
... 121  122  123  124  125  126  127  128  129  130  131  [132]  133  134  135  ...