All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bruce Ashfield <bruce.ashfield@windriver.com>
To: Diego Sueiro <diego.sueiro@gmail.com>,
	Andrea Adami <andrea.adami@gmail.com>
Cc: "yocto@yoctoproject.org" <yocto@yoctoproject.org>,
	Paul Eggleton <paul.eggleton@linux.intel.com>
Subject: Re: Custom defconfig is not used
Date: Sun, 3 Nov 2013 22:14:25 -0500	[thread overview]
Message-ID: <52771111.5000604@windriver.com> (raw)
In-Reply-To: <CAMCfZKHaRRVcx5YG+7DJ10-4DE_n9titOG7+aB3R+4H8iZjGvw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 11087 bytes --]

On 13-10-29 11:31 AM, Diego Sueiro wrote:
> Bruce,
>
> I've created new build setup with this configuration:
>
>     BB_VERSION        = "1.18.0"
>     BUILD_SYS         = "x86_64-linux"
>     NATIVELSBSTRING   = "Ubuntu-12.10"
>     TARGET_SYS        = "arm-poky-linux-gnueabi"
>     MACHINE           = "beaglebone"
>     DISTRO            = "poky"
>     DISTRO_VERSION    = "1.4.2"
>     TUNE_FEATURES     = "armv7a vfp neon"
>     TARGET_FPU        = "vfp-neon"
>     meta
>     meta-yocto
>     meta-yocto-bsp    = "dylan:4e399f08d596197859214fdb3b06403b87bf8789"
>     meta-oe           = "dylan:a108b2203a997634f87ac687e81712badaf3c546"
>     common-bsp        = "dylan:7fdf9c670a10c5031a2d5555c15c45e453de8c21"
>     meta-mine         = "dylan:4e399f08d596197859214fdb3b06403b87bf8789"
>
> common-bsp comes from meta-beagleboard.
> meta-oe needed to be added because of machine_kernel_pr.bbclass.
>
> bblayers.conf:
>
>     LCONF_VERSION = "6"
>     BBPATH = "${TOPDIR}"
>     BBFILES ?= ""
>     BBLAYERS ?= " \
>        ${TOPDIR}/meta \
>        ${TOPDIR}/meta-yocto \
>        ${TOPDIR}/meta-yocto-bsp \
>        ${TOPDIR}/meta-openembedded/meta-oe \
>        ${TOPDIR}/meta-beagleboard/common-bsp \
>        ${TOPDIR}/meta-mine \
>        "
>
> meta-mine:
>
>     conf/layer.conf:
>
>         BBPATH .= ":${LAYERDIR}"
>         BBFILES += "${LAYERDIR}/recipes*/*/*.bb
>         ${LAYERDIR}/recipes*/*/*.bbappend"
>         BBFILE_COLLECTIONS += "my-layer"
>         BBFILE_PATTERN_my-layer := "^${LAYERDIR}/"
>         BBFILE_PRIORITY_my-layer = "10"
>
>     recipes-kernel/linux/linux-mainline_3.8.bbappend (scenario 1):
>
>         FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-3.8:"
>         COMPATIBLE_MACHINE_beaglebone = "(beaglebone)"
>         SRC_URI += " file://defconfig \
>                       "
>
>     recipes-kernel/linux/linux-mainline-3.8/defconfig (scenario 1):
>
>         http://pastebin.com/qd8B3C5K
>
>
>     recipes-kernel/linux/linux-mainline_3.8.bbappend (scenario 2):
>
>         FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-3.8:"
>         inherit kernel
>         require recipes-kernel/linux/linux-yocto.inc
>         COMPATIBLE_MACHINE_beaglebone = "(beaglebone)"
>         SRC_URI += " file://config-addons.cfg \
>                       "
>
>     recipes-kernel/linux/linux-mainline-3.8/config-addons.cfg (scenario 2):
>
>         CONFIG_WATCHDOG_NOWAYOUT=y
>
>         CONFIG_NTFS_FS=y
>         CONFIG_NTFS_RW=y
>
>
>
> Results:
>
>   * Scenario 1: Full defconfig replacement
>
>     ${WORKDIR}/defconfig comes from meta-beagleboard instead of meta-mine
>
>     ${S}/.config comes from meta-beagleboard instead of meta-mine

FYI: I went silent on this, since I was running a few experiments in the
background. Mainly on scenario 2, but I can say that I see the same 
behaviour
with scenario #1 as you do. Whether or not I use the yocto kernel tooling,
or the core kernel processing, I see exactly the same defconfig used.

The issue you are seeing is distinct from the kernel processing, since
the defconfig isn't treated any differently than anything else on the
SRC_URI from the fetcher point of view ... and it is the fetcher which
is matching file://defconfig from the meta-beagleboard layer before the
one you have in meta-mine, since FILESEXTRAPATHS are searched after the
FILESPATH for the elements in the SRC_URI. But I'm not a fetcher expert,
that's my understanding and empirical evidence.

As a debug, I called src_patches() in patches.bbclass explicitly, and
it is obvious that the source of the defconfig is from meta-beagleboard.
Renaming the file in meta-beagleboard, allows the one in meta-mine to
be found, since the search continues.

So for this question, your issue is with the ordering of the elements
on the SRC_URI, and you can have your layer prioritized by making sure
it is in the search paths first.

This may or may not contradict the docs, and there are several threads
ongoing about SRC_URI ordering in the various branches .. so I'm simply
watching and waiting on this one.

>
>   * Scenario 2: Config fragments
>
>     "bitbake linux-mainline" got stuck on do_patch
>
>     log.do_patch:
>
>         DEBUG: Executing shell function do_patch
>
>         WARNING: no meta data branch found ...
>
>         Switched to branch 'linux-3.8.y'
>
>         [INFO] validating against known patches  (beaglebone-standard-meta)
>

As for this. I debugged it over the weekend, and you wouldn't see this on
master, but the tools on the dylan branch aren't using the proper kern-tools
SRCREVS. As such, I backported a change from master, and switched the
kern-tools to use the dylan branch.

What you were seeing as a hang, was really just an extremely long run
of the patch processing, the 700+ patches in the beagleboard kernel
recipe were being detected multiple times, and expanding to 47K entries.

Which the patch I've attached here, I was able to patch and configure the
kernel with the same layers.  Note: the run still takes a long time, since
even applying 700 patches at a couple of seconds per patch .. takes a
good chunk of time.

I've added Paul Eggleton to the cc: list, since I'm not sure if dylan is
still being updated, but if it is, the patch I'm attaching should be
applied to fix the kern-tools situation in that branch.

Cheers,

Bruce

>
>
> Regards,
>
> --
> *dS
> Diego Sueiro
>
> /*long live rock 'n roll*/
>
>
> 2013/10/29 Diego Sueiro <diego.sueiro@gmail.com
> <mailto:diego.sueiro@gmail.com>>
>
>     2013/10/29 Andrea Adami <andrea.adami@gmail.com
>     <mailto:andrea.adami@gmail.com>>
>
>         I'll jump in one more time...
>
>         Have you tried putting defconfig and patch under <machine> subdir?
>
>         recipes-kernel/linux/linux-yocto-3.2/<machine>
>         defconfig
>         my-own.patch
>
>         I've recently added two similar entries for 3.10 and it works.
>         Afaik it was impossible to put a common patch under
>         /linux-yocto-.3.2
>         at the time.
>
>
>     Andrea,
>
>     I did it before and not worked.
>     I'll do it again just to make sure.
>
>
>     Regards,
>
>     --
>     *dS
>     Diego Sueiro
>
>     /*long live rock 'n roll*/
>
>
>     2013/10/29 Andrea Adami <andrea.adami@gmail.com
>     <mailto:andrea.adami@gmail.com>>
>
>         On Tue, Oct 29, 2013 at 11:33 AM, Diego Sueiro
>         <diego.sueiro@gmail.com <mailto:diego.sueiro@gmail.com>> wrote:
>          >
>          > 2013/10/28 Bruce Ashfield <bruce.ashfield@windriver.com
>         <mailto:bruce.ashfield@windriver.com>>
>          >>
>          >> I'm using dylan for my yocto checkout (not oe-core
>         standalone, since
>          >> this is a yocto list/question),
>          >
>          > I thought that opemenbedded-core and poky were sharing the
>         same core
>          > components, classes and functions.
>          >
>          >>
>          >> My build shows:
>          >>
>          >> meta
>          >> meta-yocto
>          >> meta-yocto-bsp    =
>         "dylan:3dc4505f0e744177ae4ddff1e1ce8b31b95dfaa6"
>          >> meta-ti           =
>         "master:c14c386946e1ea341faeea292580e37d538d645d"
>          >> meta-alphalem     =
>         "master:a5c0e8ff51297a4090cd47d669b4fc9c94696908"
>          >> meta-alphalem-bsp =
>         "master:56086e4dc618e975c9a46491793041f0d18e47a2"
>          >>
>          >> Mike indicated that he was using dylan for meta-ti, but that
>         doesn't
>          >> make a difference either, since for our purposed. It's
>         kernel.bbclass
>          >> and the yocto kernel processing that matters.
>          >
>          > I'll build a setup with yocto (dylan), meta-beagleboard
>         (dylan) and
>          > meta-mine to check if I can reproduce the issues.
>          >
>          >>
>          >> In meta-alphalem-bsp, I have linux-mainline_3.2.bbappend,
>         with the
>          >> following content:
>          >>
>          >> > cat linux-mainline_3.2.bbappend
>          >> FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-3.2:"
>          >>
>          >> inherit kernel
>          >> require recipes-kernel/linux/linux-yocto.inc
>          >>
>          >> COMPATIBLE_MACHINE = "(beagleboard)"
>          >>
>          >> SRC_URI_append = " file://defconfig"
>          >> SRC_URI_append = " file://my_frag.cfg"
>          >>
>          >> And I added a fragment which has:
>          >>
>          >> > cat my_frag.cfg
>          >> CONFIG_WATCHDOG_NOWAYOUT=y
>          >> CONFIG_NTFS_FS=y
>          >> CONFIG_NTFS_RW=y
>          >>
>          >> When both are applied to the kernel build, we should see
>         CONFIG_NTFS_FS
>          >> transition from =m to =y:
>          >>
>          >> > grep CONFIG_NTFS_FS *
>          >> defconfig:CONFIG_NTFS_FS=m
>          >> my_frag.cfg:CONFIG_NTFS_FS=y
>          >>
>          >> After invoking linux-mainline's configure task, I see the
>         following:
>          >>
>          >> > grep CONFIG_NTFS_FS linux-beagleboard-standard-build/.config
>          >> CONFIG_NTFS_FS=y
>          >>
>          >> And other elements of the defconfig and fragment are
>         properly applied
>          >> to the configuration phase.
>          >>
>          >> I'm also seeing good results on master, which means that I'm
>         at a
>          >> standstill to reproduce any problems.
>          >>
>          >> Diego: can you confirm for me what triggers you are seeing
>         that shows
>          >> the defconfig and fragment are not used. I assume the config
>         options
>          >> are not present, but I just want to be sure.
>          >
>          > For the full defconfig replacement after doing a do_configure
>         I've checked
>          > .config on ${S} and it did not included my CONFIGS.
>          > For config fragment it got stuck on do_patch task.
>          >
>          >
>          >
>          > Regards,
>          >
>          > --
>          > *dS
>          > Diego Sueiro
>          >
>          > /*long live rock 'n roll*/
>          >
>          > _______________________________________________
>          > yocto mailing list
>          > yocto@yoctoproject.org <mailto:yocto@yoctoproject.org>
>          > https://lists.yoctoproject.org/listinfo/yocto
>          >
>
>         I'll jump in one more time...
>
>         Have you tried putting defconfig and patch under <machine> subdir?
>
>         recipes-kernel/linux/linux-yocto-3.2/<machine>
>         defconfig
>         my-own.patch
>
>         I've recently added two similar entries for 3.10 and it works.
>         Afaik it was impossible to put a common patch under
>         /linux-yocto-.3.2
>         at the time.
>
>         Regards
>
>         Andrea
>
>
>


[-- Attachment #2: 0001-kern-tools-use-dylan-branch.patch --]
[-- Type: application/mbox, Size: 1424 bytes --]

  parent reply	other threads:[~2013-11-04  3:14 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-15 21:07 Custom defconfig is not used Diego Sueiro
2013-10-15 21:29 ` Katu Txakur
2013-10-15 21:49 ` Rudolf Streif
2013-10-15 21:55   ` Andrea Adami
2013-10-16 17:25     ` Diego Sueiro
2013-10-16 18:19       ` Diego Sueiro
2013-10-17  3:56         ` Bruce Ashfield
2013-10-17 10:39           ` Diego Sueiro
2013-10-17 12:50             ` Bruce Ashfield
2013-10-17 13:15               ` Diego Sueiro
2013-10-17 13:19                 ` Bruce Ashfield
2013-10-17 13:51                   ` Andrea Adami
2013-10-17 15:47                   ` Diego Sueiro
2013-10-18  4:48                     ` Bruce Ashfield
2013-10-18  9:17                       ` Diego Sueiro
2013-10-18 20:17                         ` Bruce Ashfield
2013-10-22 16:23                           ` Mike Lewis
2013-10-22 22:10                             ` Bruce Ashfield
2013-10-24  0:17                             ` Bruce Ashfield
2013-10-25 11:43                               ` Diego Sueiro
2013-10-25 18:44                                 ` Bruce Ashfield
2013-10-26  1:19                                   ` Mike Lewis
2013-10-26 10:57                                     ` Diego Sueiro
2013-10-26 14:54                                       ` Bruce Ashfield
2013-10-28 20:58                                       ` Bruce Ashfield
2013-10-28 21:41                                         ` Mike Lewis
2013-10-29 10:33                                         ` Diego Sueiro
2013-10-29 11:00                                           ` Andrea Adami
2013-10-29 14:55                                             ` Diego Sueiro
2013-10-29 15:31                                               ` Diego Sueiro
2013-10-30 13:04                                                 ` Bruce Ashfield
2013-10-30 13:54                                                 ` Bruce Ashfield
2013-10-30 14:08                                                   ` Diego Sueiro
2013-10-30 14:26                                                 ` Bruce Ashfield
2013-11-04  3:14                                                 ` Bruce Ashfield [this message]
2013-11-28 15:37                                                   ` Diego Sueiro
2013-11-28 15:49                                                     ` Bruce Ashfield
2013-11-28 16:26                                                       ` Diego Sueiro
2013-11-28 16:28                                                         ` Bruce Ashfield
2013-11-28 16:41                                                           ` Paul Eggleton
2013-11-28 17:26                                                             ` Bruce Ashfield
2013-10-30  7:57 ` Jukka Rissanen
2013-10-30 12:27   ` Bruce Ashfield

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52771111.5000604@windriver.com \
    --to=bruce.ashfield@windriver.com \
    --cc=andrea.adami@gmail.com \
    --cc=diego.sueiro@gmail.com \
    --cc=paul.eggleton@linux.intel.com \
    --cc=yocto@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.