Bug 103656 - get_cpuid inline asm violates red zone
Summary: get_cpuid inline asm violates red zone
Status: RESOLVED FIXED
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: core (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
URL: https://gcc.gnu.org/bugzilla/show_bug...
Whiteboard:
Keywords:
Depends on:
Blocks: 99066
  Show dependency treegraph
 
Reported: 2017-11-09 23:13 UTC by EoD
Modified: 2017-12-06 23:13 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description EoD 2017-11-09 23:13:02 UTC
The original issue with get_cpuid() came while trying to debug bug 99066 and has been forwarded to GCC (see URL above).

Apparently the current implementation of get_cpuid() is violating the red zone (see GCC bugreport) and hence does segfault on x32.

There are several suggestions on the GCC bug report to work around/fix the issue.
Comment 1 Tanu Kaskinen 2017-11-21 13:23:26 UTC
Great! Thanks a lot for filing the GCC bug. Using the __cpuid macro seems like the best solution. I'll make a patch.
Comment 2 Tanu Kaskinen 2017-11-22 15:15:02 UTC
Patch submitted:
https://patchwork.freedesktop.org/patch/189761/
Comment 3 Tanu Kaskinen 2017-12-06 23:13:35 UTC
The patch is now in master.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.