1. If vif model is defined for guest, use it in guest's configuration 2. In L2 installation context, its host (L1) shall not have a static IP but stored in runvar in L1 installation before; use this stored runvar IP.
Signed-off-by: longtao.pang <longtaox.p...@intel.com> Acked-by: Ian Campbell <ian.campb...@citrix.com> --- Osstest/TestSupport.pm | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm index 3f84110..955bea3 100644 --- a/Osstest/TestSupport.pm +++ b/Osstest/TestSupport.pm @@ -888,13 +888,17 @@ sub selecthost ($) { serial_host_setup($ho); $ho->{IpStatic} = get_host_property($ho,'ip-addr'); - if (!defined $ho->{IpStatic}) { - my $ip_packed= gethostbyname($ho->{Fqdn}); - die "$ho->{Fqdn} ?" unless $ip_packed; - $ho->{IpStatic}= inet_ntoa($ip_packed); - die "$ho->{Fqdn} ?" unless defined $ho->{IpStatic}; + if (defined $r{"${ident}_ip"}) { + $ho->{Ip} = $r{"${ident}_ip"}; + } else { + if (!defined $ho->{IpStatic}) { + my $ip_packed= gethostbyname($ho->{Fqdn}); + die "$ho->{Fqdn} ?" unless $ip_packed; + $ho->{IpStatic}= inet_ntoa($ip_packed); + die "$ho->{Fqdn} ?" unless defined $ho->{IpStatic}; + } + $ho->{Ip}= $ho->{IpStatic}; } - $ho->{Ip}= $ho->{IpStatic}; #----- tftp ----- @@ -1537,13 +1541,15 @@ sub prepareguest ($$$$$$) { store_runvar("${gn}_tcpcheckport", $tcpcheckport); store_runvar("${gn}_boot_timeout", $boot_timeout); + my $gho= selectguest($gn, $ho); + store_runvar("${gn}_domname", $gho->{Name}); + + # If we have defined guest specific disksize, use it + $mb = guest_var($gho,'disksize',$mb); if (defined $mb) { store_runvar("${gn}_disk_lv", $r{"${gn}_hostname"}.'-disk'); } - my $gho= selectguest($gn, $ho); - store_runvar("${gn}_domname", $gho->{Name}); - if (defined $mb) { store_runvar("${gn}_vg", ''); if (!length $r{"${gn}_vg"}) { @@ -1571,11 +1577,13 @@ sub prepareguest_part_xencfg ($$$$$) { my $oncrash= $xopts->{OnCrash} || 'preserve'; my $vcpus= guest_var($gho, 'vcpus', $xopts->{DefVcpus} || 2); my $xoptcfg= $xopts->{ExtraConfig}; + my $vif= guest_var($gho, 'vifmodel',''); + my $vifmodel= $vif ? ",model=$vif" : ''; $xoptcfg='' unless defined $xoptcfg; my $xencfg= <<END; name = '$gho->{Name}' memory = ${ram_mb} -vif = [ 'type=ioemu,mac=$gho->{Ether}' ] +vif = [ 'type=ioemu,mac=$gho->{Ether}${vifmodel}' ] # on_poweroff = '$onpoweroff' on_reboot = '$onreboot' -- 1.7.10.4 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel