Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 556212 - x11-drivers/xf86-video-virtualbox-5.0.0 fails to compile with "can’t set ‘no_instrument_function’ attribute after definition"
Summary: x11-drivers/xf86-video-virtualbox-5.0.0 fails to compile with "can’t set ‘no_...
Status: RESOLVED DUPLICATE of bug 550202
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: AMD64 Linux
: Normal major (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-29 11:41 UTC by G.Wolfe Woodbury
Modified: 2015-07-30 19:46 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info required for report (emerge-info.txt,17.13 KB, text/plain)
2015-07-29 11:44 UTC, G.Wolfe Woodbury
Details
ebuild log (gzipped) (ebuild-log.txt.gz,32.92 KB, application/gzip)
2015-07-29 11:49 UTC, G.Wolfe Woodbury
Details

Note You need to log in before you can comment on or make changes to this bug.
Description G.Wolfe Woodbury 2015-07-29 11:41:59 UTC
With ~gcc-4.8.5 x11-drivers/xf86-video-virtualbox fails to compile VBox/Runtime/common/log/log.cpp with a "error: can’t set ‘no_instrument_function’ attribute after definition" from /lib/modules/4.1.3/build/include/linux/compiler.h on function "static __always_inline void __read_once_size(const volatile void *p, void *res, int size)"

Seems to be due to gcc getting confused about macro defines in relation to "inline" and "notrace"

Reproducible: Always

Steps to Reproduce:
1. gentoo-sources-4.1.3 under virtualbox-5.0.0 using gcc-4.8.5
2. emerge x11-drivers/xf86-video-virtualbox
3.
Actual Results:  
x86_64-pc-linux-gnu-g++ -c -O2 -nostdinc -iwithprefix include -include /lib/modules/4.1.3-gentoo/build/include/linux/kconfig.h -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wlogical-op -Wno-sign-compare -fdiagnostics-show-option -fno-stack-protector -O2 -mtune=generic -fno-omit-frame-pointer -fno-strict-aliasing -fno-common -include /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/include/VBox/VBoxGuestMangling.h -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-reorder-blocks -fno-asynchronous-unwind-tables -funit-at-a-time -Wno-sign-compare -fno-exceptions -fno-rtti -include /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/include/VBox/VBoxGuestMangling.h -Ir0drv/linux -I/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/src/VBox/Runtime -Iinclude -I/lib/modules/4.1.3-gentoo/build/include -I/lib/modules/4.1.3-gentoo/build/include/asm-i386/mach-default -I/lib/modules/4.1.3-gentoo/build/include/asm-x86/mach-default -I/lib/modules/4.1.3-gentoo/build/include/drm -I/lib/modules/4.1.3-gentoo/build/arch/x86/include -I/lib/modules/4.1.3-gentoo/build/arch/x86/include/asm/mach-default -I/lib/modules/4.1.3-gentoo/build/arch/x86/include/uapi -I/lib/modules/4.1.3-gentoo/build/arch/x86/include/generated -I/lib/modules/4.1.3-gentoo/build/arch/x86/include/generated/uapi -I/lib/modules/4.1.3-gentoo/build/include/uapi -I/lib/modules/4.1.3-gentoo/build/include/generated/uapi -I/lib/modules/4.1.3-gentoo/build/include -I/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release/obj/RuntimeGuestR0/dtrace -I/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/include -I/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_DEBUGGER -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/opt/VirtualBox\" -DRTPATH_APP_PRIVATE_ARCH=\"/opt/VirtualBox\" -DRTPATH_SHARED_LIBS=\"/opt/VirtualBox\" -DRTPATH_APP_DOCS=\"/opt/VirtualBox\" -DIN_RING0 -DIN_RT_R0 -DHC_ARCH_BITS=64 -DGC_ARCH_BITS=64 -D__KERNEL__ -DMODULE -DIN_GUEST -DIN_GUEST_R0 -DIN_RT_R0 -DRT_WITH_VBOX -DRT_WITHOUT_NOCRT_WRAPPERS -DRT_NO_EXPORT_SYMBOL -DRT_NO_EXPORT_SYMBOL -DMODULE -DKBUILD_MODNAME=KBUILD_STR\(vboxdrv\) -DKBUILD_BASENAME=KBUILD_STR\(vboxdrv\) -DIN_SUP_R0 -Wp,-MD,/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release/obj/RuntimeGuestR0/common/log/log.o.dep -Wp,-MT,/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release/obj/RuntimeGuestR0/common/log/log.o -Wp,-MP -o /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release/obj/RuntimeGuestR0/common/log/log.o /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/src/VBox/Runtime/common/log/log.cpp
In file included from /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/include/iprt/types.h:116:0,
                 from /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/include/iprt/log.h:30,
                 from /var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/src/VBox/Runtime/common/log/log.cpp:31:
/lib/modules/4.1.3-gentoo/build/include/linux/compiler.h:199:29: error: can’t set ‘no_instrument_function’ attribute after definition
 static __always_inline void __read_once_size(const volatile void *p, void *res, int size)
                             ^
/lib/modules/4.1.3-gentoo/build/include/linux/compiler.h:213:29: error: can’t set ‘no_instrument_function’ attribute after definition
 static __always_inline void __write_once_size(volatile void *p, void *res, int size)
                             ^
kmk: *** [/var/tmp/portage/x11-drivers/xf86-video-virtualbox-5.0.0/work/VirtualBox-5.0.0/out/linux.amd64/release/obj/RuntimeGuestR0/common/log/log.o] Error 1


Expected Results:  
no error

emerge --info: see attachments (bugzilla complains about length)
build log: see attachments
Comment 1 G.Wolfe Woodbury 2015-07-29 11:44:02 UTC
Created attachment 407884 [details]
emerge --info required for report
Comment 2 G.Wolfe Woodbury 2015-07-29 11:49:30 UTC
Created attachment 407886 [details]
ebuild log (gzipped)
Comment 3 G.Wolfe Woodbury 2015-07-29 11:54:35 UTC
Virtualbox sources try to deal with something like this by re-defining some definitions, but somehow with Gentoo using gcc-4.8.5 the compiler gets confused between "__always_inline" and something with "notrace" and a phase error occurs as shown in the logs.

virtualbox-guest-additions also has the same problem.
Comment 4 Brian Evans (RETIRED) gentoo-dev 2015-07-30 19:46:06 UTC

*** This bug has been marked as a duplicate of bug 550202 ***