none
Weird situation related to Keyboard IRP cancel on Windows 10 RRS feed

  • Question

  • Hello. I have an issue related to IRP canceling during compatibility test on Windows 10

    My driver hook IRP_MJ_READ dispatch handler belongs to keyboard class driver ( kbdclass.sys ) 

    So my driver can modify the IRP packets's stuffs like a completion routine. 

    When my driver unhook this hooking code, my driver cancel the IRP if there is a any packet sent to lower device.

    I confirmed that my completion routine was called ( because of CANCEL ) and IoCompleteRequest api works fine.

    But the problem is occurred after that canceling. 

    After that IRP canceling, I can not input keyboard any more. ( of course, I can input via mouse ) 

    It looks like the situation when I missed calling the upper filter's completion routine. 

    But I can't find any upper filter when I investigate the IRP that is canceled via WinDbg's !irp command.

    And, of course, my driver works fine on windows 8 or previous versions. 

     If you have any experience related to this situation, please let me know. 

    Thank you in advance.


    Friday, July 3, 2015 2:22 AM

Answers

  • Hooking is not the supported way to filter the keyboard stack. The supported way is either a class filter above kbdclass or a device upper filter below it.

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Friday, July 3, 2015 6:05 AM

All replies

  • Hooking is not the supported way to filter the keyboard stack. The supported way is either a class filter above kbdclass or a device upper filter below it.

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Friday, July 3, 2015 6:05 AM
  • I agree that hooking is not a good way.

    But I need to know the reason of this situation at least.

    Anyway, there is a new Windows 10 Build ( 10163 ), I'm gonna test this on that again. 

    After that I will consider to develop new filter like you said. 

    Thank you for your reply. 

    Monday, July 6, 2015 12:53 AM