Menu

#124 BSOD when mounting ISO image with Explorer

v1.0_(example)
closed-fixed
Matt Wu
None
5
2014-09-05
2014-07-14
aweorit
No

I tend to always get a blue screen when I mount an ISO file by double-clicking on it in Explorer. If I copy the image to an NTFS partition and mount it from there everything works.

Windows 8.1 x64, Ext2Fsd 0.52

Discussion

  • aweorit

    aweorit - 2014-07-14

    Call stack from MEMORY.DMP

     # Child-SP          RetAddr           Call Site
    00 ffffd000`20d17fa8 fffff800`5f21c860 nt!KeBugCheckEx
    01 ffffd000`20d17fb0 fffff800`4cf6b38e nt! ?? ::FNODOBFM::`string'+0x3c3b0
    02 ffffd000`20d17ff0 fffff800`4cec2767 Ext2Fsd+0xac38e
    03 ffffd000`20d180a0 fffff800`4cec2fc4 Ext2Fsd+0x3767
    04 ffffd000`20d18150 fffff800`4cec3348 Ext2Fsd+0x3fc4
    05 ffffd000`20d18230 fffff800`4cf6dbd6 Ext2Fsd+0x4348
    06 ffffd000`20d18270 fffff800`4cf6df6a Ext2Fsd+0xaebd6
    07 ffffd000`20d182a0 fffff800`4bf21cf8 Ext2Fsd+0xaef6a
    08 ffffd000`20d182f0 fffff800`4bf200b6 fltmgr!FltpLegacyProcessingAfterPreCallbacksCompleted+0x258
    09 ffffd000`20d18390 fffff800`4d2e579e fltmgr!FltpDispatch+0xb6
    0a ffffd000`20d183f0 fffff800`4d2e802b vhdmp!VhdmpiCallDriverWithoutBlocking+0x11e
    0b ffffd000`20d18440 fffff800`4d338fe5 vhdmp!RmwIoCallDriver+0x8b
    0c ffffd000`20d18480 fffff800`4d339896 vhdmp!VhdmpiMetadataSynchronousIo+0x199
    0d ffffd000`20d186c0 fffff800`4d2f82c9 vhdmp!VhdmpiReadVhdFileAtPassiveLevel+0x32
    0e ffffd000`20d18700 fffff800`4d34e483 vhdmp!VhdmpiIsoGetVolumeDescriptor+0x51
    0f ffffd000`20d18740 fffff800`4d33aa08 vhdmp!VhdmpiIsoInitAndLoadAndVerifyBackingStore+0x1b7
    10 ffffd000`20d18fc0 fffff800`4d3387aa vhdmp!VhdmpiInitAndLoadAndVerifyBackingStore+0x70
    11 ffffd000`20d19010 fffff800`4d33dc5b vhdmp!VhdmpiParseBackingStore+0xfa
    12 ffffd000`20d19070 fffff800`4d3380d0 vhdmp!VhdmpiCreateBackingStore+0x36b
    13 ffffd000`20d19120 fffff800`4d3384d3 vhdmp!VhdmpiCreateBackingStoreChain+0xb4
    14 ffffd000`20d19210 fffff800`4d33d63c vhdmp!VhdmpiCreateOrShareVirtualDisk+0x1bb
    15 ffffd000`20d192d0 fffff800`4d2e0caa vhdmp!VhdmpiCreateHandler+0x7c0
    16 ffffd000`20d19430 fffff800`4d2e0b8a vhdmp!VhdmpiControlObjectIrpHandler+0xe2
    17 ffffd000`20d19460 fffff800`5f46f593 vhdmp!VhdmpFirstLevelIrpHandler+0x6e
    18 ffffd000`20d194b0 fffff800`5f4754f8 nt!IopParseDevice+0x7b3
    19 ffffd000`20d196b0 fffff800`5f472e53 nt!ObpLookupObjectName+0x6d8
    1a ffffd000`20d19830 fffff800`5f4419a2 nt!ObOpenObjectByName+0x1e3
    1b ffffd000`20d19960 fffff800`5f441628 nt!IopCreateFile+0x372
    1c ffffd000`20d19a00 fffff800`5f1db7b3 nt!NtCreateFile+0x78
    1d ffffd000`20d19a90 00007ffe`0e0bb0da nt!KiSystemServiceCopyEnd+0x13
    1e 00000000`0c61f058 00000000`00000000 0x00007ffe`0e0bb0da
    
     

    Last edit: aweorit 2014-07-14
  • Matt Wu

    Matt Wu - 2014-07-14

    I'll check it. Thanks for the stack trace.

     
  • Matt Wu

    Matt Wu - 2014-07-14
    • assigned_to: Matt Wu
     
  • aweorit

    aweorit - 2014-07-14

    I managed to get another stack trace, with debug info this time:

     # Child-SP          RetAddr           Call Site
    00 ffffd000`3c895f28 fffff800`2f7a5860 nt!KeBugCheckEx
    01 ffffd000`3c895f30 fffff801`d23b70c8 nt! ?? ::FNODOBFM::`string'+0x3c3b0
    02 ffffd000`3c895f70 fffff801`d22f47f6 Ext2Fsd!Ext2ReadWriteBlocks(struct ext2_icb * IrpContext = 0xffffe000`6e2ce900, struct _EXT2_VCB * Vcb = 0xffffe000`6e6301b0, struct _EXT2_EXTENT * Chain = 0xffffc001`5f416ee0, unsigned long Length = 0x800, unsigned char bVerify = 0x00 '')+0x338 [c:\users\***\sources\ext2fsd\ext3fsd\block.c @ 316]
    03 ffffd000`3c896020 fffff801`d22f550a Ext2Fsd!Ext2ReadInode(struct ext2_icb * IrpContext = 0xffffe000`6e2ce900, struct _EXT2_VCB * Vcb = 0xffffe000`6e6301b0, struct _EXT2_MCB * Mcb = 0xffffc001`6d6fc9e0, unsigned int64 Offset = 0x8000, void * Buffer = 0xffffd000`3e6cc780, unsigned long Size = 0x800, unsigned char bDirectIo = 0x01 '', unsigned long * dwRet = 0x00000000`00000000)+0x4e6 [c:\users\***\sources\ext2fsd\ext3fsd\read.c @ 425]
    04 ffffd000`3c8960d0 fffff801`d22f5be7 Ext2Fsd!Ext2ReadFile(struct ext2_icb * IrpContext = 0xffffe000`6e2ce900)+0xc0a [c:\users\***\sources\ext2fsd\ext3fsd\read.c @ 762]
    05 ffffd000`3c8961e0 fffff801`d23bc872 Ext2Fsd!Ext2Read(struct ext2_icb * IrpContext = 0xffffe000`6e2ce900)+0x1d7 [c:\users\***\sources\ext2fsd\ext3fsd\read.c @ 939]
    06 ffffd000`3c896250 fffff801`d23bcae5 Ext2Fsd!Ext2DispatchRequest(struct ext2_icb * IrpContext = 0xffffe000`6e2ce900)+0xe2 [c:\users\***\sources\ext2fsd\ext3fsd\dispatch.c @ 234]
    07 ffffd000`3c896290 fffff801`d1202cf8 Ext2Fsd!Ext2BuildRequest(struct _DEVICE_OBJECT * DeviceObject = 0xffffe000`6e630060, struct _IRP * Irp = 0xffffe000`704806f0)+0xf5 [c:\users\***\sources\ext2fsd\ext3fsd\dispatch.c @ 331]
    08 ffffd000`3c8962f0 fffff801`d12010b6 fltmgr!FltpLegacyProcessingAfterPreCallbacksCompleted+0x258
    09 ffffd000`3c896390 fffff801`d491379e fltmgr!FltpDispatch+0xb6
    0a ffffd000`3c8963f0 fffff801`d491602b vhdmp!VhdmpiCallDriverWithoutBlocking+0x11e
    0b ffffd000`3c896440 fffff801`d4966fe5 vhdmp!RmwIoCallDriver+0x8b
    0c ffffd000`3c896480 fffff801`d4967896 vhdmp!VhdmpiMetadataSynchronousIo+0x199
    0d ffffd000`3c8966c0 fffff801`d49262c9 vhdmp!VhdmpiReadVhdFileAtPassiveLevel+0x32
    0e ffffd000`3c896700 fffff801`d497c483 vhdmp!VhdmpiIsoGetVolumeDescriptor+0x51
    0f ffffd000`3c896740 fffff801`d4968a08 vhdmp!VhdmpiIsoInitAndLoadAndVerifyBackingStore+0x1b7
    10 ffffd000`3c896fc0 fffff801`d49667aa vhdmp!VhdmpiInitAndLoadAndVerifyBackingStore+0x70
    11 ffffd000`3c897010 fffff801`d496bc5b vhdmp!VhdmpiParseBackingStore+0xfa
    12 ffffd000`3c897070 fffff801`d49660d0 vhdmp!VhdmpiCreateBackingStore+0x36b
    13 ffffd000`3c897120 fffff801`d49664d3 vhdmp!VhdmpiCreateBackingStoreChain+0xb4
    14 ffffd000`3c897210 fffff801`d496b63c vhdmp!VhdmpiCreateOrShareVirtualDisk+0x1bb
    15 ffffd000`3c8972d0 fffff801`d490ecaa vhdmp!VhdmpiCreateHandler+0x7c0
    16 ffffd000`3c897430 fffff801`d490eb8a vhdmp!VhdmpiControlObjectIrpHandler+0xe2
    17 ffffd000`3c897460 fffff800`2f9f8593 vhdmp!VhdmpFirstLevelIrpHandler+0x6e
    18 ffffd000`3c8974b0 fffff800`2f9fe4f8 nt!IopParseDevice+0x7b3
    19 ffffd000`3c8976b0 fffff800`2f9fbe53 nt!ObpLookupObjectName+0x6d8
    1a ffffd000`3c897830 fffff800`2f9ca9a2 nt!ObOpenObjectByName+0x1e3
    1b ffffd000`3c897960 fffff800`2f9ca628 nt!IopCreateFile+0x372
    1c ffffd000`3c897a00 fffff800`2f7647b3 nt!NtCreateFile+0x78
    1d ffffd000`3c897a90 00007ffc`9901b25a nt!KiSystemServiceCopyEnd+0x13
    1e 00000000`0e6eef28 00000000`00000000 0x00007ffc`9901b25a
    

    Hope this helps.

     

    Last edit: aweorit 2014-07-14
  • Matt Wu

    Matt Wu - 2014-08-26
    • status: open --> closed-fixed
     
  • Matt Wu

    Matt Wu - 2014-08-26

    Fixed in 0.53. Tested with VHD files on Win7 and Win8.

     
  • aweorit

    aweorit - 2014-09-05

    Awesome!

    There's a little problem though: every time the image is mounted I get this error:

    "Sorry, there was a problem mounting the file."

    Edit:

    To be clear: it does work, but also shows this error box for some reason.

    It's not a big deal, just thought you would want to fix that.

     

    Last edit: aweorit 2014-09-05
  • aweorit

    aweorit - 2014-09-05

    Also it seems to be impossible to eject the drive as Windows say: "An error occurred while ejecting 'disk name here'."

     

Log in to post a comment.