[OE-core] [PATCH 0/2] Support for VirtualBox guest additions

Bruce Ashfield bruce.ashfield at gmail.com
Wed Aug 5 02:24:16 UTC 2015


On Tue, Aug 4, 2015 at 4:10 PM, Bystricky, Juro
<juro.bystricky at intel.com> wrote:
> I am pretty sure initially I tried to use kernel-devsrc  to install VirtualBox guest additions.
> It did not work out of the box for me, there were either files missing or they were not in expected locations.
> It is possible it could  be made to work with some modified installation,  but the size is an issue
> as well: kernel-devsrc packs over 500MB (uncompressed).

Please give details .. not just statements of "it didn't work". The use
case you claim is one that we explicitly test with the existing packages.
So something has gone  wrong, it isn't something that should be
broken like you describe.

>
> The source code is only needed when you want to reconfigure/rebuild the kernel.
> Out-of-tree modules generally don't need any additional source code, typically only header files.

Yep, this is very well known. Check the Yocto bugzilla. We've gone back and
forth on this many times.

Bruce

>
>
> Juro
>
>
>> -----Original Message-----
>> From: Mark Hatle [mailto:mark.hatle at windriver.com]
>> Sent: Tuesday, August 4, 2015 10:32 AM
>> To: Bystricky, Juro; openembedded-core at lists.openembedded.org;
>> jurobystricky at hotmail.com
>> Cc: Purdie, Richard
>> Subject: Re: [OE-core] [PATCH 0/2] Support for VirtualBox guest additions
>>
>> On 8/4/15 12:25 PM, Bystricky, Juro wrote:
>> > I agree, the name "kernel-headers" may not be the most fortunate, "linux-
>> headers"
>> > is probably more fitting.  The recipe installs the files in a similar
>> > fashion that is done by
>> >
>> > apt-get install linux-headers-$(uname -r)
>> >
>> > Typical contents can be viewed for example here:
>> > https://www.archlinux.org/packages/core/i686/linux-headers/
>> >
>> > These files are needed to allow building  of kernel drivers against
>> > the running Linux kernel. In a way, it is a subset of kernel-devsrc,
>> > but including  ".config" file used for the actual running kernel.
>>
>> Again this is part of the purpose of the existing kernel-devsrc package.  So
>> what is missing preventing this from working.  It likely needs to be added to
>> the kernel-devsrc package instead (or a sub package that is created by the
>> kernel-devsrc recipe.)
>>
>> > Having these files installed, it is possible  to compile additional
>> > kernel drivers that are not part of the kernel-devsrc .
>> >  VirtualBox compiles some of their own drivers this way, others as well.
>> > There are many other scenarios where you may want to add a new kernel
>> > driver to an already installed Linux kernel.
>>
>> Yes, this was part of the design behind the kernel-devsrc, make sure the
>> sources and components used to build the running kernel were made
>> available to the target so that out-of-tree/external kernel modules could be
>> built to match the running system -- as well as the ability to reconfigure and
>> rebuild the kernel itself.
>>
>> Bruce is on vacation this week and may not be around to respond, but adding
>> yet another package is not the right answer here.  Lets fix what may be
>> broken in what we have.
>>
>> --Mark
>>
>> > Juro
>> >
>> >
>> >
>> >> -----Original Message-----
>> >> From: Mark Hatle [mailto:mark.hatle at windriver.com]
>> >> Sent: Tuesday, August 4, 2015 9:20 AM
>> >> To: Bystricky, Juro; openembedded-core at lists.openembedded.org;
>> >> jurobystricky at hotmail.com
>> >> Cc: Purdie, Richard
>> >> Subject: Re: [OE-core] [PATCH 0/2] Support for VirtualBox guest
>> >> additions
>> >>
>> >> On 8/3/15 3:35 PM, Juro Bystricky wrote:
>> >>> In order to support VirtualBox guest additions, kernel headers need
>> >>> to be present in the VM. I am aware we already have two
>> >>> packages/recipes that are somewhat similar (kernel-devsrc.bb,
>> >>> linux-libc-headers), but none
>> >> of them is suitable for this purpose.
>> >>> Besides the kernel headers, some additional files (scripts,
>> >>> Makefiles, .config, etc) are also required.
>> >>
>> >> linux-libc-headers is only for building applications.  kernel-devsrc
>> >> is for building modules on the target.
>> >>
>> >> What do these specific modules need that are not present in kernel-
>> devsrc?
>> >> (I really don't want 'yet another' confusing package added to the
>> >> system.)
>> >>
>> >>> The new recipe "kernel-headers.bb" can in principle be used by other
>> >> images as well.
>> >>> It is not limited to the Build Appliance and hence is not a part of
>> >>> the Build Appliance recipe.
>> >>
>> >> I think kernel-headers is a bad name for a package.  It could be confusing.
>> >>
>> >> --Mark
>> >>
>> >>> Juro Bystricky (2):
>> >>>   kernel-headers: linux kernel headers
>> >>>   build-appliance-image: support for VirtualBox guest addtions
>> >>>
>> >>>  .../README_vbox_guest_additions.txt                | 78
>> >> ++++++++++++++++++++++
>> >>>  .../images/build-appliance-image_12.0.1.bb         |  4 +-
>> >>>  meta/recipes-kernel/linux/kernel-headers.bb        | 66
>> >> ++++++++++++++++++
>> >>>  3 files changed, 147 insertions(+), 1 deletion(-)  create mode
>> >>> 100644
>> >>> meta/recipes-core/images/build-appliance-
>> >> image/README_vbox_guest_addit
>> >>> ions.txt  create mode 100644
>> >>> meta/recipes-kernel/linux/kernel-headers.bb
>> >>>
>> >
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



-- 
"Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end"



More information about the Openembedded-core mailing list