[Xen-devel,OSSTEST] mfi-common: Only override the pvops kernel repo for linux-arm-xen branch (Was: Re: [linux-linus test] 24817: regressions - FAIL)

Message ID 1392117234.26657.87.camel@kazak.uk.xensource.com
State New
Headers show

Commit Message

Ian Campbell Feb. 11, 2014, 11:13 a.m.
On Mon, 2014-02-10 at 10:37 +0000, Ian Campbell wrote:
> The following fixes it for me, but although the results are as I wanted
> I'm not 100% sure about this override in the first place. In my
> experiments with cr-daily-branch I see:

But I didn't consider {DEFAULT_}REVISION_LINUX{_ARM} and how it
interacts:

        Branch		$TREE_LINUX#$REVISION_LINUX	$TREE_LINUX_ARM#$R_L_ARM
        xen-unstable	pvops#tested/linux-3.4		pvops#tested/linux-arm-xen
        linux-linus	torvalds#master			pvops#XXX
        linux-arm-xen	stefano#master			stefano#master
        osstest		pvops#tested/linux-3.4		pvops#tested/linux-arm-xen

pvops#XXX == the revision from torvalds#master, but with the pvops tree
i.e. the brokeness I started out trying to fix.

What this means is that osstest's own push gate is currently blocked
because it is trying to test using the standard tree on armhf -- which
is a 3.4 tree and has no support for any of the stuff we need. I suspect
xen-unstable would also be broken by this (so its good the push gate
caught it).

One way (to bodge?) around this would be to use $R_L on any branch
matching linux-* *except* linux-arm-xen and for anything else to use
$R_L_A for (on armhf only of course). This has the affect (I hope) of
using the right branch for gating trees like linux-linus and
linux-arm-xen but continuing to use the correct tested branch for the
arch.

But I can't help thinking that this should perhaps be solved further up
by e.g. making $TREE_LINUX_ARM#$REVISION_LINUX_ARM be correct for
linux-linus -- i.e. by making some change in ap-common:info_linux_tree.

I'm not sure what that would look like though -- it might be easiest to
thrash this stuff out f2f later.

In the meantime here something which I think might fix mfi-common as I
described 3 paras ago...

Ian.

Comments

Ian Campbell Feb. 11, 2014, 12:39 p.m. | #1
On Tue, 2014-02-11 at 11:13 +0000, Ian Campbell wrote:
> But I can't help thinking that this should perhaps be solved further up
> by e.g. making $TREE_LINUX_ARM#$REVISION_LINUX_ARM be correct for
> linux-linus -- i.e. by making some change in ap-common:info_linux_tree.
> 
> I'm not sure what that would look like though -- it might be easiest to
> thrash this stuff out f2f later.

Which is what we did. 2 patches will follow, the first to revert the
incorrect change, the second to introduce the proper fix.

Ian -- it seems that osstest.git#pretest is in a state where I could
rewind instead of reverting the first change -- which do you prefer
under the circumstances?

Ian.

Patch

diff --git a/mfi-common b/mfi-common
index f7f981e..6ec164e 100644
--- a/mfi-common
+++ b/mfi-common
@@ -44,10 +44,19 @@  create_build_jobs () {
 
     if [ "x$arch" = xdisable ]; then continue; fi
 
+    if [ "x$arch" = "xarmhf" ] ; then
+      echo LINUX $TREE_LINUX \"${REVISION_LINUX}\" \"${DEFAULT_REVISION_LINUX}\" >&2
+      echo ARM $TREE_LINUX_ARM \"${REVISION_LINUX_ARM}\" \"${DEFAULT_REVISION_LINUX_ARM}\" >&2
+    fi
+
     pvops_kernel="
       tree_linux=$TREE_LINUX
       revision_linux=${REVISION_LINUX:-${DEFAULT_REVISION_LINUX}}
     "
+    pvops_kernel_arm="
+      tree_linux=$TREE_LINUX_ARM
+      revision_linux=${REVISION_LINUX_ARM:-${DEFAULT_REVISION_LINUX_ARM}}
+    "
 
     case "$arch" in
     armhf)
@@ -65,12 +74,12 @@  create_build_jobs () {
       xen-4.2-testing) continue;;
       esac
 
-      if [ "$branch" = "linux-arm-xen" ]; then
-        pvops_kernel="
-          tree_linux=$TREE_LINUX_ARM
-          revision_linux=${REVISION_LINUX_ARM:-${DEFAULT_REVISION_LINUX_ARM}}
-        "
-      fi
+      case $branch in
+      linux-arm-xen) pvops_kernel="$pvops_kernel_arm" ;;
+      linux-*) ;; # Apart from linux-arm-xen these should test mainline kernels
+      *) pvops_kernel="$pvops_kernel_arm" ;;
+      esac
+
       pvops_kconfig_overrides="
         kconfig_override_y=CONFIG_EXT4_FS
       "