linux-yocto: revision bump + pvr + checkout fix
cover linux-yocto: revision bump + pvr + checkout fix
Richard/Saul,
Naturally right after I sent my previous version bump to 3.2.7, 3.2.8 came out with an x86 floating point fix that was worth picking up. Hence my quick bump to 3.2.8.
The other update to the 3.0/3.2 trees stages content for PVR functionality in some future BSP work.
And finally, I added some extra checks and safety to the kernel checkout code, since Saul was reporting issues that I couldn't reproduce, I can't be sure if they fix his problem. But they do fix issues with aborted builds and the korg recipe. I've built many kernels and as many recipes as possible with these in place.
Cheers,
Bruce
The following changes since commit d86e3082e695cde555df276a2436873fa5381130:
Otavio Salvador (1):
licenses.conf: fix quotting of SRC_DISTRIBUTE_LICENSES
are available in the git repository at:
git://git.pokylinux.org/poky-contrib zedd/kernel
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel
Bruce Ashfield (3):
linux-yocto: make kernel_checkout reentrant
linux-yocto/meta: add pvr feature description
linux-yocto: update to v3.2.8
meta/classes/kernel-yocto.bbclass | 33 ++++++++++++-------- meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb | 8 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.2.bb | 16 +++++----- 6 files changed, 35 insertions(+), 28 deletions(-)
PATCH 1/3 linux-yocto: make kernel_checkout reentrant
The steps in do_kernel_checkout modify the source tree in WORKDIR. If it is called multiple times, or interrupted, the tree is left in an inconsistent state.
This change adds protections around branch names, and around the manipulations of directories to ensure that it is safe to call at any point.
--- meta/classes/kernel-yocto.bbclass | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 deletions(-)
meta/classes/kernel-yocto.bbclass +20 -13
@@ -139,17 +139,17 @@ do_patch() { } do_kernel_checkout() { - # we build out of {S}, so ensure that ${S} is clean and present - rm -rf ${S} - mkdir -p ${S}/.git - set +e # A linux yocto SRC_URI should use the bareclone option. That # ensures that all the branches are available in the WORKDIR version # of the repository. If it wasn't passed, we should detect it, and put # out a useful error message - if [ -d "${WORKDIR}/git/.git" ]; then + if [ -d "${WORKDIR}/git/" ] && [ -d "${WORKDIR}/git/.git" ]; then + # we build out of {S}, so ensure that ${S} is clean and present + rm -rf ${S} + mkdir -p ${S}/.git + echo "WARNING. ${WORKDIR}/git is not a bare clone." echo "Ensure that the SRC_URI includes the 'bareclone=1' option."
@@ -158,12 +158,14 @@ do_kernel_checkout() { mv ${WORKDIR}/git/.git ${S} rm -rf ${WORKDIR}/git/ cd ${S} - git branch -a | grep -q ${KMETA} - if [ $? -ne 0 ]; then - echo "ERROR. The branch '${KMETA}' is required and was not" - echo "found. Ensure that the SRC_URI points to a valid linux-yocto" - echo "kernel repository" - exit 1 + if [ -n "${YOCTO_KERNEL_META_DATA}" ] && [ -n "${KMETA}" ]; then + git branch -a | grep -q ${KMETA} + if [ $? -ne 0 ]; then + echo "ERROR. The branch '${KMETA}' is required and was not" + echo "found. Ensure that the SRC_URI points to a valid linux-yocto" + echo "kernel repository" + exit 1 + fi fi if [ -z "${YOCTO_KERNEL_EXTERNAL_BRANCH}" ] && [ -n "${KBRANCH}" ] ; then git branch -a | grep -q ${KBRANCH}
@@ -174,10 +176,15 @@ do_kernel_checkout() { exit 1 fi fi - else + fi + if [ -d "${WORKDIR}/git/" ] && [ ! -d "${WORKDIR}/git/.git" ]; then + # we build out of {S}, so ensure that ${S} is clean and present + rm -rf ${S} + mkdir -p ${S}/.git + mv ${WORKDIR}/git/* ${S}/.git rm -rf ${WORKDIR}/git/ - cd ${S} + cd ${S} git config core.bare false fi # end debare
Signature · 1 line
1.7.0.4
PATCH 2/3 linux-yocto/meta: add pvr feature description
In reply to Bruce AshfieldUpdating the 3.0 and 3.2 kernel SRCREVS to make the PVR feature description available to machines with the appropriate hardware.
--- meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.0.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_3.2.bb | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb +1 -1
@@ -16,7 +16,7 @@ LINUX_KERNEL_TYPE = "preempt-rt" SRCREV_machine ?= "03705f7f066d83b4cd3a6088781d47e3b9e45b71" SRCREV_machine_qemuppc ?= "c8b184e8171f6f5a8017be4c5bf1e7a38c3f3002" -SRCREV_meta ?= "808b49474268040ab27c8ee687b60807a11547b4" +SRCREV_meta ?= "d7b46785d6781e2c23d754f35f09bebd3b74b5bb" PR = "r1" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb +1 -1
@@ -16,7 +16,7 @@ LINUX_KERNEL_TYPE = "preempt-rt" SRCREV_machine ?= "2043e8b786dfd06a41a66780141f731d2d788696" SRCREV_machine_qemuppc ?= "ec400326633f011c3b7d390beb765ad955145a29" -SRCREV_meta ?= "5db8963f9aefc70b4483ca4ccce8f2ef6964e2c3" +SRCREV_meta ?= "4c648bbbc7d2204d1b24f444aebb10f91c4ecae3" PR = "r0"
meta/recipes-kernel/linux/linux-yocto-tiny_3.0.bb +1 -1
@@ -8,7 +8,7 @@ KBRANCH = "${KMACHINE}" LINUX_VERSION ?= "3.0.22" SRCREV_machine ?= "c578f3a1f357142a6e02a1df4ae9aa16f45094d6" -SRCREV_meta ?= "808b49474268040ab27c8ee687b60807a11547b4" +SRCREV_meta ?= "d7b46785d6781e2c23d754f35f09bebd3b74b5bb" PR = "r1" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.0.bb +1 -1
@@ -18,7 +18,7 @@ SRCREV_machine_qemuppc ?= "804aff4612bb7a53ac4679412c2a78bc06e3c4ce" SRCREV_machine_qemux86 ?= "7b0476fde681e828417d8fa86c47b0ca539ade70" SRCREV_machine_qemux86-64 ?= "14fe1742198bd5a85fbcf6e53d336838ff87b2ef" SRCREV_machine ?= "c578f3a1f357142a6e02a1df4ae9aa16f45094d6" -SRCREV_meta ?= "808b49474268040ab27c8ee687b60807a11547b4" +SRCREV_meta ?= "d7b46785d6781e2c23d754f35f09bebd3b74b5bb" PR = "r3" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_3.2.bb +1 -1
@@ -24,7 +24,7 @@ SRCREV_machine_qemuppc ?= "8fc0489fffe4c626f9a8053ad86014e75073a3d0" SRCREV_machine_qemux86 ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" SRCREV_machine_qemux86-64 ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" SRCREV_machine ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" -SRCREV_meta ?= "5db8963f9aefc70b4483ca4ccce8f2ef6964e2c3" +SRCREV_meta ?= "4c648bbbc7d2204d1b24f444aebb10f91c4ecae3" PR = "r0" PV = "${LINUX_VERSION}+git${SRCPV}"
Signature · 1 line
1.7.0.4
PATCH 3/3 linux-yocto: update to v3.2.8
In reply to Bruce Ashfield3.2.8 was released and contains a floating point fix for x86 32 bit and some x86-64 fixes. So it's worth picking up right away.
--- meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb | 6 +++--- meta/recipes-kernel/linux/linux-yocto_3.2.bb | 14 +++++++------- 2 files changed, 10 insertions(+), 10 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_3.2.bb +3 -3
@@ -11,11 +11,11 @@ KMACHINE_qemumips = "mti-malta32-be" KBRANCH = "standard/preempt-rt/base" KBRANCH_qemuppc = "standard/preempt-rt/qemu-ppc32" -LINUX_VERSION ?= "3.2.7" +LINUX_VERSION ?= "3.2.8" LINUX_KERNEL_TYPE = "preempt-rt" -SRCREV_machine ?= "2043e8b786dfd06a41a66780141f731d2d788696" -SRCREV_machine_qemuppc ?= "ec400326633f011c3b7d390beb765ad955145a29" +SRCREV_machine ?= "6ab03c43328172425a6f632bff694a8da6c99f0e" +SRCREV_machine_qemuppc ?= "470deb222a704f84f3acf3a013a19d2da399d511" SRCREV_meta ?= "4c648bbbc7d2204d1b24f444aebb10f91c4ecae3"
meta/recipes-kernel/linux/linux-yocto_3.2.bb +7 -7
@@ -15,15 +15,15 @@ KBRANCH_qemuppc = "standard/default/qemu-ppc32" KBRANCH_qemumips = "standard/default/mti-malta32-be" KBRANCH_qemuarm = "standard/default/arm-versatile-926ejs" -LINUX_VERSION ?= "3.2.7" +LINUX_VERSION ?= "3.2.8" -SRCREV_machine_qemuarm ?= "c2028a144fe035719af7c5e9989fedc62ccf3c2c" -SRCREV_machine_qemumips ?= "7dfffd937d4755cba0fcf3f2b9b69a1c62262084" -SRCREV_machine_qemuppc ?= "8fc0489fffe4c626f9a8053ad86014e75073a3d0" -SRCREV_machine_qemux86 ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" -SRCREV_machine_qemux86-64 ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" -SRCREV_machine ?= "0fae9c2722039df3e93398d314ee10e3f4330b86" +SRCREV_machine_qemuarm ?= "2fdc18ce2b9bf95519a02640cb45930ae7587dd4" +SRCREV_machine_qemumips ?= "2b2a6bad57fe403f1180c4b9021210da87d02c20" +SRCREV_machine_qemuppc ?= "eabeabc4c8a17822772895d3ba22989ae18a58c3" +SRCREV_machine_qemux86 ?= "ea5bd45e564520ca4ecdb10f7af63263d5fe33f7" +SRCREV_machine_qemux86-64 ?= "f54af84c64408a0259a919d1fd2405c0115c0a0b" +SRCREV_machine ?= "21ab5dca134a6bf1316aa59f69f9ee9e091d5702" SRCREV_meta ?= "4c648bbbc7d2204d1b24f444aebb10f91c4ecae3" PR = "r0"
Signature · 1 line
1.7.0.4
Richard Purdie
AppliedQuoted 27 lines · Bruce Ashfield
Richard/Saul,
Naturally right after I sent my previous version bump to 3.2.7, 3.2.8 came out with an x86 floating point fix that was worth picking up. Hence my quick bump to 3.2.8.
The other update to the 3.0/3.2 trees stages content for PVR functionality in some future BSP work.
And finally, I added some extra checks and safety to the kernel checkout code, since Saul was reporting issues that I couldn't reproduce, I can't be sure if they fix his problem. But they do fix issues with aborted builds and the korg recipe. I've built many kernels and as many recipes as possible with these in place.
cc Kishore Bodke <[email protected]>Cheers,
Bruce
The following changes since commit
d86e3082e695cde555df276a2436873fa5381130:
Otavio Salvador (1):
licenses.conf: fix quotting ofSRC_DISTRIBUTE_LICENSESare available in the git repository at:
Quoted 7 lines
git://git.pokylinux.org/poky-contribzedd/kernel
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernelBruce Ashfield (3):
linux-yocto: makekernel_checkoutreentrant
linux-yocto/meta: add pvr feature description
linux-yocto: update to v3.2.8
Merged to master, thanks.
Richard