Re: [SDK] including kernel devsrc to the SDK failes

Bruce Ashfield <bruce.ashfield@...>

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@...> wrote:

On 10/29/2018 9:10 AM, Khem Raj wrote:
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
<bruce.ashfield@...> 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

The original solution can be found at;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.


-- Bas.



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.


Måns Zigher

Den tors 25 okt. 2018 kl 13:19 skrev Måns Zigher <mans.zigher@...


      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.

      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.

      Måns Zigher

yocto mailing list

Join to automatically receive all group messages.