|
[求助]minifilter 蓝屏问题
FckTheDog 不降级什么问题都没,发送内容保证不会PageOut不就okto FckTheDol,没有明白你的意思,能给我科普仔细点么。我的最开始代码是没有开降级的。不小的什么原因,writepost运行在dispatch了,要蓝屏,因为FltSendMessage <= APC,所以我才搞这个降级的。但是降级了依旧蓝屏。你提的这个“保证发送内容不会pageout”,这个要怎么保证呢。 |
|
[求助]minifilter 蓝屏问题
to hzqst:明白,就是要自己建的队列和线程来专门发送接收。谢谢 |
|
[求助]minifilter 蓝屏问题
hzqst FltSendMessage functionFltSendMessage sends a message to a waiting user-mode application ...是这样的,最开始是没有修改这东西的。但是还是蓝屏,所以我加了日志,发现这个时候post在DISPATCH_LEVEL,而FltSendMessage 需要IRQL <= APC_LEVEL,所以考虑修改降级。但是这个该了还是蓝屏。而且蓝屏的位置一模一样。ffffd000`47dfdd18 fffff800`be19e240 : 00000000`00000005 ffffe000`890ed080 ffffe000`85c2d680 00000000`00000001 : nt!KeBugCheckEx ffffd000`47dfdd20 fffff800`be435caa : 00000000`00000001 ffffe000`8797e750 ffffe000`89f1cf40 ffffd000`47dfde68 : nt! ?? ::FNODOBFM::`string'+0x33380 ffffd000`47dfdd70 fffff801`bd0ab26a : ffffe000`899d2a00 00000000`00000000 00000000`00000000 00000000`00000000 : nt!MmProbeAndLockProcessPages+0x56 ffffd000`47dfddf0 fffff801`bf8a81a7 : ffffe000`89511898 ffffe000`896d968a ffffd000`47dfdfc0 ffffd000`00000438 : fltmgr!FltSendMessage+0x24a ffffd000`47dfdf30 fffff801`bd0a5e8b : ffffe000`89511898 ffffd000`47dfe478 00000000`00000000 fffff801`00000000 : HiveMiniFilter!WritePostOperation+0x487 [g:\hive\hivefilecontrol\hiveminifilter\operation.c @ 852] ffffd000`47dfe430 fffff801`bd0a65ad : 00000000`00000000 ffffd000`47dfe620 ffffe000`89da6e60 ffffe000`891bd010 : fltmgr!FltpPerformPostCallbacks+0x34b ffffd000`47dfe500 fffff800`be09953e : ffffe000`891bd010 00000000`00000000 ffffe000`891bd173 ffffe000`893490d4 : fltmgr!FltpPassThroughCompletionWorker+0x7d ffffd000`47dfe570 fffff801`bd177ac5 : ffffe000`891bd010 00000000`00000001 00000000`00000000 00000000`00000000 : nt!IopfCompleteRequest+0x2ee ffffd000`47dfe6b0 fffff801`bd17a2db : 00000000`00000000 ffffe000`88873880 fffff801`bd19b010 ffffe000`86d5c401 : rdbss!RxCompleteRequestEx+0x1f5 ffffd000`47dfe760 fffff801`bd17c11f : ffffe000`87c5b030 00000000`00000000 00000000`00000000 fffff801`bf526010 : rdbss!RxLowIoCompletionTail+0xab ffffd000`47dfe7a0 fffff801`bf5652ad : ffffe000`87c5b030 ffffe000`89cd9de8 ffffe000`89cd9ed0 ffffe000`87bb5b50 : rdbss!RxLowIoCompletion+0x3f ffffd000`47dfe7e0 fffff801`bf4ef6c1 : ffffe000`00000000 ffffe000`00000000 ffffe000`88873880 ffffe000`87c5b030 : mrxsmb20!Smb2Write_Finalize+0x1cd ffffd000`47dfe850 fffff801`bf4f0dd9 : ffffe000`89bb8e10 ffffe000`89cd9ed0 ffffe000`862c1301 00000001`00000001 : mrxsmb!SmbCeSendCompleteInd+0x451 ffffd000`47dfe8f0 fffff800`be09953e : ffffe000`894db8a0 ffffd000`47dfea40 00000000`00000000 ffffe000`894db973 : mrxsmb!SmbWskSendComplete+0xc9 ffffd000`47dfe940 fffff801`bde02dd2 : ffffe000`894db8a0 ffffdf9c`5a685102 ffffe000`8683010c 00000000`00000000 : nt!IopfCompleteRequest+0x2ee ffffd000`47dfea80 fffff801`bd6e55a1 : 00000000`00000000 ffffe000`877f0820 ffffd000`47dfebe0 ffffd000`47dfedc8 : afd!WskProTLSendOrDisconnectComplete+0x72 ffffd000`47dfeae0 fffff801`bd6eace0 : 00000000`00000001 fffff801`bd6ba7e0 00000000`00000000 ffffe000`85c82610 : tcpip!TcpTcbReceive+0x311 ffffd000`47dfec30 fffff801`bd6ea6f5 : ffffe000`86d2202c 00000000`00000000 00000000`00000000 ffffe000`8639b158 : tcpip!TcpMatchReceive+0x1f0 ffffd000`47dfedc0 fffff801`bd72d990 : ffffe000`863d9e80 00000000`00000000 00000000`000013c1 fffff801`bd83f100 : tcpip!TcpPreValidatedReceive+0x385 ffffd000`47dfeec0 fffff801`bd6ba9d2 : ffffe000`86d4d480 fffff801`bd6ba7e0 fffff801`bd6b0006 00000000`00000006 : tcpip!IpFlcReceivePreValidatedPackets+0x650 ffffd000`47dff080 fffff800`be0c5fa3 : ffffe000`89581030 00000000`00000000 ffffe000`863c3b10 ffffd000`47dfa000 : tcpip!FlReceiveNetBufferListChainCalloutRoutine+0x102 ffffd000`47dff1b0 fffff801`bd6bab26 : fffff801`bd6ba8d0 ffffd000`47dff2d0 ffffe000`86d59510 00000000`00000000 : nt!KeExpandKernelStackAndCalloutInternal+0xf3 ffffd000`47dff2a0 fffff801`bcc2a903 : 00000000`00000000 ffffd000`47dff381 ffffe000`00000001 ffffe000`8a0b7860 : tcpip!FlReceiveNetBufferListChain+0xb6 ffffd000`47dff320 fffff801`bcc2b08a : ffffdf9c`ffffff01 ffffe000`8a0b0008 00000000`00000000 ffffe000`00000001 : NDIS!ndisMIndicateNetBufferListsToOpen+0x123 ffffd000`47dff3e0 fffff801`bf0fa1c4 : ffffe000`868ef000 fffff801`bf0faefc ffffe000`868f0500 ffffe000`86d5c4f0 : NDIS!NdisMIndicateReceiveNetBufferLists+0x32a ffffd000`47dff5c0 fffff801`bf0faa9d : 00000000`00000001 ffffe000`86d5c4f0 ffffe000`868ef000 00000000`00000001 : e1i63x64!RECEIVE::RxIndicateNBLs+0xd4 ffffd000`47dff600 fffff801`bf0ed150 : 00000000`00000001 ffffe000`861888b0 00000000`00000000 ffff0001`00000001 : e1i63x64!RECEIVE::RxProcessInterrupts+0x19d ffffd000`47dff680 fffff801`bf0ed57e : ffffe000`861888b0 ffffe000`868ef000 ffff0001`00000001 ffff0001`00000001 : e1i63x64!INTERRUPT::MsgIntDpcTxRxProcessing+0x1c0 ffffd000`47dff6f0 fffff801`bf0ecb78 : ffffd000`47dff829 ffff0001`00000001 fffff801`bf0ecaf0 ffffe000`8699b000 : e1i63x64!INTERRUPT::MsgIntMessageInterruptDPC+0x13e ffffd000`47dff750 fffff801`bcc2c005 : 00000000`00000000 00000000`00000000 ffffe000`862c1bc8 fffff801`bd6b6db3 : e1i63x64!INTERRUPT::MiniportMessageInterruptDPC+0x28 ffffd000`47dff790 fffff800`be08d1e0 : ffffd000`47dffb20 ffffffff`ffd11000 00000000`00000001 fffff800`be7a158f : NDIS!ndisInterruptDpc+0x1b5 ffffd000`47dff890 fffff800`be08c527 : ffffe000`89897000 ffffe000`89897080 00000000`00000000 ffffd000`00000002 : nt!KiExecuteAllDpcs+0x1b0 ffffd000`47dff9e0 fffff800`be15e4ea : ffffd000`47dd5180 ffffd000`47dd5180 ffffd000`47de14c0 ffffe000`88b6e080 : nt!KiRetireDpcList+0xd7 ffffd000`47dffc60 00000000`00000000 : ffffd000`47e00000 ffffd000`47dfa000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a hzqst,你的建议是不管这个FltSendMessage是否支持异步通知,都自己另外开辟一个队列来来单独发送? |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值