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

Re: [Xen-devel] [PATCH OSSTEST v4 06/13] Osstest/Debian: support adding a rootdelay property to bootargs



On Wed, 2015-01-21 at 11:58 +0000, Ian Jackson wrote:
> Ian Campbell writes ("[PATCH OSSTEST v4 06/13] Osstest/Debian: support adding 
> a rootdelay property to bootargs"):
> > arndale appears to be quite slow (and asynchronous) at finding it's
> > scsi controller. rootdelay=3 seems to do the trick.
> > 
> > For the dom0 case this involved refactoring the existing provision of
> > the commandline to be less open-coded in the boot script here doc.
> 
> The two hunks in this patch are starting to be rather similar.
> Perhaps it would be worth combining them ?

Yes it would. Below is the incremental patch to the end of the series,
which I will fold appropriately back into a precursor to do the refactor
and then this patch adding the rootdelay (nb I fixed the spacing you
complained about elsewhere while I was here).

Are you OK with me keeping your ack on this one once updated? It would
be essentially either of the two current hunks applied to the new
function instead.

BTW, another side effect is adding "ro" in the Xen case, which I think
was a bug to omit until now, I'll find an appropriate place to fix that.

Ian.

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 20485e2..a94f847 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -114,6 +114,21 @@ sub bl_getmenu_open ($$$) {
     return $f;
 }
 
+sub uboot_common_kernel_bootargs ($)
+{
+    my ( $ho ) = @_;
+
+    my $root= target_guest_lv_name($ho,"root");
+    my $rootdelay= get_host_property($ho, "rootdelay");
+
+    my @bootargs;
+    push @bootargs, "ro";
+    push @bootargs, "root=$root";
+    push @bootargs, "rootdelay=$rootdelay" if $rootdelay;
+
+    return @bootargs;
+}
+
 sub uboot_scr_load_dtb () {
     return <<'END';
 if test -z "\${fdt_addr}" && test -n "\${fdtfile}" ; then
@@ -134,18 +149,12 @@ sub setupboot_uboot ($$$) {
        my $kern = "vmlinuz-$want_kernver";
        my $initrd = "initrd.img-$want_kernver";
 
-       my $root= target_guest_lv_name($ho,"root");
-       my $rootdelay=get_host_property($ho, "rootdelay");
        my $natcons=get_host_native_linux_console($ho);
 
        logm("Xen options: $xenhopt");
 
        # Common kernel options
-       my @kopt;
-
-       push @kopt, "ro";
-       push @kopt, "root=$root";
-       push @kopt, "rootdelay=$rootdelay" if $rootdelay;
+       my @kopt = uboot_common_kernel_bootargs($ho);
 
        # Dom0 specific kernel options
        my @xenkopt = @kopt;
@@ -731,14 +740,10 @@ END
     }
 
     if ( $ho->{Flags}{'need-uboot-bootscr'} ) {
-       my @bootargs;
+       my @bootargs = uboot_common_kernel_bootargs($ho);
 
-       my $root=target_guest_lv_name($ho,"root");
-       my $rootdelay=get_host_property($ho, "rootdelay");
        my $console=get_host_native_linux_console($ho);
 
-       push @bootargs, "root=$root";
-       push @bootargs, "rootdelay=$rootdelay" if $rootdelay;
        push @bootargs, "console=$console" unless $console eq "NONE";
 
        my $bootargs = join ' ', @bootargs;



_______________________________________________
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®.