Closed Bug 1382592 Opened 8 years ago Closed 7 years ago

Cannot run Nightly 56 on Wine: err:module:attach_process_dlls "mozglue.dll" failed to initialize, aborting

Categories

(External Software Affecting Firefox :: Other, defect)

defect
Not set
normal

Tracking

(firefox54 unaffected, firefox55 unaffected, firefox56 fixed)

RESOLVED FIXED
Tracking Status
firefox54 --- unaffected
firefox55 --- unaffected
firefox56 --- fixed

People

(Reporter: jlorenzo, Unassigned)

References

Details

(Keywords: regression)

Attachments

(1 file)

Attached file wine-trace.log
CONTEXT While testing Windows builds coming out of the new Taskcluster infrastructure, I noticed I was unable to start them. After some investigation, the problem has been there in regular builds for some weeks. STEPS TO REPRODUCE 1. Download a windows nightly installer on Linux. 2. Install it via `wine firefox-56.0a1.en-US.win64.installer.exe` RESULTS At the end of the installation, when Firefox should boot up, this error comes up on the console: > err:module:attach_process_dlls "mozglue.dll" failed to initialize, aborting Nightly doesn't show up. For more information, see attached trace logs. TESTED BINARIES * Firefox 54.0.1 => Runs fine * Firefox 55.0b10 => Runs fine * https://archive.mozilla.org/pub/firefox/nightly/2017/07/2017-07-19-03-02-06-mozilla-central/firefox-56.0a1.en-US.win64.installer.exe => Not OK * https://archive.mozilla.org/pub/firefox/nightly/2017/05/2017-05-29-03-02-04-mozilla-central/firefox-55.0a1.en-US.win64.installer.exe => Runs fine. CONCLUSION That's a regression that happened on central between 2017-07-19 and 2017-05-29. I don't know whether this bug should be in mozglue, or in the build config. I guess a finer regression window will help us out. I also don't know if this is going to impact projects like wine-gecko[1], which provides mozglue.dll for the rest of the wine environment. [1] https://wiki.winehq.org/Gecko
Can you get a narrower regression window with mozregression?
Mozregression gave: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=7da6c99070996a8d0baa4013d4c0b515f8045fa2&tochange=37e047b6187f8a2cc9ce30268d42977e679db84e. That patch seems related to the failure given by wine. What do you think, Jeff? For reference, using mozregression on Linux needed some hacks in mozinfo. I basically forced info['os'] to 'win' at [1]. I also changed `globals()['isWin']`, `globals()['isLinux']` and `globals()['isLinux']` at [2]. I'm not sure the second hack is needed. Then I ran the command: > mozregression -P stdout --command 'wine {binary}' --repo=mozilla-central --good=2017-06-28 --bad=2017-07-01 [1] https://dxr.mozilla.org/mozilla-central/rev/1b065ffd8a535a0ad4c39a912af18e948e6a42c1/testing/mozbase/mozinfo/mozinfo/mozinfo.py#115 [2] https://dxr.mozilla.org/mozilla-central/rev/1b065ffd8a535a0ad4c39a912af18e948e6a42c1/testing/mozbase/mozinfo/mozinfo/mozinfo.py#208
Blocks: 1376057
Component: mozglue → Build Config
Flags: needinfo?(jgilbert)
Does WINE not support std::exception::_Set_raise_handler somehow?
Flags: needinfo?(jgilbert)
I'm sorry, I don't know the answer. I'm not familiar with the internals of wine, either. Nonetheless, I looked up the problem, and it seems it doesn't. I searched back in the logs I attached, and "_Set_raise_handler" doesn't appear. The closest related warning is this one: > 111690.193:002f:0030:warn:seh:call_stack_handlers exception data not found in L"mozglue.dll" Google doesn't return any result for "wine _Set_raise_handler". "_Set_raise_handler" alone doesn't show anything related to wine, at first. For the record, I run wine-2.12 which is the latest available development release[1]. Would you know how to check that support with a small piece of code, Jeff? [1] https://www.winehq.org/news/2017070701
Flags: needinfo?(jgilbert)
See Also: → 1357139
CC'ing Jacek who's the maintainer of wine-gecko[1]. Per the timestamps of the commits on the fork[2], it might not need an immediate fix. Could you confirm, Jacek? [1] https://wiki.winehq.org/Gecko [2] https://sourceforge.net/p/wine/wine-gecko
Flags: needinfo?(jacek)
Looking at attached logs, it seems to be a Wine bug. std::_Raise_handler is not implemented. It's wrongly exported as a stub, which means it's an entry point to code section that is write protected causing the observed crash. I will take a look at fixing it in Wine.
Flags: needinfo?(jacek)
Thank you very much for the details, Jacek. I'm moving this bug in another component, then. Please let us know if we should move it back or elsewhere.
Component: Build Config → Other
Flags: needinfo?(jgilbert)
Product: Core → External Software Affecting Firefox
I sent a patch to Wine: https://source.winehq.org/patches/data/136312 I will let you know when it's accepted to the tree.
The fix is in Wine and Wine 2.14 was released today (containing the patch). Thanks for the report.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: