Bug 35929 - incorrect "asm volatile" statements rejected by gcc8-8.2.1-alt3
Summary: incorrect "asm volatile" statements rejected by gcc8-8.2.1-alt3
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: virtualbox (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Evgeny Sinelnikov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-01-18 14:19 MSK by AEN
Modified: 2019-01-29 09:49 MSK (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description AEN 2019-01-18 14:19:32 MSK
Прошу исправить.
Comment 1 Evgeny Sinelnikov 2019-01-18 18:51:11 MSK
Новая сборка висит в сборочнице из-за https://bugzilla.altlinux.org/show_bug.cgi?id=35928

#219496 FAILED #2 [test-only] sisyphus gsoap.git=2.8.75-alt1 virtualbox.git=5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-std-def-5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-addition-std-def-5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-un-def-5.2.24-alt1

g++ -c -O2 -g -pipe -pedantic -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter     -Wlogical-op   -Wno-variadic-macros -Wno-long-long -Wunused-variable -Wunused-function -Wunused-label -Wunused-parameter  -Wno-overloaded-virtual -Wno-ignored-qualifiers -Wno-variadic-macros  -O2 -fno-omit-frame-pointer -fno-strict-aliasing -m64 -I/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/VBox/Runtime/include -I/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/libs/liblzf-3.4 -I/usr/include/libxml2 -I/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/include -I/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/out/linux.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/share/virtualbox\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/lib64/virtualbox\" -DRTPATH_SHARED_LIBS=\"/usr/lib64/virtualbox\" -DRTPATH_APP_DOCS=\"/usr/share/doc/virtualbox-doc-5.2.24\" -D_REENTRANT -DIN_RING3 -DLOG_DISABLED -DIN_BLD_PROG -DIN_RT_R3 -DIN_ADV_BLD_PROG -DIN_RT_R3 -DLDR_WITH_NATIVE -DLDR_WITH_ELF32 -DLDR_WITH_LX -DLDR_WITH_MACHO -DLDR_WITH_PE -DRT_WITH_VBOX -DRT_NO_GIP -DRT_WITHOUT_NOCRT_WRAPPERS -DNOFILEID -DRT_WITH_ICONV_CACHE -DIPRT_WITHOUT_LDR_VERIFY -DRT_NO_GIP -Wp,-MD,/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/out/linux.amd64/release/obj/RuntimeBldProg/r3/linux/semevent-linux.o.dep -Wp,-MT,/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/out/linux.amd64/release/obj/RuntimeBldProg/r3/linux/semevent-linux.o -Wp,-MP -o /usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/out/linux.amd64/release/obj/RuntimeBldProg/r3/linux/semevent-linux.o /usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/VBox/Runtime/r3/linux/semevent-linux.cpp
/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/VBox/Runtime/r3/linux/semevent-linux.cpp:40:5: error: expected '(' before 'volatile'
 asm volatile (".global epoll_pwait");
/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/VBox/Runtime/r3/linux/semevent-linux.cpp:40:15: error: expected unqualified-id before string constant
 asm volatile (".global epoll_pwait");
/usr/src/RPM/BUILD/VirtualBox-5.2.24_OSE/src/VBox/Runtime/r3/linux/semevent-linux.cpp:40:15: error: expected ')' before string constant
 asm volatile (".global epoll_pwait");
2019-Jan-16 15:23:47 :: [x86_64] virtualbox.git 5.2.24-alt1: remote: build failed
2019-Jan-16 15:23:47 :: [x86_64] #200 virtualbox.git 5.2.24-alt1: build FAILED
Comment 2 Dmitry V. Levin 2019-01-24 05:20:08 MSK
Я посмотрел код, который не компилируется,
там используется asm volatile вне контекста функции.

Поскольку asm volatile вне контекста функции означает просто asm,
gcc раньше молча игнорировал volatile, а теперь это синтаксическая ошибка.

Я думаю, вам лучше просто заменить asm volatile на asm в тех местах,
где gcc считает этот volatile ошибкой.

В случае virtualbox это как минимум все упоминания в src/VBox/Runtime/.
Comment 3 AEN 2019-01-25 11:13:09 MSK
Прошу завершить исправление.
Comment 4 Evgeny Sinelnikov 2019-01-25 21:03:16 MSK
Таска собралась - проверяется:
#219496 TESTED #5 [test-only] sisyphus gsoap.git=2.8.75-alt1 virtualbox.git=5.2.24-alt3 kernel-modules.git=sisyphus/kernel-modules-virtualbox-std-def-5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-addition-std-def-5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-un-def-5.2.24-alt1 kernel-modules.git=sisyphus/kernel-modules-virtualbox-addition-un-def-5.2.24-alt1

Кроме этой в ней решается проблема efi для наших образов:
https://bugzilla.altlinux.org/show_bug.cgi?id=34435
Comment 5 AEN 2019-01-28 12:25:11 MSK
Есть ещё проблемы? Если нет, давайте заканчивать.
Comment 6 Repository Robot 2019-01-29 09:46:31 MSK
virtualbox-5.2.24-alt3 -> sisyphus:

Fri Jan 25 2019 Evgeny Sinelnikov <sin@altlinux> 5.2.24-alt3
- Fix rEFInd 0.11.4 icons missing due to inaccessible files on ISO9660 partition (Closes: 34435)

Thu Jan 24 2019 Evgeny Sinelnikov <sin@altlinux> 5.2.24-alt2
- Avoid volatile in asm inline within function context due new gcc8 release (Closes: 35929)

Wed Jan 16 2019 Evgeny Sinelnikov <sin@altlinux> 5.2.24-alt1
- Build first winter security release (Fixes: CVE-2019-2500, CVE-2019-2524, CVE-2019-2552)
Comment 7 AEN 2019-01-29 09:49:16 MSK
Спасибо!