[yocto] [SDK] including kernel devsrc to the SDK failes

Bruce Ashfield bruce.ashfield at windriver.com
Mon Oct 29 08:19:48 PDT 2018


On 2018-10-29 11:18 AM, Bas Mevissen wrote:
> On 2018-10-29 16:14, Bruce Ashfield wrote:
>> On 2018-10-29 11:12 AM, Khem Raj wrote:
>>> On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
>>> <bruce.ashfield at windriver.com> wrote:
>>>>
>>>>
>>>>
>>>> On 10/29/2018 9:10 AM, Khem Raj wrote:
>>>>> On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
>>>>> <bruce.ashfield at windriver.com> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> On 10/26/2018 4:28 AM, Måns Zigher wrote:
>>>>>>> So it looks like the number of /bin/awk have increased so the 
>>>>>>> patch will
>>>>>>> fix one problem but there is more to fix. I have a "workaround" 
>>>>>>> evenYup. That works too (as would a variable from the env), but 
>>>>>>> we'll still
>>> need a sed based patch in the short term.
>>>>>>> though I am not so sure it is a workaround or not. The problem is 
>>>>>>> fixed
>>>>>>> adding to kernel-devsrc.bbappend
>>>>>>>
>>>>>>> do_install_append() {
>>>>>>> # This fixes the rpm dependency failure on install of kernel-devsrc
>>>>>>> depending on /bin/awk
>>>>>>> cd ${D} || true
>>>>>>> for i in $(grep -srI "!/bin/awk" | cut -d":" -f1); do
>>>>>>> sed -i -e "s#!/bin/awk#!/usr/bin/env awk#g" $i
>>>>>>> done
>>>>>>> }
>>>>>>>
>>>>>>> The original solution can be found at
>>>>>>>
>>>>>>> https://gerrit.automotivelinux.org/gerrit/gitweb?p=AGL/meta-agl.git;a=blobdiff;f=meta-agl-bsp/meta-ti/recipes-kernel/linux/linux-ti-staging_%25.bbappend;h=43fa494a26c132b875c177acf0389163d5e34c06;hp=b2e5431400acef0a5372e5490ac4f464482d4b3b;hb=4bfc821810cdee47611c6d3e94d771971f51fa75;hpb=1cf6b17fd15fde569374c85d4df722784f4e9c67 
>>>>>>>
>>>>>>>
>>>>>>> The best solution might be to add kernel patches but since the 
>>>>>>> number of
>>>>>>> /bin/awk have increased I think that this is fine in the kernel 
>>>>>>> universe
>>>>>>> but a problem in poky universe. So by adding it to kernel-devsrc 
>>>>>>> it will
>>>>>>> make sure that when the kernel get's tainted in the future it 
>>>>>>> will not
>>>>>>> break the rpm build. This is a "bug" only when using rpm ipk will 
>>>>>>> not
>>>>>>> detect it as a problem.
>>>>>>
>>>>>> I'm ok with this type of solution as well, since this is similar
>>>>>> to what we've had to do with perf in the past (sed and modify versus
>>>>>> patching). I can always patch and fix things in linux-yocto, but then
>>>>>> another other kernel still suffers the issue.
>>>>>
>>>>>
>>>>> can we fix it in upstream kernel to use something like
>>>>> #!/usr/bin/env awk
>>>>> may be ?
>>>>
>>>>
>>>> Yup. That works too (as would a variable from the env), but we'll still
>>>> need a sed based patch in the short term.
>>>>
>>>
>>> short term is fine, but I think this should be fixed in upstream kernel.
>>
>> Also agreed. That was my primary suggestion as well, since even with
>> that slow pace, we'd have it in all the kernel trees by the next
>> Yocto release window.
>>
> 
> I would recommend to keep some kind of automated hot patching in as not 
> all vendor kernels will catch up that quickly, if ever.

That is what we normally do. See the old perf patches. They test for
the issue, and then sed the change if required.

Bruce

> 
> -- Bas.
> 
>> Bruce
>>
>>>
>>>> Bruce
>>>>
>>>>>
>>>>>>
>>>>>> It would be better if folks with this problem also send patches 
>>>>>> upstream
>>>>>> to allow us to vary the location of awk via a variable, since that 
>>>>>> would
>>>>>> eventually fix all kernels without needing any modifications .. 
>>>>>> but that
>>>>>> is a medium term time play, versus doing the sed operation.
>>>>>>
>>>>>> If you have a patch to kernel-devsrc in master, feel free to send it
>>>>>> and cc' me, and I can pull it into my queue, test and then send it in
>>>>>> my next pull request.
>>>>>>
>>>>>> Bruce
>>>>>>
>>>>>>>
>>>>>>> BR
>>>>>>> Måns Zigher
>>>>>>>
>>>>>>> Den tors 25 okt. 2018 kl 13:19 skrev Måns Zigher 
>>>>>>> <mans.zigher at gmail.com
>>>>>>> <mailto:mans.zigher at gmail.com>>:
>>>>>>>
>>>>>>>       Hi,
>>>>>>>
>>>>>>>       I am trying to add the kernel devsrc to the SDK but I am 
>>>>>>> getting the
>>>>>>>       following error
>>>>>>>
>>>>>>>       Problem: conflicting requests
>>>>>>>          - nothing provides /bin/awk needed by 
>>>>>>> kernel-devsrc-1.0-r0.imx8mqevk
>>>>>>>
>>>>>>>       I have applied the following patch to try and fix this 
>>>>>>> problem.
>>>>>>>
>>>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto/commit/?id=8af11c1cdd8fa08217e702b57cf96e9030db52b2 
>>>>>>>
>>>>>>>
>>>>>>>       I have verified that it was applied and run kernel-devsrc 
>>>>>>> works. The
>>>>>>>       error is from do_populate_sdk and I am suspecting that the 
>>>>>>> problem
>>>>>>>       is related to me using rpm. I believe rpm might be to smart 
>>>>>>> in this
>>>>>>>       case detecting the dependency and resulting dnf from 
>>>>>>> failing when
>>>>>>>       running the task do_populate_sdk. Any suggestion on how to get
>>>>>>>       forward on this error. I would like to run dnf manually to 
>>>>>>> check any
>>>>>>>       dependency of the kernel-devsrc rpm package but cannot 
>>>>>>> figure out how.
>>>>>>>
>>>>>>>       BR
>>>>>>>       Måns Zigher
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> -- 
>>>>>> _______________________________________________
>>>>>> yocto mailing list
>>>>>> yocto at yoctoproject.org
>>>>>> https://lists.yoctoproject.org/listinfo/yocto
> 



More information about the yocto mailing list