[Bug 52840] New: Vulkan fails to initialize for 32-bit processes due to ENOMEM while trying to map shared libraries

WineHQ Bugzilla wine-bugs at winehq.org
Tue Apr 19 20:18:17 CDT 2022


https://bugs.winehq.org/show_bug.cgi?id=52840

            Bug ID: 52840
           Summary: Vulkan fails to initialize for 32-bit processes due to
                    ENOMEM while trying to map shared libraries
           Product: Wine
           Version: 7.6
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: -unknown
          Assignee: wine-bugs at winehq.org
          Reporter: z.figura12 at gmail.com
      Distribution: ---

This can result in subtle failures down the line. In my case it resulted in a
variation on bug 52508.

This was a huge game of "any one of you should have screamed an error condition
at me, but you didn't", and as a result this took me several hours to debug.
Kind of annoyed at that one.

Anyway, the root of the problem is that we reserve almost the entire address
space. We reserve everything above 0x80000000 because we don't want win32
memory to get mapped there, and we reserve the entire range between
0x00010000-0x68000000 for... some reason?

And for me, this doesn't leave enough space to load everything that the Vulkan
driver needs. The final straw was a failure to reserve 27 MiB for
libicudata.so.

Normally this isn't a problem, because we release the low area, but all of this
happens during DLL initialization (winex11.drv.so specifically), and we don't
release the low area until after all DLLs are attached.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list