[poky] [PATCH 0/2] RFC: enable building of out-of-tree modules

Saul Wold saul.wold at intel.com
Thu Mar 3 01:28:49 PST 2011


On 03/02/2011 03:34 PM, Darren Hart wrote:
> On 03/02/2011 10:00 AM, Darren Hart wrote:
>> From: Darren Hart<dvhart at linux.intel.com>
>>
>> The following patches provide a mechanism to address [BUGID #241] through
>> two additions to module.bbclass which build and clean the hostprogs. The
>> second patch adds an example kernel module.
>>
>> When building with the hello-world-mod, the resulting rootfs is missing
>> all the other kernel modules (/lib/modules/KERNEL_VER/extras contains
>> hello-world.ko, but /lib/modules/KERNEL_VER/kernel is missing). The
>> sysroots has all the modules, but the rootfs generated by the image
>> recipe only has the hello-world module. This is the last wrinkle to
>> iron out, any ideas on how to address this would be appreciated.
>
> CC'ing Saul and Mark hoping they may have some packaging insight into why this
> might be happening.
>
Darren,

I messed around with your branch tonight (after my migraine went away 
finally).  I set in my local.conf

MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " hello-world-mod "

I tried it at first and it seemed to fail, but I cleanall'ed both 
hello-world-mod and task-poky-boot and that seemed to do the trick. 
Might have been a stale task-poky-boot was not getting rebuilt properly. 
  I saw both a /lib/modules/<KERNELVER>/extra and 
/lib/modules/<KERNELVER>/kernel in my images.

Sau!

> These patches are now available in my contrib/dvhart/modules branch.
>
> I've tried with both rpm and ipk root_fs packaging and get the same result. If
> I include hello-world-mod in the image, the /lib/modules/KERNELVER/kernel
> directory isn't present in the final rootfs, for example:
>
> BUILDING WITHOUT hello-world-mod in the image:
>
> dvhart at rage:build$ ls tmp/sysroots/qemux86/lib/modules/2.6.37.2-yocto-standard+
> build  extra  kernel  modules.builtin  modules.order  source
> dvhart at rage:build$ ls tmp/sysroots/qemux86/lib/modules/2.6.37.2-yocto-standard+/kernel/fs
> autofs4  binfmt_misc.ko  cifs  configfs  jbd2  minix  nls  ocfs2  quota  reiserfs  romfs
> dvhart at rage:build$ ls tmp/work/qemux86-poky-linux/poky-image-sato-1.0-r0/rootfs/lib/modules/2.6.37.2-yocto-standard+
> kernel             modules.ccwmap   modules.devname      modules.isapnpmap  modules.seriomap  modules.symbols.bin
> modules.alias      modules.dep      modules.ieee1394map  modules.ofmap      modules.softdep   modules.usbmap
> modules.alias.bin  modules.dep.bin  modules.inputmap     modules.pcimap     modules.symbols
> dvhart at rage:build$ ls tmp/work/qemux86-poky-linux/poky-image-sato-1.0-r0/rootfs/lib/modules/2.6.37.2-yocto-standard+/kernel/fs/
> nls
> dvhart at rage:build$ ls tmp/work/qemux86-poky-linux/poky-image-sato-1.0-r0/rootfs/lib/modules/2.6.37.2-yocto-standard+/kernel/fs/nls/
> nls_utf8.ko
>
>
> BUILDING WITH hello-world-mod in the image:
>
> dvhart at rage:build$ ls tmp/sysroots/qemux86/lib/modules/2.6.37.2-yocto-standard+
> build  extra  kernel  modules.builtin  modules.order  source
> dvhart at rage:build$ ls tmp/sysroots/qemux86/lib/modules/2.6.37.2-yocto-standard+/extra/
> hello_world.ko
> dvhart at rage:build$ ls tmp/sysroots/qemux86/lib/modules/2.6.37.2-yocto-standard+/kernel/fs
> autofs4  binfmt_misc.ko  cifs  configfs  jbd2  minix  nls  ocfs2  quota  reiserfs  romfs
> dvhart at rage:build$ ls tmp/work/qemux86-poky-linux/poky-image-sato-1.0-r0/rootfs/lib/modules/2.6.37.2-yocto-standard+
> extra              modules.ccwmap   modules.devname      modules.isapnpmap  modules.seriomap  modules.symbols.bin
> modules.alias      modules.dep      modules.ieee1394map  modules.ofmap      modules.softdep   modules.usbmap
> modules.alias.bin  modules.dep.bin  modules.inputmap     modules.pcimap     modules.symbols
>
>
> Still digging, but I'm mostly just stumbling around in the dark.
>
> --
> Darren
>
>> Gary, can you try the module.bbclass with your module to see if it
>> builds successfully?
>>
>> Thanks,
>>
>> Darren Hart (2):
>>     module: build and clean hostprogs for each module
>>     hello-world-mod: add a module for testing module.bbclass
>>
>>    meta/classes/module.bbclass                        |   21 ++-
>>    meta/recipes-kernel/hello-world-mod/files/COPYING  |  340 ++++++++++++++++++++
>>    meta/recipes-kernel/hello-world-mod/files/Makefile |   14 +
>>    .../hello-world-mod/files/hello_world.c            |   33 ++
>>    .../hello-world-mod/hello-world-mod.bb             |   15 +
>>    5 files changed, 422 insertions(+), 1 deletions(-)
>>    create mode 100644 meta/recipes-kernel/hello-world-mod/files/COPYING
>>    create mode 100644 meta/recipes-kernel/hello-world-mod/files/Makefile
>>    create mode 100644 meta/recipes-kernel/hello-world-mod/files/hello_world.c
>>    create mode 100644 meta/recipes-kernel/hello-world-mod/hello-world-mod.bb
>>
>> _______________________________________________
>> poky mailing list
>> poky at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/poky
>
>




More information about the poky mailing list