[yocto] A question on adding a new program to a new meta layer

Insop Song insop.song at gmail.com
Thu Mar 7 13:43:40 PST 2013


Hi Bruce,


> What do you have in your "defconfig" ? I'm about to push patches that
> will make enabling sched_dealine a KERNEL_FEATURE option, which makes
> it even easier to use.
>

Here is my defconfg
https://github.com/insop/meta-dl/blob/sched-dl-V7/recipes-kernel/linux/linux/defconfig

I've asked this to Juri, too. So this is for the config for sched_deadline
"Every defconfig kernel should compile and work
fine (given HZ=1000, NO_HZ not set and HRTIMERS=y)"

And here are the CONFIG that should set  (Juri, please let us know if
I miss anything)
------
CONFIG_EXPERIMENTAL = y
CONFIG_CGROUPS = y
CONFIG_CGROUP_SCHED = n
CONFIG_HIGH_RES_TIMERS = y
CONFIG_PREEMPT = y
CONFIG_PREEMPT_RT = y
CONFIG_HZ_1000 = y

# CONFIG_NO_HZ is not set

------

> But in the meantime, if you want to enable the support on a yocto BSP,
> you can change your "defconfig" to be "sched-deadline.cfg" and only
> put the kernel options required to enable the feature.

I will pick up yocto-3.8 bb file from "master" branch and will try
this way shortly.

Regards,

Insop

>
> Cheers,
>
> Bruce
>
>
>>
>>   PV = "3.8"
>> -PR = "dl7"
>> +PR = "dl"
>>
>>   KSRC ?= ""
>>   S = '${@base_conditional("KSRC", "", "${WORKDIR}/git", "${KSRC}", d)}'
>>
>> Thank you.
>>
>> Insop
>>
>> On Wed, Mar 6, 2013 at 8:00 PM, Bruce Ashfield
>> <bruce.ashfield at windriver.com> wrote:
>>>
>>> On 13-03-05 1:54 AM, Insop Song wrote:
>>>>
>>>>
>>>> Hi,
>>>>
>>>> I am preparing a new meta layer for testing and promoting a
>>>> sched_deadline scheduler, called "meta-dl". I am planning to add
>>>> scheduler testing tools and different kernel versions as well.
>>>> - http://insop.github.com/meta-dl/
>>>
>>>
>>>
>>> FYI: I've already merged and staged sched_dl in linux-yocto_3.8:
>>>
>>>
>>> http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.8/log/?h=standard/edf
>>>
>>> I'll be supporting it there as well, so it makes sense to coordinate
>>> our efforts around kernels, configurations and benchmarks.
>>>
>>> Juri and I talked about this @ ELC a few weeks ago (I've added
>>> him to the cc as well), and rather than hiding sched_deadline
>>> kernel support in a custom kernel layer, I'd like to try and get
>>> more eyes on it via linux-yocto .. so if we can all coordinate our
>>> efforts here, that would be much better.
>>>
>>> Cheers,
>>>
>>> Bruce
>>>
>>>>
>>>> With the help of hands-on kernel lab (thank you Tom and Darren), I am
>>>> able to make kernel with sched_deadline enabled.
>>>>
>>>>
>>>> Now, I am having some trouble of adding testing tools to this meta-dl,
>>>> and hope I can get some help from you.
>>>>
>>>> - problem: adding a new software into my meta-dl layer
>>>>
>>>> - symtom and questions?
>>>> 1. bitbake core-image-minimal (normal image build) won't include the
>>>> additional program that I listed in .bb file below
>>>> 2. If I do "bitbake schedtool-dl -c install" it builds and install,
>>>> but at "i586" location instead of my machine staging rootfs
>>>> (dl-qemux86)
>>>>
>>>>
>>>>
>>>> - Here is my .bb file that pulls an additional program.
>>>>
>>>>
>>>> https://github.com/insop/meta-dl/blob/sched-dl-V7/recipes-tools/schedtool-dl/schedtool-dl.bb
>>>> ===
>>>> DESCRIPTION = "schedtool-dl (scheduler test tool) for deadline
>>>> scheduler"
>>>> HOMEPAGE = "https://github.com/insop/schedtool-dl"
>>>> SECTION = "base"
>>>> LICENSE = "GPLv2"
>>>> LIC_FILES_CHKSUM =
>>>> "file://Makefile;endline=55;md5=e4b4e8ed9c2132e1d727a1bb5e3bd984"
>>>> PR = "r1"
>>>>
>>>> SRC_URI = "git://github.com/insop/schedtool-dl.git;protocol=git"
>>>> SRCREV = "${AUTOREV}"
>>>>
>>>> S = "${WORKDIR}/git"
>>>>
>>>> do_compile() {
>>>>           oe_runmake
>>>> }
>>>>
>>>> do_install() {
>>>>           oe_runmake install DESTDIR=${D}
>>>> }
>>>>
>>>> PARALLEL_MAKE = ""
>>>>
>>>> BBCLASSEXTEND = "native"
>>>>
>>>> COMPATIBLE_MACHINE_dl-qemux86 = "dl-qemux86"
>>>> ====
>>>>
>>>>
>>>> - I've updated my conf/layer.conf file to include above file
>>>> https://github.com/insop/meta-dl/blob/sched-dl-V7/conf/layer.conf
>>>> ====
>>>> # We have a conf and classes directory, add to BBPATH
>>>> BBPATH := "${BBPATH}:${LAYERDIR}"
>>>>
>>>> # We have a recipes directory, add to BBFILES
>>>> BBFILES := "${BBFILES} ${LAYERDIR}/recipes-*/*/*.bb \
>>>>           ${LAYERDIR}/recipes-*/*/*.bbappend"
>>>>
>>>> BBFILE_COLLECTIONS += "dl-qemux86"
>>>> BBFILE_PATTERN_dl-qemux86 := "^${LAYERDIR}/"
>>>> BBFILE_PRIORITY_dl-qemux86 = "6"
>>>> =====
>>>>
>>>>
>>>>
>>>> Thank you.
>>>>
>>>> Regards,
>>>>
>>>> Insop
>>>>
>>>>
>>>> - ref:
>>>> 1. sched_deadline:
>>>> https://events.linuxfoundation.org/events/linuxcon-europe/song
>>>> 2. sched_deadline:
>>>>
>>>>
>>>> http://events.linuxfoundation.org/images/stories/slides/elc2013_kobayashi.pdf?a
>>>> _______________________________________________
>>>> yocto mailing list
>>>> yocto at yoctoproject.org
>>>> https://lists.yoctoproject.org/listinfo/yocto
>>>
>>>
>>>
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
>>
>



More information about the yocto mailing list