none
[filesystem] Lock/Unlock FCB/CCB RRS feed

  • Question

  • Please help,
    I am on a file system driver and it work.
    Except when verifier is enabled,
    I have a BSOD like saying KeEnterCriticalRegion must be run with IRQL <= APC_LEVEL,
    and I need it to lock FCB and CCB resources.

    How to lock / release FCB and CCB resources in this case?

    In the 'ExAcquireResourceExclusiveLite' function I read these:
    Normal kernel APC delivery must be disabled before calling this routine. Disable normal kernel APC delivery by calling KeEnterCriticalRegion. Delivery must remain disabled until the resource is released, at which point it can be reenabled by calling KeLeaveCriticalRegion. For more information, see Disabling APCs.

    I want  to lock the FCB otherwise I could not run my filesystem driver in multi thread.

    I also have a BSOD: ExAcquireResourceExclusiveLite should be called at IRQL <= APC_LEVEL

    HOW I LOCK / UNLOCK THE FCB RESOURCE CCB DIFFERENTLY !!!!! ???????

    I disable verifier (verifier.exe), no BSOD,
    I reactive verifier (verifier.exe) , I have a BSOD.

    Thank you very much.


    • Edited by Sizy458 Saturday, June 23, 2018 10:11 AM
    Saturday, June 23, 2018 9:57 AM

Answers

  • I find this problem , i removed and deplaced properly runtime 'KeAcquireSpinLock' and 'KeReleaseSpinLock'.

    I resolved this problem.

    But a other problem ,see recent post.

    It's KeAcquireSpinLock which set irql to IRPL_DISPATCHLEVEL.

    Problem solved.


    Saturday, June 23, 2018 2:09 PM