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

Re: [Xen-devel] [OSSTEST PATCH 05/13] Planner: client side: $mayalloc parameter to $resourcecall->()



On Wed, 2015-09-02 at 16:45 +0100, Ian Jackson wrote:
> Add a new parameter to $resourcecall which allows the alloc_resources
> loop in Osstest::Executive to specify to its clients that on this
> occasion they should not make any actual allocations.
> 
> The callers of alloc_resources are all adjusted to honour this new
> parameter:
>  * ts-hosts-allocate-Executive avoids allocating unless $mayalloc
>  * mg-allocate avoids allocating unless $mayalloc
>  * mg-blockage never allocates anyway.
> 
> Currently we always pass 1, so no functional change.
> 
> Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>

Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>


> ---
>  Osstest/Executive.pm        |    4 ++--
>  mg-allocate                 |    4 ++--
>  mg-blockage                 |    2 +-
>  ts-hosts-allocate-Executive |    4 ++--
>  4 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/Osstest/Executive.pm b/Osstest/Executive.pm
> index ab015d2..f9be0a0 100644
> --- a/Osstest/Executive.pm
> +++ b/Osstest/Executive.pm
> @@ -604,7 +604,7 @@ sub plan_search ($$$$) {
>  }
>  
>  sub alloc_resources {
> -    my ($resourcecall) = pop @_; # $resourcecall->($plan);
> +    my ($resourcecall) = pop @_; # $resourcecall->($plan, $mayalloc);
>      my (%xparams) = @_;
>      # $resourcecall should die (abort) or return ($ok, $bookinglist)
>      #
> @@ -720,7 +720,7 @@ sub alloc_resources {
>               $plan= from_json($jplan);
>           }, sub {
>               if (!eval {
> -                 ($ok, $bookinglist) = $resourcecall->($plan);
> +                 ($ok, $bookinglist) = $resourcecall->($plan, 1);
>                   1;
>               }) {
>                   warn "resourcecall $@";
> diff --git a/mg-allocate b/mg-allocate
> index fc1b394..6dc7ddd 100755
> --- a/mg-allocate
> +++ b/mg-allocate
> @@ -270,7 +270,7 @@ sub showposs ($) {
>  sub plan () {
>      my @got;
>      alloc_resources(sub {
> -        my ($plan) = @_;
> +        my ($plan, $mayalloc) = @_;
>  
>       @got = ();
>          my @possmatrix = ([]);
> @@ -310,7 +310,7 @@ sub plan () {
>       die unless $planned;
>  
>          my $allok=0;
> -        if (!$planned->{Start}) {
> +        if ($mayalloc && !$planned->{Start}) {
>              $allok=1;
>  
>              alloc_prep();
> diff --git a/mg-blockage b/mg-blockage
> index a21f15b..1f66d8e 100755
> --- a/mg-blockage
> +++ b/mg-blockage
> @@ -40,7 +40,7 @@ sub max { (reverse sort @_)[0]; }
>  
>  sub plan () {
>      alloc_resources(sub {
> -     my ($plan) = @_;
> +     my ($plan, $mayalloc) = @_;
>  
>       my $now = time;
>       if ($now > $end) { return (1, { Bookings => [ ] }); }
> diff --git a/ts-hosts-allocate-Executive b/ts-hosts-allocate-Executive
> index 7a9411d..6e1391e 100755
> --- a/ts-hosts-allocate-Executive
> +++ b/ts-hosts-allocate-Executive
> @@ -606,7 +606,7 @@ sub alloc_hosts () {
>  }
>  
>  sub attempt_allocation {
> -    ($plan) = @_;
> +    ($plan, $mayalloc) = @_;
>      undef $best;
>  
>      logm("allocating hosts: ".join(' ', map { $_->{Ident} } @hids));
> @@ -632,7 +632,7 @@ sub attempt_allocation {
>  
>      my $retval=0;
>  
> -    if (!$best->{Start}) {
> +    if ($mayalloc && !$best->{Start}) {
>       $retval= 1;
>       foreach my $hid (@hids) {
>           my $got= actual_allocation($hid);

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