[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [osstest test] 56922: regressions - FAIL



On Fri, 2015-05-22 at 10:57 +0100, Ian Campbell wrote:
> Hi Robert and Longtao,
> 
> On Fri, 2015-05-22 at 02:08 +0000, osstest service user wrote:
> > flight 56922 osstest real [real]
> > http://logs.test-lab.xenproject.org/osstest/logs/56922/
> > 
> > Regressions :-(
> 
> This flight was testing:
> 
> 477a9aa grub: remove patch to disable submenu from 20_linux_xen overla
> cc0a60a Move the code for setting memory size into prep()
> 3d1ff6d Edit some APIs in TestSupport.pm for nested test
> 46bba78 Refactor installation of overlays
> 3cc3ef3 Changes to support '/boot' leading paths of kernel, xen, in gr
> 9419ffe Parsing grub which has 'submenu' primitive
> 
> Looking at 
> http://logs.test-lab.xenproject.org/osstest/logs/56922/test-amd64-amd64-xl-xsm/info.html
> and the serial log at
> http://logs.test-lab.xenproject.org/osstest/logs/56922/test-amd64-amd64-xl-xsm/serial-italia1.log
> 
> It seems it has picked the wrong entry to boot. It has picked entry 21
> which seems to be 'Debian GNU/Linux, with Xen 4.6-unstable and Linux
> 3.14.43+' whereas I think it ought to have picked entry 22 which is
> 'Debian GNU/Linux, with Xen 4.6-unstable (XSM enabled) and Linux 3.14.43
> +'
> 
> I think the problem is most likely in the new code which copes with the
> submenu primitive.

I think grub2 considers submenu entries to be entries, and therefore
when determining which entry to use we should include those in the
offset.

I think you didn't see this in your testing because without XSM the
entry we want is the first item in the first submenu, so there is an off
by one in the entry we ask for, which turns out to correspond to the
first submenu itself, and then the grub timeout means that it then
selects the first entry in that submenu, so it works.

I'm currently testing the patch below, if it works then I intend to fold
it into "Parsing grub which has 'submenu' primitive" and will re-push
the result.

Ian.

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 282175b..0b731c3 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -451,6 +451,7 @@ sub setupboot_grub2 ($$$$) {
             }
             if (m/^submenu\s+[\'\"](.*)[\'\"].*\{\s*$/) {
                 $submenu={ StartLine =>$.};
+                $count++;
             }
             if (m/^\s*multiboot\s*(?:\/boot)?\/(xen\S+)/) {
                 die unless $entry;



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.