Discussion:
[yocto] [SDK] including kernel devsrc to the SDK failes
Måns Zigher
2018-10-25 11:19:34 UTC
Permalink
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
Måns Zigher
2018-10-26 08:28:45 UTC
Permalink
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" even 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.

BR
MÃ¥ns Zigher
Post by MÃ¥ns Zigher
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
Bruce Ashfield
2018-10-26 13:54:03 UTC
Permalink
Post by MÃ¥ns Zigher
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" even
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.

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
Post by MÃ¥ns Zigher
BR
Måns Zigher
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
--
Khem Raj
2018-10-29 13:10:40 UTC
Permalink
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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" even
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 ?
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
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
https://lists.yoctoproject.org/listinfo/yocto
--
Bruce Ashfield
2018-10-29 13:45:00 UTC
Permalink
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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" even
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.

Bruce
Post by Khem Raj
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
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
https://lists.yoctoproject.org/listinfo/yocto
--
Khem Raj
2018-10-29 15:12:17 UTC
Permalink
On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Post by Khem Raj
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
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
https://lists.yoctoproject.org/listinfo/yocto
--
Bruce Ashfield
2018-10-29 15:14:00 UTC
Permalink
Post by Khem Raj
On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Post by Khem Raj
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.

Bruce
Post by Khem Raj
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
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
https://lists.yoctoproject.org/listinfo/yocto
--
Khem Raj
2018-10-29 15:15:32 UTC
Permalink
On Mon, Oct 29, 2018 at 8:14 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Post by Khem Raj
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
thats reasonable
--
Bas Mevissen
2018-10-29 15:18:24 UTC
Permalink
Post by Bruce Ashfield
Post by Khem Raj
On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Post by Khem Raj
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.

-- Bas.
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
Den tors 25 okt. 2018 kl 13:19 skrev Måns Zigher
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
https://lists.yoctoproject.org/listinfo/yocto
--
Bruce Ashfield
2018-10-29 15:19:48 UTC
Permalink
Post by Bas Mevissen
Post by Bruce Ashfield
Post by Khem Raj
On Mon, Oct 29, 2018 at 6:46 AM Bruce Ashfield
Post by Bruce Ashfield
Post by Khem Raj
On Fri, Oct 26, 2018 at 6:54 AM Bruce Ashfield
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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.
Post by Bruce Ashfield
Post by Khem Raj
Post by Bruce Ashfield
Post by MÃ¥ns Zigher
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
Post by Bas Mevissen
-- Bas.
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
Bruce
Post by Khem Raj
Post by Bruce Ashfield
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
Post by MÃ¥ns Zigher
BR
Måns Zigher
Den tors 25 okt. 2018 kl 13:19 skrev Måns Zigher
      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
https://lists.yoctoproject.org/listinfo/yocto
--

Loading...