버그 검사 0x4E: PFN_LIST_CORRUPT
PFN_LIST_CORRUPT 버그 검사 값은 0x0000004E. 이는 PFN(페이지 프레임 번호) 목록이 손상되었음을 나타냅니다.
중요
이 문서는 프로그래머용입니다. 컴퓨터를 사용하는 동안 파란색 화면 오류 코드를 받은 고객인 경우 블루 스크린 오류 문제 해결을 참조하세요.
PFN_LIST_CORRUPT 매개 변수
매개 변수 1 은 위반 유형을 나타냅니다. 다른 매개 변수의 의미는 매개 변수 1의 값에 따라 달라집니다.
매개 변수 1 | 매개 변수 2 | 매개 변수 3 | 매개 변수 4 | 오류 원인 |
---|---|---|---|---|
0x01 |
손상된 ListHead 값 |
사용 가능한 페이지 수 |
0 |
목록 헤드가 손상되었습니다. |
0x02 |
제거되는 목록의 항목 |
가장 높은 실제 페이지 번호 |
제거되는 항목의 참조 수 |
목록 항목이 손상되었습니다. |
0x06 |
페이지 프레임 번호 |
프로토타입 PTE |
PTE 콘텐츠 |
하드웨어 PTE 및/또는 프로토타입 PTE 데이터 구조가 손상되었습니다. 하드웨어 단일 비트 오류, 손상된 DMA 전송 등으로 인해 발생할 수 있습니다. |
0x07 |
페이지 프레임 번호 |
현재 공유 수 |
0 |
드라이버가 특정 페이지를 잠근 것보다 더 많은 시간 동안 잠금을 해제했습니다. |
0x8D |
상태가 일치하지 않는 페이지 프레임 번호 |
0 |
0 |
페이지가 없는 목록이 손상되었습니다. 이 오류 코드는 하드웨어 문제를 나타냅니다. |
0x8F |
새 페이지 번호 |
이전 페이지 번호 |
0 |
무료 또는 0 페이지 목록 헤드가 손상되었습니다. |
0x99 |
페이지 프레임 번호 |
현재 페이지 상태 |
0 |
PTE(페이지 테이블 항목) 또는 PFN이 손상되었습니다. |
0x9A |
페이지 프레임 번호 |
현재 페이지 상태 |
제거되는 항목의 참조 수입니다. |
드라이버가 IO에 대해 여전히 잠긴 페이지를 해제하려고 했습니다. |
원인
이 오류는 일반적으로 드라이버가 잘못된 메모리 설명자 목록을 전달하여 발생합니다. 예를 들어 드라이버는 동일한 목록을 사용하여 MmUnlockPages를 두 번 호출했을 수 있습니다.
커널 디버거를 사용할 수 있는 경우 스택 추적을 검사합니다. !analyze 디버그 확장은 버그 검사 대한 정보를 표시하고 근본 원인을 확인하는 데 유용할 수 있습니다. 그런 다음 k(스택 백트레이 표시) 명령 중 하나를 입력하여 호출 스택을 봅니다.