[Pkg-virtualbox-devel] Bug#703358: virtualbox-guest-dkms: vboxvideo_drm.c fails to compile after upgrade of linux-headers-3.2.0-4 from 3.2.35-2 to 3.2.39-2

Tomasz Wierzbicki tomasz at cs.uni.wroc.pl
Mon Mar 18 19:06:29 UTC 2013


Package: virtualbox-guest-dkms
Version: 4.1.18-dfsg-2
Severity: important

Dear Maintainer,

Making dpkg-reconfigure on virtualbox-guest-dkms gives the following error:

Loading new virtualbox-guest-4.1.18 DKMS files...
Building only for 3.2.0-4-amd64
Building initial module for 3.2.0-4-amd64
Error! Bad return status for module build on kernel: 3.2.0-4-amd64 (x86_64)
Consult /var/lib/dkms/virtualbox-guest/4.1.18/build/make.log for more
information.

The make.log says (full contents of the file attached to the report):

[...]
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.o
[...]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:115:9:
error: field name not in record or union initializer

It seems this is the same problem that occurred earlier in RHEL: since
linux-3.3.0-rc1 drm_driver::fops is a pointer, but this change was
backported to erlier versions of the kernel, which the code in vboxvideo_drm.c
does
not recognize (it tests only wheather LINUX_VERSION_CODE <
KERNEL_VERSION(3,3,0)).
Indeed, when I replaced the offending file vboxvideo_drm.c with the following
downloaded
from the internet:

https://www.virtualbox.org/svn/vbox/trunk/src/VBox/Additions/linux/drm/vboxvideo_drm.c

and added the following line to it:

#define DRM_RHEL63

then the compilation went successfully.

I recreated the problem and report it from my virtualbox host system (although
installing guest additions in a host system makes little sense),
but the errors occurring during installation on the guest system (despite a
different architecture: pae instead of amd64) were identical.





-- System Information:
Debian Release: 7.0
  APT prefers testing
  APT policy: (901, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
-------------- next part --------------
DKMS make.log for virtualbox-guest-4.1.18 for kernel 3.2.0-4-amd64 (x86_64)
Mon Mar 18 19:32:34 CET 2013
make: Entering directory `/usr/src/linux-headers-3.2.0-4-amd64'
  LD      /var/lib/dkms/virtualbox-guest/4.1.18/build/built-in.o
  LD      /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/built-in.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBoxGuest-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBoxGuest.o
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBoxGuest.c: In function ?VBoxGuestCommonIOCtl?:
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBoxGuest.c:2480:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBoxGuest2.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/GenericRequest.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/HGCMInternal.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/Init.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/PhysHeap.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/SysHlp.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VMMDev.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/alloc-r0drv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/initterm-r0drv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/memobj-r0drv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/mpnotification-r0drv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/powernotification-r0drv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/alloc-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/assert-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/initterm-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/memobj-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/memuserkernel-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/mp-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/mpnotification-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/process-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/semevent-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/semeventmulti-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/semfastmutex-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/spinlock-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/thread-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/thread2-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/time-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/linux/RTLogWriteDebugger-r0drv-linux.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/r0drv/generic/semspinmutex-r0drv-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/alloc/alloc.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/err/RTErrConvertFromErrno.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/err/RTErrConvertToErrno.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/log.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/logellipsis.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/logrel.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/logrelellipsis.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/logcom.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/log/logformat.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg1Weak.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2Add.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2AddWeak.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2AddWeakV.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2Weak.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/RTAssertMsg2WeakV.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/assert.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/misc/thread.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/RTStrCopy.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/RTStrCopyP.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strformat.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strformatrt.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strformattype.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strprintf.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strtonum.o
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strtonum.c: In function ?VBoxGuest_RTStrConvertHexBytes?:
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strtonum.c:977:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/string/strtonum.c:996:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/table/avlpv.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/time/time.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTAssertShouldPanic-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTLogWriteStdErr-stub-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTLogWriteStdOut-stub-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTSemEventWait-2-ex-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTSemEventWaitNoResume-2-ex-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTSemEventMultiWait-2-ex-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/RTSemEventMultiWaitNoResume-2-ex-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/generic/errvars-generic.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBox/log-vbox.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/VBox/logbackdoor.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/common/alloc/heapsimple.o
  LD [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxguest/vboxguest.o
  LD      /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/built-in.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/vfsmod.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/dirops.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/lnkops.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/regops.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/utils.o
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/utils.c: In function ?sf_nlscpy?:
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/utils.c:582:13: warning: passing argument 3 of ?utf8_to_utf32? from incompatible pointer type [enabled by default]
/usr/src/linux-headers-3.2.0-4-common/include/linux/nls.h:53:12: note: expected ?unicode_t *? but argument is of type ?wchar_t *?
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/GenericRequest.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/SysHlp.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/PhysHeap.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/Init.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/VMMDev.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/HGCM.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/VBoxGuestR0LibSharedFolders.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/VbglR0CanUsePhysPageList.o
  LD [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxsf/vboxsf.o
  LD      /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/built-in.o
  CC [M]  /var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.o
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:114:5: warning: braces around scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:114:5: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:115:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:115:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:115:9: warning: initialization from incompatible pointer type [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:115:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:116:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:116:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:116:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:116:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:117:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:117:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:117:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:117:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:121:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:121:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:121:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:121:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:125:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:125:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:125:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:125:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:126:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:126:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:126:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:126:9: warning: (near initialization for ?driver.fops?) [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:127:9: error: field name not in record or union initializer
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:127:9: error: (near initialization for ?driver.fops?)
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:127:9: warning: excess elements in scalar initializer [enabled by default]
/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.c:127:9: warning: (near initialization for ?driver.fops?) [enabled by default]
make[4]: *** [/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo/vboxvideo_drm.o] Error 1
make[3]: *** [/var/lib/dkms/virtualbox-guest/4.1.18/build/vboxvideo] Error 2
make[2]: *** [_module_/var/lib/dkms/virtualbox-guest/4.1.18/build] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2
make: Leaving directory `/usr/src/linux-headers-3.2.0-4-amd64'


More information about the Pkg-virtualbox-devel mailing list