伊犁哈萨克自治州网站建设_网站建设公司_Java_seo优化
2026/1/20 9:22:48 网站建设 项目流程

ACPI!ACPIGet函数中的全局变量acpi!AcpiGetListEntry对于分析有用可以知道当前正在处理几个acpi!AcpiGet

1: kd> t
eax=899affac ebx=89987378 ecx=899873ac edx=899bf408 esi=f740d62c edi=899bf434
eip=f740ceea esp=f791abe8 ebp=f791ac04 iopl=0 nv up ei ng nz na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000286
ACPI!GetPciAddressWorker:
f740ceea 55 push ebp
1: kd> kc
#
00 ACPI!GetPciAddressWorker
01 ACPI!GetPciAddress
02 ACPI!PciConfigSpaceHandlerWorker
03 ACPI!PciConfigSpaceHandler
04 ACPI!InternalOpRegionHandler
05 ACPI!WriteCookAccess
06 ACPI!RunContext
07 ACPI!InsertReadyQueue
08 ACPI!RestartCtxtPassive
09 ACPI!ACPIWorker
0a nt!PspSystemThreadStartup
0b nt!KiThreadStartup
1: kd> dv
AcpiObject = 0x899affac
Status = 0n0
Result = 0x00000000
Context = 0x899bf408
buffer = unsigned char [64] ""
1: kd> dt GET_ADDRESS_CONTEXT 0x899bf408
ACPI!GET_ADDRESS_CONTEXT
+0x000 PciObject : 0x899affac _NSObj
+0x004 Bus : 0x899873b0 ""
+0x008 Slot : 0x899873ac _PCI_SLOT_NUMBER
+0x00c ParentBus : 0 ''
+0x010 ParentSlot : _PCI_SLOT_NUMBER
+0x014 Flags : 0
+0x018 Address : 0
+0x01c BaseBusNumber : 0
+0x020 RunCompletion : 0n-1
+0x024 CompletionRoutine : 0xf740d62c void ACPI!PciConfigSpaceHandlerWorker+0
+0x028 CompletionContext : 0x89987378 Void
1: kd> u f740d62c
ACPI!PciConfigSpaceHandlerWorker [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 544]:
f740d62c 55 push ebp
f740d62d 8bec mov ebp,esp
f740d62f 83ec44 sub esp,44h
f740d632 a1a88c43f7 mov eax,dword ptr [ACPI!__security_cookie (f7438ca8)]
f740d637 53 push ebx
f740d638 8b5d14 mov ebx,dword ptr [ebp+14h]
f740d63b 56 push esi
f740d63c 57 push edi
windbg> .open -a fffffffff740d62c
1: kd> dt PCI_CONFIG_STATE 0x89987378
ACPI!PCI_CONFIG_STATE
+0x000 AccessType : 1
+0x004 OpRegion : 0x899b0b50 _NSObj
+0x008 Address : 0xd8
+0x00c Size : 4
+0x010 Data : 0x8997dc28 -> 0x40e98102
+0x014 Context : 0
+0x018 CompletionHandler : 0xf7420914 Void
+0x01c CompletionContext : 0x8997c0ac Void
+0x020 PciObj : 0x899affac _NSObj
+0x024 ParentObj : (null)
+0x028 CompletionHandlerType : 0
+0x02c Flags : 0x100
+0x030 RunCompletion : 0n0
+0x034 Slot : _PCI_SLOT_NUMBER
+0x038 Bus : 0 ''
+0x039 IsPciDeviceResult : 0 ''

//
// First, determine the slot number.
//
if (!(state->Flags & PCISUPP_CHECKED_ADR)) {

//
// Get the _ADR.
//
state->Flags |= PCISUPP_CHECKED_ADR;
status = ACPIGetNSAddressAsync(
state->PciObject,
GetPciAddressWorker,
(PVOID)state,
&(state->Address),
NULL
);

if (status == STATUS_PENDING) {
return status;
}


Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03")) // _HID: Hardware ID
Name (_CID, EisaId ("PNP0A08")) // _CID: Compatible ID
Name (_BBN, 0x00) // _BBN: BIOS Bus Number
Name (_ADR, 0x00) // _ADR: Address


1: kd> t
eax=00000000 ebx=00000000 ecx=899bf420 edx=899bf408 esi=899bf408 edi=00000103
eip=f74076b8 esp=f791ab6c ebp=f791abe4 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000246
ACPI!ACPIGet:
f74076b8 55 push ebp
1: kd> kc
#
00 ACPI!ACPIGet
01 ACPI!GetPciAddressWorker
02 ACPI!GetPciAddress
03 ACPI!PciConfigSpaceHandlerWorker
04 ACPI!PciConfigSpaceHandler
05 ACPI!InternalOpRegionHandler
06 ACPI!WriteCookAccess
07 ACPI!RunContext
08 ACPI!InsertReadyQueue
09 ACPI!RestartCtxtPassive
0a ACPI!ACPIWorker
0b nt!PspSystemThreadStartup
0c nt!KiThreadStartup
1: kd> dv
Target = 0x899affac
ObjectID = 0x5244415f
Flags = 0x48040402
SimpleArgument = 0x00000000
SimpleArgumentSize = 0
CallBackRoutine = 0xf740ceea
CallBackContext = 0x899bf408
Buffer = 0x899bf420
BufferSize = 0x00000000++++


观察:
CallBackRoutine = 0xf740ceea
CallBackContext = 0x899bf408
1: kd> u f740ceea
ACPI!GetPciAddressWorker [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 986]:
f740ceea 55 push ebp
f740ceeb 8bec mov ebp,esp
f740ceed 83ec44 sub esp,44h
f740cef0 a1a88c43f7 mov eax,dword ptr [ACPI!__security_cookie (f7438ca8)]
f740cef5 53 push ebx
f740cef6 56 push esi
f740cef7 8b7514 mov esi,dword ptr [ebp+14h]
f740cefa 85f6 test esi,esi
1: kd> dt GET_ADDRESS_CONTEXT 0x899bf408
ACPI!GET_ADDRESS_CONTEXT
+0x000 PciObject : 0x899affac _NSObj
+0x004 Bus : 0x899873b0 ""
+0x008 Slot : 0x899873ac _PCI_SLOT_NUMBER
+0x00c ParentBus : 0 ''
+0x010 ParentSlot : _PCI_SLOT_NUMBER
+0x014 Flags : 8
+0x018 Address : 0
+0x01c BaseBusNumber : 0
+0x020 RunCompletion : 0n0
+0x024 CompletionRoutine : 0xf740d62c void ACPI!PciConfigSpaceHandlerWorker+0
+0x028 CompletionContext : 0x89987378 Void
1: kd> dx -id 0,0,899a2278 -r1 ((ACPI!unsigned char *)0x899873b0)
((ACPI!unsigned char *)0x899873b0) : 0x899873b0 : 0x0 [Type: unsigned char *]
0x0 [Type: unsigned char]

1: kd> dt _PCI_SLOT_NUMBER 0x899873ac -r
hal!_PCI_SLOT_NUMBER
+0x000 u : __unnamed
+0x000 bits : __unnamed
+0x000 DeviceNumber : 0y00000 (0)
+0x000 FunctionNumber : 0y000
+0x000 Reserved : 0y000000000000000000000000 (0)
+0x000 AsULONG : 0
观察:

Flags = 0x48040402

#define GET_REQUEST_INTEGER 0x00040000


//
// This is the mask for the requests
//
#define GET_REQUEST_MASK (GET_REQUEST_BUFFER | \
GET_REQUEST_DATA | \
GET_REQUEST_INTEGER | \
GET_REQUEST_STRING | \
GET_REQUEST_NOTHING)


#define GET_REQUEST_BUFFER 0x00010000
#define GET_REQUEST_DATA 0x00020000
#define GET_REQUEST_INTEGER 0x00040000
#define GET_REQUEST_STRING 0x00080000
#define GET_REQUEST_NOTHING 0x00100000


#define GET_PROP_ASYNCHRONOUS 0x40000000


if ( (Flags & GET_PROP_ASYNCHRONOUS) ) {

async = TRUE;

}


#define GET_PROP_NSOBJ_INTERFACE 0x08000000

if ( (Flags & GET_PROP_NSOBJ_INTERFACE) ) {

acpiObject = (PNSOBJ) Target;

}


1: kd> dv Target
Target = 0x899affac
1: kd> db 0x899affac
899affac 4c ff 9a 89 ac 40 9b 89-f0 f0 9a 89 24 00 9b 89 L....@......$...
899affbc 50 43 49 30 30 f3 9a 89-4c ff 9a 89 00 00 06 00 PCI00...L.......
899affcc 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................


#define GET_CONVERT_TO_DEVICE_PRESENCE 0x00000800
1: kd> dv flags
Flags = 0x48040402


request = ExAllocatePoolWithTag(
NonPagedPool,
sizeof(ACPI_GET_REQUEST),
ACPI_MISC_POOLTAG
);

1: kd> p
eax=899050a0 ebx=00000000 ecx=00000005 edx=00000009 esi=899050a0 edi=00000000
eip=f7407833 esp=f791ab2c ebp=f791ab68 iopl=0 nv up ei pl zr na pe nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00000246
ACPI!ACPIGet+0x17b:
f7407833 3bf7 cmp esi,edi

1: kd> dt ACPI_GET_REQUEST 899050a0
+0x000 Flags : 0x48040402
+0x000 UFlags : __unnamed
+0x004 ObjectID : 0x5244415f
+0x008 ListEntry : _LIST_ENTRY [ 0x0 - 0x0 ]
+0x010 DeviceExtension : (null)
+0x014 AcpiObject : 0x899affac _NSObj
+0x018 CallBackRoutine : 0xf740ceea void ACPI!GetPciAddressWorker+0
+0x01c CallBackContext : 0x899bf408 Void
+0x020 Buffer : 0x899bf420 -> (null)
+0x024 BufferSize : (null)
+0x028 Status : 0n0
+0x02c ResultData : _ObjData
1: kd> db 899050a0
899050a0 02 04 04 48 5f 41 44 52-00 00 00 00 00 00 00 00 ...H_ADR........
899050b0 00 00 00 00 ac ff 9a 89-ea ce 40 f7 08 f4 9b 89 ..........@.....
899050c0 20 f4 9b 89 00 00 00 00-00 00 00 00 00 00 00 00 ...............
899050d0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
899050e0 09 00 04 0a 41 6d 6c 54-00 c0 97 89 18 b3 43 f7 ....AmlT......C.
899050f0 18 b3 43 f7 46 07 42 f7-e8 50 90 89 00 00 00 00 ..C.F.B..P......
89905100 04 00 0a 0a 41 63 70 44-90 b8 43 f7 58 51 90 89 ....AcpD..C.XQ..
89905110 50 47 53 5f 0c 10 00 00-03 00 00 00 00 00 00 00 PGS_............


Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03")) // _HID: Hardware ID
Name (_CID, EisaId ("PNP0A08")) // _CID: Compatible ID
Name (_BBN, 0x00) // _BBN: BIOS Bus Number
Name (_ADR, 0x00) // _ADR: Address 有_ADR

//
// Make sure that we queue the request onto the list that we use to
// keep track of the requests


1: kd> x acpi!AcpiGetListEntry
f743b940 ACPI!AcpiGetListEntry = struct _LIST_ENTRY [ 0x899c6328 - 0x899c6328 ]
1: kd> dx -r1 (*((ACPI!_LIST_ENTRY *)0xf743b940))
(*((ACPI!_LIST_ENTRY *)0xf743b940)) [Type: _LIST_ENTRY]
[+0x000] Flink : 0x899c6328 [Type: _LIST_ENTRY *]
[+0x004] Blink : 0x899c6328 [Type: _LIST_ENTRY *]
1: kd> dx -r1 ((ACPI!_LIST_ENTRY *)0x899c6328)
((ACPI!_LIST_ENTRY *)0x899c6328) : 0x899c6328 [Type: _LIST_ENTRY *]
[+0x000] Flink : 0xf743b940 [Type: _LIST_ENTRY *]
[+0x004] Blink : 0xf743b940 [Type: _LIST_ENTRY *]

//
KeAcquireSpinLock( &AcpiGetLock, &oldIrql );
InsertTailList(
&(AcpiGetListEntry),
&(request->ListEntry)
);

KeReleaseSpinLock( &AcpiGetLock, oldIrql );


D:\>grep "AcpiGetListEntry" -nr D:\srv03rtm\base\busdrv\acpi|grep -v "inary"
D:\srv03rtm\base\busdrv\acpi/driver/nt/acpiosnt.c:187: InitializeListHead( &AcpiGetListEntry );
D:\srv03rtm\base\busdrv\acpi/driver/nt/get.c:226: &(AcpiGetListEntry),
D:\srv03rtm\base\busdrv\acpi/driver/nt/get.h:133: LIST_ENTRY AcpiGetListEntry;

1: kd> x acpi!AcpiGetListEntry
f743b940 ACPI!AcpiGetListEntry = struct _LIST_ENTRY [ 0x899c6328 - 0x899050a8 ]
1: kd> dx -r1 (*((ACPI!_LIST_ENTRY *)0xf743b940))
(*((ACPI!_LIST_ENTRY *)0xf743b940)) [Type: _LIST_ENTRY]
[+0x000] Flink : 0x899c6328 [Type: _LIST_ENTRY *]
[+0x004] Blink : 0x899050a8 [Type: _LIST_ENTRY *]
1: kd> dx -r1 ((ACPI!_LIST_ENTRY *)0x899c6328)
((ACPI!_LIST_ENTRY *)0x899c6328) : 0x899c6328 [Type: _LIST_ENTRY *]
[+0x000] Flink : 0x899050a8 [Type: _LIST_ENTRY *]
[+0x004] Blink : 0xf743b940 [Type: _LIST_ENTRY *]


1: kd> dt ACPI_GET_REQUEST 0x899050a8-8
+0x000 Flags : 0x48040402
+0x000 UFlags : __unnamed
+0x004 ObjectID : 0x5244415f
+0x008 ListEntry : _LIST_ENTRY [ 0xf743b940 - 0x899c6328 ]
+0x010 DeviceExtension : (null)
+0x014 AcpiObject : 0x899affac _NSObj
+0x018 CallBackRoutine : 0xf740ceea void ACPI!GetPciAddressWorker+0
+0x01c CallBackContext : 0x899bf408 Void
+0x020 Buffer : 0x899bf420 -> (null)
+0x024 BufferSize : (null)
+0x028 Status : 0n0
+0x02c ResultData : _ObjData

1: kd> dt ACPI_GET_REQUEST 0x899c6328-8
+0x000 Flags : 0x40040802
+0x000 UFlags : __unnamed
+0x004 ObjectID : 0x4154535f
+0x008 ListEntry : _LIST_ENTRY [ 0x899050a8 - 0xf743b940 ]
+0x010 DeviceExtension : 0x899aee58 _DEVICE_EXTENSION
+0x014 AcpiObject : 0x899b4804 _NSObj
+0x018 CallBackRoutine : 0xf73fa5bc void ACPI!ACPIBuildCompleteMustSucceed+0
+0x01c CallBackContext : 0x89906cd0 Void
+0x020 Buffer : 0x89906d14 -> (null)
+0x024 BufferSize : (null)
+0x028 Status : 0n0
+0x02c ResultData : _ObjData
1: kd> db 0x899c6328-8
899c6320 02 08 04 40 5f 53 54 41-a8 50 90 89 40 b9 43 f7 ...@_STA.P..@.C.
899c6330 58 ee 9a 89 04 48 9b 89-bc a5 3f f7 d0 6c 90 89 X....H....?..l..
899c6340 14 6d 90 89 00 00 00 00-00 00 00 00 00 00 00 00 .m..............
899c6350 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
899c6360 09 00 3b 0a 4f 62 6a d4-e0 1a 00 e1 0e 00 10 00 ..;.Obj.........
899c6370 30 88 00 e1 01 00 00 00-da 00 00 00 00 00 01 00 0...............
899c6380 48 7e 98 89 c0 69 9c 89-04 00 00 00 00 00 00 00 H~...i..........
899c6390 01 00 00 00 00 00 00 00-48 20 9a 89 28 00 00 17 ........H ..(...
1: kd> u f73fa5bc
ACPI!ACPIBuildCompleteMustSucceed [d:\srv03rtm\base\busdrv\acpi\driver\nt\buildsrc.c @ 399]:
f73fa5bc 55 push ebp
f73fa5bd 8bec mov ebp,esp
f73fa5bf 8b4d0c mov ecx,dword ptr [ebp+0Ch]
f73fa5c2 85c9 test ecx,ecx
f73fa5c4 8b4514 mov eax,dword ptr [ebp+14h]
f73fa5c7 8b5018 mov edx,dword ptr [eax+18h]
f73fa5ca 7d21 jge ACPI!ACPIBuildCompleteMustSucceed+0x31 (f73fa5ed)
f73fa5cc 8b5508 mov edx,dword ptr [ebp+8]

1: kd> dt ACPI_BUILD_REQUEST 0x89906cd0
+0x000 ListEntry : _LIST_ENTRY [ 0x89906c80 - 0xf743b870 ]
+0x008 Signature : 0x5f534750
+0x00c Flags : 0xc
+0x00c UFlags : __unnamed
+0x010 WorkDone : 1
+0x014 CurrentWorkDone : 3
+0x018 NextWorkDone : 4
+0x01c BuildContext : 0x899aee58Void
+0x020 Status : 0n0
+0x024 CurrentObject : (null)
+0x028 CallBack : (null)
+0x02c CallBackContext : (null)
+0x030 DeviceRequest : __unnamed
+0x030 RunRequest : __unnamed
+0x030 SynchronizeRequest : __unnamed
+0x044 Integer : 0
+0x044 String : (null)
+0x044 TargetListEntry : (null)
1: kd> dt ACPI!_device_extension 0x899aee58
+0x000 Flags : 0xa

+0x12c AcpiObject : 0x899b4804_NSObj
+0x130 DeviceObject : (null)
+0x134 TargetDeviceObject : (null)
+0x138 PhysicalDeviceObject : (null)
+0x13c ParentExtension : 0x89981a18 _DEVICE_EXTENSION
+0x140 ChildDeviceList : _LIST_ENTRY [ 0x899aef98 - 0x899aef98 ]
+0x148 SiblingDeviceList : _LIST_ENTRY [ 0x899aeda0 - 0x899ae150 ]
+0x150 EjectDeviceHead : _LIST_ENTRY [ 0x899aefa8 - 0x899aefa8 ]
+0x158 EjectDeviceList : _LIST_ENTRY [ 0x899aefb0 - 0x899aefb0 ]
1: kd> db 0x899b4804
899b4804 18 45 9b 89 70 4a 9b 89-f0 f0 9a 89 48 48 9b 89 .E..pJ......HH..
899b4814 42 41 54 32 30 f3 9a 89-84 47 9b 89 00 00 06 00BAT20....G......
899b4824 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
899b4834 58 ee 9a 89 00 00 00 00-48 4e 53 4f 44 00 00 00 X.......HNSOD...
899b4844 00 f0 9a 89 08 4a 9b 89-8c 48 9b 89 04 48 9b 89 .....J...H...H..
899b4854 00 00 00 00 5f 48 49 44-30 f3 9a 89 04 48 9b 89 ...._HID0....H..
899b4864 00 00 01 00 00 00 00 00-41 d0 0c 0a 00 00 00 00 ........A.......
899b4874 00 00 00 00 00 00 00 00-00 00 00 00 48 4e 53 4f ............HNSO

THREAD 899a1020 Cid 0004.0008 Teb: 00000000 Win32Thread: 00000000 RUNNING on processor 0
IRP List:
899bf5b0: (0006,0190) Flags: 00000000 Mdl: 00000000
Not impersonating
DeviceMap e10003d8
Owning Process 899a2278 Image: System
Attached Process N/A Image: N/A
Wait Start TickCount 274647546 Ticks: 138 (0:00:00:02.156)
Context Switch Count 9 IdealProcessor: 0
UserTime 00:00:00.000
KernelTime 00:00:00.828
Stack Init f789b000 Current f789a1b8 Base f789b000 Limit f7898000 Call 00000000
Priority 31 BasePriority 8 PriorityDecrement 0 IoPriority 0 PagePriority 0
ChildEBP RetAddr
f789edd8 804ee179 hal!HalpClockInterrupt+0x15a (FPO: [0,2] TrapFrame @ f789edd8) [d:\srv03rtm\base\hals\halmps\i386\mpclock.asm @ 554]
f789ee48 f74134e1 hal!KfReleaseSpinLock+0x29 (FPO: [0,0,0]) [d:\srv03rtm\base\hals\halmps\i386\mpspin.asm @ 273]
f789ee5c f74208c7 ACPI!OSQueueWorkItem+0x71 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\worker.c @ 377]
f789ee74 f741fb55 ACPI!RestartContext+0xf3 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\sched.c @ 354]
f789ee98 f74153a2 ACPI!AsyncEvalObject+0x28c (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\sync.c @ 343]
f789eecc f7407905 ACPI!AMLIAsyncEvalObject+0x160 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\amliapi.c @ 871]
f789ef28 f73fbc48ACPI!ACPIGet+0x24d(FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\get.c @ 275]
f789ef60 f73fb914 ACPI!ACPIBuildProcessRunMethodPhaseCheckSta+0x4e (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\buildsrc.c @ 5716]
f789ef84 f73fc619 ACPI!ACPIBuildProcessGenericList+0x50 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\buildsrc.c @ 4847]
f789ef9c 80a41432 ACPI!ACPIBuildDeviceDpc+0x67 (FPO: [4,0,0]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\buildsrc.c @ 553]
f789eff4 80b00756 nt!KiRetireDpcList+0xd6 (FPO: [Non-Fpo]) (CONV: fastcall) [d:\srv03rtm\base\ntos\ke\dpcsup.c @ 1076]
f789eff8 f789a124 nt!KiDispatchInterrupt+0x36 (FPO: [Uses EBP] [0,0,1]) [d:\srv03rtm\base\ntos\ke\i386\ctxswap.asm @ 226]
WARNING: Frame IP not in any known module. Following frames may be wrong.
80b00756 00000000 0xf789a124


THREAD 89981ca0 Cid 0004.0078 Teb: 00000000 Win32Thread: 00000000 RUNNING on processor 1
Not impersonating
DeviceMap e10003d8
Owning Process 899a2278 Image: System
Attached Process N/A Image: N/A
Wait Start TickCount 274647653 Ticks: 31 (0:00:00:00.484)
Context Switch Count 4 IdealProcessor: 1
UserTime 00:00:00.000
KernelTime 00:00:00.578
Stack Init f791b000 Current f791acc0 Base f791b000 Limit f7918000 Call 00000000
Priority 8 BasePriority 8 PriorityDecrement 0 IoPriority 0 PagePriority 0
ChildEBP RetAddr
f791ab68 f740cf5eACPI!ACPIGet+0x1ef(FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\get.c @ 237]
f791abe4 f740d3a8 ACPI!GetPciAddressWorker+0x74 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 1030]
f791ac04 f740d700 ACPI!GetPciAddress+0x70 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 974]
f791ac70 f740d9dd ACPI!PciConfigSpaceHandlerWorker+0xd4 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 654]
f791ac8c f742813d ACPI!PciConfigSpaceHandler+0x6d (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\nt\pciopregion.c @ 424]
f791acbc f7417e5f ACPI!InternalOpRegionHandler+0x67 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\shared\acpioprg.c @ 160]
f791acf4 f741d832 ACPI!WriteCookAccess+0x242 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\object.c @ 1437]
f791ad1c f7420671 ACPI!RunContext+0x122 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\ctxt.c @ 588]
f791ad44 f742079a ACPI!InsertReadyQueue+0x155 (FPO: [Non-Fpo]) (CONV: cdecl) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\sched.c @ 275]
f791ad64 f74133c5 ACPI!RestartCtxtPassive+0x54 (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\amlinew\sched.c @ 384]
f791adac 80d391f0 ACPI!ACPIWorker+0xbf (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\busdrv\acpi\driver\nt\worker.c @ 302]
f791addc 80b00d52 nt!PspSystemThreadStartup+0x2e (FPO: [Non-Fpo]) (CONV: stdcall) [d:\srv03rtm\base\ntos\ps\create.c @ 2213]
00000000 00000000 nt!KiThreadStartup+0x16 [d:\srv03rtm\base\ntos\ke\i386\threadbg.asm @ 81]

第二部分:什么时候移出节点。


//
// Done with the request
//
if (request != NULL) {

//
// Remove the request from the queue
//
KeAcquireSpinLock( &AcpiGetLock, &oldIrql );
RemoveEntryList( &(request->ListEntry) );
KeReleaseSpinLock( &AcpiGetLock, oldIrql );

//
// Free the storage
//
ExFreePool( request );

}

//
// Done
//
return status;

}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询