Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-16465

Regression: [Win32SS, OpenGL32] Unreal Tournament fails with Memory Access Violation at nt!IoBuildDeviceIoControlRequest+2d during its OpenGL render driver initialization, when VMware ICD Driver is installed and application tries to go Fullscreen Mode.

    XMLWordPrintable

Details

    Description

      Testing 0.4.14-dev-178-g90c5cac
      Test done with a MSVC Build, MSVC_19.0.24213.1.
      Test done in Win10 1803/VMware Workstation 12.
      Test done using Vmware's SVGA driver from VMware Tools v12.0.1

      This problem occurs after PR merge (contains 2 commits!)
      https://github.com/reactos/reactos/pull/87

      The problem is:

      Access violation - code c0000005 (!!! second chance !!!)

      nt!IoBuildDeviceIoControlRequest+2d [x:\src\master\reactos\ntoskrnl\io\iomgr\irp.c @ 896]
      8046ce6d 0fb64830 movzx ecx,byte ptr [eax+30h]

      The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.

      • This problem occurs when UnrealTournament game application initializes its OpenGL rendering engine, and the engine tries to go Full Screen Mode
      • If we are in debug mode and use the 'g' command to continue, ReactOS doesn't crash/BSoD after this error, but desktop freezes with only mouse cursor being alive
      • With no way to invoke a reboot with the mouse or keyboard, a forced reboot is required to recover the system

      Reverting ONLY

      https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3e1a54151fdb2f513d5e1d4a374c2c973132493a

      from the culprit PR makes the game usable again with the VM 3D OpenGL acceleration enabled, while it ACTUALLY FIXES one of the asserts specified in CORE-7727, related to the PR.

      DON'T REVERT THE WHOLE PR!

      DebugLogs describing the situation before and after the reversion are included, along one picture of the game working after the reversion

      Attachments

        1. win32ss_ref_device_object.diff
          0.6 kB
        2. RosWinDbg-RegressionTesting-BeforeRevert.log
          9 kB
        3. RosWinDbg-RegressionTesting-AfterRevertDetailed.log
          220 kB
        4. RosWinDbg-RegressionTesting-AfterRevert.log
          14 kB
        5. RosWindbg-PrintPatchTesting9.log
          52 kB
        6. RosWindbg-PrintPatchTesting7.log
          54 kB
        7. RosWindbg-PrintPatchTesting7.log
          56 kB
        8. RosWindbg-PrintPatchTesting6.log
          54 kB
        9. RosWindbg-PrintPatchTesting5.log
          54 kB
        10. RosWindbg-PrintPatchTesting4.log
          50 kB
        11. RosWindbg-PrintPatchTesting3.log
          10 kB
        12. RosWindbg-PrintPatchTesting2.log
          10 kB
        13. RosWindbg-PrintPatchTesting.log
          10 kB
        14. RosWindbg-PrintPatchTestin14.log
          56 kB
        15. RosWindbg-PrintPatchTestin13.log
          56 kB
        16. RosWindbg-PrintPatchTestin12.log
          56 kB
        17. RosWindbg-PrintPatchTestin11.log
          58 kB
        18. RosWindbg-PrintPatchTestin10.log
          85 kB
        19. RosWindbg-20210625052739.log
          64 kB
        20. RosWindbg-20210625050818.log
          59 kB
        21. RosVMwareScreenGrab-20191102142225.png
          RosVMwareScreenGrab-20191102142225.png
          255 kB
        22. RosVMwareScreenGrab-20191101133144.png
          RosVMwareScreenGrab-20191101133144.png
          8 kB
        23. RosVMwareScreenGrab-20191031140550.png
          RosVMwareScreenGrab-20191031140550.png
          166 kB
        24. RosVMwareScreenGrab-20191029215812.png
          RosVMwareScreenGrab-20191029215812.png
          9 kB
        25. RosVMwareScreenGrab-20191029145625.png
          RosVMwareScreenGrab-20191029145625.png
          198 kB
        26. ROSDebugVM20210917105931.log
          134 kB
        27. ReactOS.log
          100 kB
        28. ReactOS_with_print_patch_20201006.7z
          85 kB
        29. print.patch
          22 kB
        30. print.patch
          23 kB
        31. print.patch
          23 kB
        32. print.patch
          23 kB
        33. print.patch
          23 kB
        34. print.patch
          23 kB
        35. print.patch
          23 kB
        36. print.patch
          24 kB
        37. print.patch
          24 kB
        38. print.patch
          24 kB
        39. print.patch
          24 kB
        40. print.patch
          24 kB
        41. print.patch
          24 kB
        42. print.c
          17 kB
        43. Halo_CE_2.png
          Halo_CE_2.png
          62 kB
        44. Halo_CE_1.png
          Halo_CE_1.png
          64 kB
        45. cursoricon.patch
          1 kB
        46. CORE-16465.diff
          0.4 kB
        47. CORE-16465_revert.patch
          7 kB

        Issue Links

          Activity

            People

              zefklop jgardou
              r3mendozal r3mendozal
              Votes:
              6 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated: