Opened 7 years ago
Last modified 7 years ago
#17619 new defect
tools (guest additions) and drivers don't build on SL7
| Reported by: | GZU | Owned by: | |
|---|---|---|---|
| Component: | guest additions | Version: | VirtualBox 5.2.8 |
| Keywords: | drivers tools | Cc: | |
| Guest type: | Windows | Host type: | Linux |
Description
Hi, With updated kernel in SL7 (and I assume CentOS7 and RHEL7) 3.10.0-693.21.1.el7.x86_64 drivers (and tools on linux guest) no longer compile. Looks like it is due to REPTOLINE kernel changes.
make V=1 CONFIG_MODULE_SIG= -C /lib/modules/3.10.0-693.21.1.el7.x86_64/build SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 -j12 modules arch/x86/Makefile:166: * CONFIG_RETPOLINE=y, but not supported by the compiler. Toolchain update recommended.. Stop. make: * [vboxdrv] Error 2
I can reboot in previous kernel as a workaround.
Thanks,
GZU
Attachments (1)
Change History (4)
by , 7 years ago
| Attachment: | vbox-install.log added |
|---|
comment:3 by , 7 years ago
There is a difference in the Makefile on SL6 and SL7. SL6 warns and continues SL7 throws an error, see commented out and uncommented sections below
# Avoid indirect branches in kernel to deal with Spectre #ifdef CONFIG_RETPOLINE # RETPOLINE_CFLAGS += $(call cc-option,-mindirect-branch=thunk-extern -mindirect-branch-register) # ifneq ($(RETPOLINE_CFLAGS),) # KBUILD_CFLAGS += $(RETPOLINE_CFLAGS) -DRETPOLINE # else # $(error CONFIG_RETPOLINE=y, but not supported by the compiler. Toolchain update recommended.) # endif #endif
# Avoid indirect branches in kernel to deal with Spectre ifdef CONFIG_RETPOLINE
RETPOLINE_CFLAGS += $(call cc-option,-mindirect-branch=thunk-extern -mindirect-branch-register) ifneq ($(RETPOLINE_CFLAGS),)
KBUILD_CFLAGS += $(RETPOLINE_CFLAGS) -DRETPOLINE
else
# Fail brew build, but let other users proceed with warning RETPOLINE_MSG := CONFIG_RETPOLINE=y, but not supported by the compiler. Toolchain update recommended. KBUILD_USER := $(shell id -un) ifeq ($(KBUILD_USER), mockbuild)
$(error $(RETPOLINE_MSG))
else
$(warning $(RETPOLINE_MSG))
endif
endif
endif


install log fail to build drivers