当前位置: 首页 > news >正文

ACPI!GetPciAddress到ACPI!GetPciAddressWorker完成后会调用state->CompletionRoutine:ACPI!PciConfigSpaceHandler

ACPI!GetPciAddress到ACPI!GetPciAddressWorker完成后会调用state->CompletionRoutine:ACPI!PciConfigSpaceHandler
1: kd> kc
#
00 ACPI!GetPciAddress
01 ACPI!PciConfigSpaceHandlerWorker
02 ACPI!PciConfigSpaceHandler
03 ACPI!InternalOpRegionHandler
04 ACPI!WriteCookAccess
05 ACPI!RunContext
06 ACPI!InsertReadyQueue
07 ACPI!RestartCtxtPassive
08 ACPI!ACPIWorker
09 nt!PspSystemThreadStartup
0a nt!KiThreadStartup
1: kd> dv
PciObj = 0x899affac
CompletionRoutine = 0xf740d62c
Context = 0x89987378
Bus = 0x899873b0 ""
Slot = 0x899873ac

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 ''

+0x024 CompletionRoutine : 0xf740d62c void ACPI!PciConfigSpaceHandlerWorker+0
完成例程会再次进入函数ACPI!PciConfigSpaceHandlerWorker,
再次进入函数ACPI!PciConfigSpaceHandlerWorker,下面的不会运行,
会继续向下运行,因为已经得到了state->Bus和state->Slot。

if (!interface) {

if (!(state->Flags & PCISUPP_GOT_SLOT_INFO)) {

state->Flags |= PCISUPP_GOT_SLOT_INFO;

status = GetPciAddress(state->PciObj,
PciConfigSpaceHandlerWorker,
(PVOID)state,
&state->Bus,
&state->Slot);

http://www.jsqmd.com/news/268681/

相关文章:

  • 解决精密装配难题:这家值得推荐的电爪品牌以高精度和可靠性脱颖而出 - 品牌2025
  • 在组件外使用Vuex的几种方法
  • 2026/1/19
  • 降本增效:XinServer 如何帮助全栈工程师加速项目上线?
  • Hugging Face 命令失效问题解析: huggingface-cli: command not found -问题解决有效方案
  • 2026 十大图库推荐:自媒体、小红书、公众号配图素材网站盘点 - 品牌2025
  • 盲盒经济持续升温,如何解锁消费新场景?
  • 【dz-1012】小型无士栽培自动控制系统设计与实现
  • 2026年十字传动轴市场,口碑厂家大盘点,球齿传动轴/联轴器/传动轴/球齿联轴器/齿式联轴器,十字传动轴企业推荐排行榜 - 品牌推荐师
  • gitlab-ce 的简单使用
  • Springboot小树立社工服务中心管理信息系统9mpe3(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 写这个方法的人真是个不折不扣的大SB_Ruoyi
  • 【dz-1015】基于STM32单片机智能鱼缸
  • 强烈安利MBA必备AI论文软件TOP8
  • 【dz-1009】基于单片机的智能头盔设计
  • 【dz-1008】基于单片机的环境监测系统设计
  • Springboot手机销售管理系统4g5v5(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 软件测试常见面试题汇总(2026版)
  • 高校推荐SPSS国产替代软件有哪些:32倍速提升(案例库) - 品牌排行榜
  • Python零基础玩AI艺术:印象派生成API调用指南
  • 【数据分享】上市公司高管风险偏好数据+dofile(2007-2024年)
  • 男女初婚年龄延后的多维解析:从个人选择到社会转型
  • 【dz-1014】基于单片机的智能药箱
  • 2025年度经济数据点评:稳中有进,向新向优收官“十四五”
  • 【dz-1010】基于单片机的药品生产车间环境监测
  • 更弱智的算法学习 day48
  • Flux.1-dev创意变现:非商用的合法途径
  • 【dz-1011】酒窖存储环境监测与控制系统设计
  • 学生党福利:NewBie-image-Exp0.1云端体验,比买显卡省90%
  • 数字员工提升AI销冠系统与AI提效软件系统的生产力和运营效益