Bug 1305108
Summary: | open-vm-tools FTBFS with GCC 6 | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Richard W.M. Jones <rjones> | ||||
Component: | open-vm-tools | Assignee: | Ravindra Kumar <ravindrakumar> | ||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | unspecified | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | 24 | CC: | awilliam, negativo17, ravindrakumar, releng, rjones, robatino | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | open-vm-tools-10.0.5-2.fc24 open-vm-tools-10.0.5-2.fc23 open-vm-tools-10.0.5-2.fc22 | Doc Type: | Bug Fix | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2016-05-26 17:31:43 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 1305208, 1277287 | ||||||
Attachments: |
|
Description
Richard W.M. Jones
2016-02-05 16:34:34 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle. Changing version to '24'. More information and reason for this action is here: https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase *** Bug 1307816 has been marked as a duplicate of this bug. *** This affects both Rawhide and F24, but it is now critical for Rawhide. open-vm-tools must be rebuilt for the bumped ICU that landed in Rawhide, but it cannot because of this bug. open-vm-tools-desktop is pulled into the Workstation live image, so this bug prevents the Workstation live image from composing on Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=13759324 08:18:47,198 ERR anaconda: The following software marked for installation has errors. This is likely caused by an error with your installation source. nothing provides libfreerdp-client.so.2.0()(64bit) needed by vinagre-3.20.1-1.fc25.x86_64. nothing provides libicudata.so.56()(64bit) needed by open-vm-tools-desktop-10.0.0-8.fc24.x86_64 I'm dealing with the vinagre thing, but this bug is beyond me. Upstream report: https://github.com/vmware/open-vm-tools/issues/67 , where Debian are also hitting it. Apparently it's doing something clever with bitmasks and left shifts that GCC 6 is not a fan of. As this entirely prevents the compose of a release-blocking image for Rawhide, marking as an automatic F25 Alpha blocker. Created attachment 1149970 [details]
build.log
Attaching build.log which disappeared from original build.
If you try building without -Werror, you get these errors: In file included from /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/hostinfo.h:35:0, from dndGuest/rpcV3Util.cpp:45: /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:912:51: warning: result of '(-2147483648 << 1)' requires 33 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=] #define VMW_BIT_MASK(shift) (((1 << (shift - 1)) << 1) - 1) ~~~~~~~~~~~~~~~~~~~^~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:916:34: note: in expansion of macro 'VMW_BIT_MASK' CPUID_##name##_MASK = VMW_BIT_MASK(size) << bitpos, \ ^~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:1: note: in expansion of macro 'FIELD' FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:870:4: note: in expansion of macro 'CPUID_FIELD_DATA_LEVEL_0' CPUID_FIELD_DATA_LEVEL_0 \ ^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:927:4: note: in expansion of macro 'CPUID_FIELD_DATA' CPUID_FIELD_DATA ^~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:912:51: error: left operand of shift expression '(-2147483648 << 1)' is negative [-fpermissive] #define VMW_BIT_MASK(shift) (((1 << (shift - 1)) << 1) - 1) ~~~~~~~~~~~~~~~~~~~~^~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:916:34: note: in expansion of macro 'VMW_BIT_MASK' CPUID_##name##_MASK = VMW_BIT_MASK(size) << bitpos, \ ^~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:1: note: in expansion of macro 'FIELD' FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:870:4: note: in expansion of macro 'CPUID_FIELD_DATA_LEVEL_0' CPUID_FIELD_DATA_LEVEL_0 \ ^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:927:4: note: in expansion of macro 'CPUID_FIELD_DATA' CPUID_FIELD_DATA ^~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:22: error: enumerator value for 'CPUID_NUMLEVELS_MASK' is not an integer constant FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^ John Reiser's VMW_BIT_MASK definition is: #define VMW_BIT_MASK(shift) (int)~((~0u << (shift - 1)) << 1) If you try that one, you get these errors: In file included from /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/hostinfo.h:35:0, from dndGuest/rpcV3Util.cpp:45: /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:916:53: error: left operand of shift expression '(-1 << 0)' is negative [-fpermissive] CPUID_##name##_MASK = VMW_BIT_MASK(size) << bitpos, \ ^ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:1: note: in expansion of macro 'FIELD' FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:870:4: note: in expansion of macro 'CPUID_FIELD_DATA_LEVEL_0' CPUID_FIELD_DATA_LEVEL_0 \ ^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:927:4: note: in expansion of macro 'CPUID_FIELD_DATA' CPUID_FIELD_DATA ^~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:22: error: enumerator value for 'CPUID_NUMLEVELS_MASK' is not an integer constant FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^ Kevin Kofler's definition is: #define VMW_BIT_MASK(shift) ((int)(long long)(((1ULL << (shift - 1)) << 1) - 1)) with that one you get similar errors to John's: In file included from /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/hostinfo.h:35:0, from dndUIX11.cpp:50: /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:916:53: error: left operand of shift expression '(-1 << 0)' is negative [-fpermissive] CPUID_##name##_MASK = VMW_BIT_MASK(size) << bitpos, \ ^ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:916:53: note: in definition of macro 'FIELD' CPUID_##name##_MASK = VMW_BIT_MASK(size) << bitpos, \ ^~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:870:4: note: in expansion of macro 'CPUID_FIELD_DATA_LEVEL_0' CPUID_FIELD_DATA_LEVEL_0 \ ^~~~~~~~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:927:4: note: in expansion of macro 'CPUID_FIELD_DATA' CPUID_FIELD_DATA ^ /builddir/build/BUILD/open-vm-tools-10.0.0-3000743/lib/include/x86cpuid.h:292:22: error: enumerator value for 'CPUID_NUMLEVELS_MASK' is not an integer constant FIELD( 0, 0, EAX, 0, 32, NUMLEVELS, ANY, FALSE) \ ^ Even if we fix this crap, we're gonna run headlong into this one: https://github.com/vmware/open-vm-tools/issues/82 which requires changes to the code of the kernel modules, and I ain't doing that. So I'm going to drop open-vm-tools packages from F25 comps groups until this is solved. For the record, VMware folks pointed out that we don't build any modules in the Fedora package, so #82 should not affect us. Just fixing the bitmask problem should be enough for Fedora (unless there are still other GCC 6 issues lurking). Even with the comps change, proposing as an F25 Beta blocker, as this breaks Workstation upgrade to F25: open-vm-tools is installed in the old release and so the ICU dependency problem prevents the upgrade from working. See e.g. https://openqa.fedoraproject.org/tests/14555 . open-vm-tools-10.0.5-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-4e2c1cd9fb open-vm-tools-10.0.5-2.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-0bd6a38cad open-vm-tools-10.0.5-2.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2016-36485d53b0 Adam, I have submitted updates to address this issue. Could you please help us re-enable open-vm-tools packages wherever you got it disabled? Thanks! Yup, doing it now. Thanks for the fix! open-vm-tools-10.0.5-2.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-36485d53b0 open-vm-tools-10.0.5-2.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-0bd6a38cad open-vm-tools-10.0.5-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-4e2c1cd9fb open-vm-tools-10.0.5-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report. open-vm-tools-10.0.5-2.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report. open-vm-tools-10.0.5-2.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report. |