Problem compiling emulators/virtualbox-ose-kmod 4.1.8_2

Lowell Gilbert freebsd-questions-local at
Wed Mar 21 21:10:47 UTC 2012

Mike Clarke <jmc-freebsd2 at> writes:

> On Friday 16 March 2012, Lowell Gilbert wrote:
>> My best advice is: clean out the directory for that port, update
>> again, and see if the problem is the same.
> I've now deleted everything in /usr/ports/emulators/virtualbox-ose-kmod and downloaded a fresh copy of the 
> port (4.1.10) from the FreeBSD website but still get the same problem when compiling.
> /data1/tmp/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-4.1.10/out/freebsd.x86/                                                                                        
> release/bin/src/vboxdrv/r0drv/freebsd/memobj-r0drv-freebsd.c:405: error: invalid type argument of '->'
> *** Error code 1

That line is supposed to be an assignment in between a VM_OBJECT_LOCK
and the corresponding VM_OBJECT_UNLOCK. Can you confirm that the patches
cause this to be the case? It is a little tricky for me to edit files in
an i386 environment, but the next step is to track down the definition
of PRTR0MEMOBJFREEBSD, assuming that is the dereference giving the error
on your system, and determining whether it ought to have the structure
entry being dereferenced.

> I've also updated the source files for the base system and built a new kernel in case it's a header problem 
> since I noticed that /usr/src/include/unistd.h and /usr/src/lib/libc/include/libc_private.h were both updated 
> in security advisory SA-11:07 (for which I only did a binary update at the time) but this didn't cure the 
> problem.
> I've had no problem building earlier versions but it went pear shaped with 4.1.8_2
> As an experiment I've used portdowngrade to try compiling a few older versions 
> number         date         portversion  comment
>     1  2012/03/15 09:32:29  VirtualBox-${DISTVERSION}  - Update to 4.1.10
>     2  2012/03/09 21:46:18  VirtualBox-${DISTVERSION}_2  - Reenabled fixed memobj r0 patch
>     3  2012/02/22 22:09:41  VirtualBox-${DISTVERSION}_1  - Revert memobj r0 patch until the problems on i386 
> are solved
>     4  2012/02/21 14:31:54  VirtualBox-${DISTVERSION}  - Update to 4.1.8
> Of these, the only one to compile OK was 4.1.8_1 so it looks like the fixed memobj r0 patch still has problems 
> on my system.
> FreeBSD curlew.lan 8.1-RELEASE-p8 FreeBSD 8.1-RELEASE-p8 #0: Tue Mar 20 19:00:39 GMT 2012     
> root at curlew.lan:/usr/obj/usr/src/sys/GENERIC  i386

I can't reproduce the problem. My i386 system is a little weird, so that
may not say much.

Also, my system code trees are updated more recently than yours, which
may well matter for a kernel module, such as this port builds. You might
want to try updating your system or trying the -legacy version of the port.

Be well.

More information about the freebsd-questions mailing list