* [PATCH 1/3] kern-tools: import flexible branching support
2012-01-05 19:49 [v2 PATCH 0/3] linux-yocto: consolidated pull request Bruce Ashfield
@ 2012-01-05 19:49 ` Bruce Ashfield
2012-01-05 19:49 ` [PATCH 2/3] linux-yocto: bump kernel version to v3.0.14 Bruce Ashfield
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Bruce Ashfield @ 2012-01-05 19:49 UTC (permalink / raw)
To: richard.purdie; +Cc: openembedded-core, saul.wold
The commit:
kern-tools: update SRCREV to pickup git operation fixes
Brought in the ability to trap failed git operations on the working tree,
but what it missed were some branching changes that allow arbitrary
branch points and the ability to create a branch multiple times (if a feature
is included multiple times). The graphics driver branches used by some
BSPs need this part of the change to properly handle graphics driver
branches.
Updating the SRCREV to pickup the associated kern-tools changes for this
support.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
.../kern-tools/kern-tools-native_git.bb | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
index 6bb9c85..2711465 100644
--- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
+++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=e2bf4415f3d8
DEPENDS = "git-native guilt-native"
-SRCREV = "806f1452eeced0bbd05433456ac0d6786d5362dc"
+SRCREV = "52d929b5435d32097bce22b3f3662440f73a33b5"
PR = r12
PV = "0.1+git${SRCPV}"
--
1.7.4.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH 2/3] linux-yocto: bump kernel version to v3.0.14
2012-01-05 19:49 [v2 PATCH 0/3] linux-yocto: consolidated pull request Bruce Ashfield
2012-01-05 19:49 ` [PATCH 1/3] kern-tools: import flexible branching support Bruce Ashfield
@ 2012-01-05 19:49 ` Bruce Ashfield
2012-01-05 19:49 ` [PATCH 3/3] linux-yocto: use src_patches for out of tree kernel feature support Bruce Ashfield
2012-01-09 5:43 ` [v2 PATCH 0/3] linux-yocto: consolidated pull request Saul Wold
3 siblings, 0 replies; 5+ messages in thread
From: Bruce Ashfield @ 2012-01-05 19:49 UTC (permalink / raw)
To: richard.purdie; +Cc: openembedded-core, saul.wold
Updating the 3.0 kernel recipe to contain v3.0.14 -stable.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb | 8 ++++----
meta/recipes-kernel/linux/linux-yocto_3.0.bb | 18 +++++++++---------
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb b/meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb
index 81d22d0..c8983c4 100644
--- a/meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb
@@ -11,12 +11,12 @@ KMACHINE_qemumips = "mti-malta32-be"
KBRANCH = "yocto/standard/preempt-rt/base"
KBRANCH_qemuppc = "yocto/standard/preempt-rt/qemu-ppc32"
-LINUX_VERSION ?= "3.0.12"
+LINUX_VERSION ?= "3.0.14"
LINUX_KERNEL_TYPE = "preempt-rt"
-SRCREV_machine ?= "6e96ccbbf19a4a7b67d98fdcd74d2c9da2c7c463"
-SRCREV_machine_qemuppc ?= "8ea61de7fd201ff0001a039f2fda8ec2e4a562a1"
-SRCREV_meta ?= "c979f1365b1eb74e882b2cbbc8407ec536ab6eb8"
+SRCREV_machine ?= "bcf4107c7f22d10952618a2ad146e6149d240cd2"
+SRCREV_machine_qemuppc ?= "1e5511ea2cb5f150ffce86071035a81c0499494b"
+SRCREV_meta ?= "6ae3d992cf546184010e87a0349810198f1d167c"
PR = "r1"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/meta/recipes-kernel/linux/linux-yocto_3.0.bb b/meta/recipes-kernel/linux/linux-yocto_3.0.bb
index b650c84..921c258 100644
--- a/meta/recipes-kernel/linux/linux-yocto_3.0.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_3.0.bb
@@ -10,15 +10,15 @@ KMACHINE_qemuarm = "yocto/standard/arm-versatile-926ejs"
KBRANCH = ${KMACHINE}
-LINUX_VERSION ?= "3.0.12"
-
-SRCREV_machine_qemuarm ?= "b2a7d668b963f1c5f9876f130278dd9fb7df4831"
-SRCREV_machine_qemumips ?= "62bb04e5ba19b5b8aacd9079fdfbcb8284cd9fc8"
-SRCREV_machine_qemuppc ?= "7ecece328c5987112de2959f8f998dfcedaf7210"
-SRCREV_machine_qemux86 ?= "a611ba462ac51b2bfdac1c5c6538dac95ad9b4dd"
-SRCREV_machine_qemux86-64 ?= "b15a9b67089e31ef9780fdbd0481f48ef7facdba"
-SRCREV_machine ?= "f389d310965a56091f688b28ea8be6d9cbb7fbbe"
-SRCREV_meta ?= "c979f1365b1eb74e882b2cbbc8407ec536ab6eb8"
+LINUX_VERSION ?= "3.0.14"
+
+SRCREV_machine_qemuarm ?= "c498cc6e4b56784b3c2c547cb9a7af435b9412c1"
+SRCREV_machine_qemumips ?= "791c3f4124a238a798e2360340800f4989fad695"
+SRCREV_machine_qemuppc ?= "10e808d1c304b14cf42903fd637f239766b78476"
+SRCREV_machine_qemux86 ?= "e04f9f8e564c60b1ce907d64074c18730f8dab4e"
+SRCREV_machine_qemux86-64 ?= "53c2fa060d34e9a0b59e19398aeebbe73f24d89b"
+SRCREV_machine ?= "fe80c1e343bf8f038328a612cef7f821d7ec8dbf"
+SRCREV_meta ?= "6ae3d992cf546184010e87a0349810198f1d167c"
PR = "r2"
PV = "${LINUX_VERSION}+git${SRCPV}"
--
1.7.4.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* [PATCH 3/3] linux-yocto: use src_patches for out of tree kernel feature support
2012-01-05 19:49 [v2 PATCH 0/3] linux-yocto: consolidated pull request Bruce Ashfield
2012-01-05 19:49 ` [PATCH 1/3] kern-tools: import flexible branching support Bruce Ashfield
2012-01-05 19:49 ` [PATCH 2/3] linux-yocto: bump kernel version to v3.0.14 Bruce Ashfield
@ 2012-01-05 19:49 ` Bruce Ashfield
2012-01-09 5:43 ` [v2 PATCH 0/3] linux-yocto: consolidated pull request Saul Wold
3 siblings, 0 replies; 5+ messages in thread
From: Bruce Ashfield @ 2012-01-05 19:49 UTC (permalink / raw)
To: richard.purdie; +Cc: openembedded-core, saul.wold
To support larger out of tree kernel features and enhanced patching schemes,
this changeset modifies the linux-yocto patching routines to call the
recently factored out 'src_patches' routine. Using the returned list of local
URIs for all valid patches, the logic can then determine whether or not
patches can be used in place, or need to be migrated and have re-usable
kernel features created. The results are then fed to the existing
infrastructure to be applied and commited to the tree.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
---
meta/classes/kernel-yocto.bbclass | 67 +++++++++++++++++++++++++++++++++++-
1 files changed, 65 insertions(+), 2 deletions(-)
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index f78caaf..1b73e6e 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -1,5 +1,15 @@
S = "${WORKDIR}/linux"
+
+def find_patches(d):
+ patches=src_patches(d)
+ patch_list=[]
+ for p in patches:
+ _, _, local, _, _, _ = bb.decodeurl(p)
+ patch_list.append(local)
+
+ return patch_list
+
do_patch() {
cd ${S}
if [ -f ${WORKDIR}/defconfig ]; then
@@ -31,14 +41,67 @@ do_patch() {
exit 1
fi
- # updates or generates the target description
+ patches="${@" ".join(find_patches(d))}"
+
+ # This loops through all patches, and looks for directories that do
+ # not already have feature descriptions. If a directory doesn't have
+ # a feature description, we switch to the ${WORKDIR} variant of the
+ # feature (so we can write to it) and generate a feature for those
+ # patches. The generated feature will respect the patch order.
+ #
+ # By leaving source patch directories that already have .scc files
+ # as-is it means that a SRC_URI can only contain a .scc file, and all
+ # patches that the .scc references will be picked up, without having
+ # to be repeated on the SRC_URI line .. which is more intutive
+ set +e
+ patch_dirs=
+ for p in ${patches}; do
+ pdir=`dirname ${p}`
+ pname=`basename ${p}`
+ scc=`find ${pdir} -maxdepth 1 -name '*.scc'`
+ if [ -z "${scc}" ]; then
+ # there is no scc file. We need to switch to someplace that we know
+ # we can create content (the workdir)
+ workdir_subdir=`echo ${pdir} | sed "s%^.*/${PN}%%" | sed 's%^/%%'`
+ suggested_dir="${WORKDIR}/${workdir_subdir}"
+ echo ${gen_feature_dirs} | grep -q ${suggested_dir}
+ if [ $? -ne 0 ]; then
+ gen_feature_dirs="${gen_feature_dirs} ${suggested_dir}"
+ fi
+ # we call the file *.scc_tmp, so the test above will continue to find
+ # that patches from a common subdirectory don't have a scc file and
+ # they'll be placed in order, into this file. We'll rename it later.
+ echo "patch ${pname}" >> ${suggested_dir}/gen_${workdir_subdir}_desc.scc_tmp
+ else
+ suggested_dir="${pdir}"
+ fi
+ echo ${patch_dirs} | grep -q ${suggested_dir}
+ if [ $? -ne 0 ]; then
+ patch_dirs="${patch_dirs} ${suggested_dir}"
+ fi
+ done
+
+ # go through the patch directories and look for any scc feature files
+ # that were constructed above. If one is found, rename it to ".scc" so
+ # the kernel patching can see it.
+ for pdir in ${patch_dirs}; do
+ scc=`find ${pdir} -maxdepth 1 -name '*.scc_tmp'`
+ if [ -n "${scc}" ]; then
+ new_scc=`echo ${scc} | sed 's/_tmp//'`
+ mv -f ${scc} ${new_scc}
+ fi
+ done
+
+ # add any explicitly referenced features onto the end of the feature
+ # list that is passed to the kernel build scripts.
if [ -n "${KERNEL_FEATURES}" ]; then
for feat in ${KERNEL_FEATURES}; do
addon_features="$addon_features --feature $feat"
done
fi
+ # updates or generates the target description
updateme --branch ${kbranch} -DKDESC=${KMACHINE}:${LINUX_KERNEL_TYPE} \
- ${addon_features} ${ARCH} ${KMACHINE} ${WORKDIR}
+ ${addon_features} ${ARCH} ${KMACHINE} ${patch_dirs}
if [ $? -ne 0 ]; then
echo "ERROR. Could not update ${kbranch}"
exit 1
--
1.7.4.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [v2 PATCH 0/3] linux-yocto: consolidated pull request
2012-01-05 19:49 [v2 PATCH 0/3] linux-yocto: consolidated pull request Bruce Ashfield
` (2 preceding siblings ...)
2012-01-05 19:49 ` [PATCH 3/3] linux-yocto: use src_patches for out of tree kernel feature support Bruce Ashfield
@ 2012-01-09 5:43 ` Saul Wold
3 siblings, 0 replies; 5+ messages in thread
From: Saul Wold @ 2012-01-09 5:43 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer
On 01/05/2012 11:49 AM, Bruce Ashfield wrote:
> Richard/Saul,
>
> This is a resend of my series from yesterday. Richard noted the
> following two issues:
>
> http://autobuilder.pokylinux.org:8010/builders/nightly-ppc/builds/210/steps/shell_67/logs/stdio
> http://autobuilder.pokylinux.org:8010/builders/nightly-arm/builds/247/steps/shell_14/logs/stdio
>
> The ARM build issue was introduced in 3.0.13, and has a mainline fix,
> which I cherry picked into the kernel tree and pushed out. I'll likely
> be able to drop it with 3.0.16 (assuming there is one).
>
> The qemuppc one was due to stricter patch checking. I updated the meta
> branch and that is now fixed.
>
> Take all three as a unit, and the builds should be fine now.
>
> Cheers,
>
> Bruce
>
>
> The following changes since commit 021848be9eeb71de8acfba6c66c11645b01523b8:
>
> valgrind: Fix for automake update (2012-01-04 16:04:08 +0000)
>
> 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):
> kern-tools: import flexible branching support
> linux-yocto: bump kernel version to v3.0.14
> linux-yocto: use src_patches for out of tree kernel feature support
>
> meta/classes/kernel-yocto.bbclass | 67 +++++++++++++++++++-
> .../kern-tools/kern-tools-native_git.bb | 2 +-
> meta/recipes-kernel/linux/linux-yocto-rt_3.0.bb | 8 +-
> meta/recipes-kernel/linux/linux-yocto_3.0.bb | 18 +++---
> 4 files changed, 79 insertions(+), 16 deletions(-)
>
Merged into OE-Core
Thanks
Sau!
^ permalink raw reply [flat|nested] 5+ messages in thread