[ovs-dev] Fwd: [openvswitch 2.7.0] testsuite: 419 1003 1006 1007 1008 1009 1010 failed

ha Fa haiderfayeq80 at gmail.com
Sat Dec 15 10:48:54 UTC 2018


Subject: [openvswitch 2.7.0] testsuite: 419 1003 1006 1007 1008 1009 1010
failed
To: <blp at ovn.org>
Cc: <bugs at openvswitch.org>


hi,

kindly,
i request your help Please my situation issue is so critical, i had tried
for two months to understand what is the error , that am facing during
implementing Stochastic Switching in ovs 2.7 to implement select group type in
OVS 2.7 randomly selects a bucket from among the live buckets, to apply
partitioning for the same traffic flow pass through multiple paths to the
flow from source to destination.

the code modification i done is  below

#include <stdlib.h>
#include <time.h>

static bool is_srand_initialized = false;

static void
xlate_default_select_group(struct xlate_ctx *ctx, struct group_dpif *group)
{
      struct flow_wildcards *wc = ctx->wc;
      struct ofputil_bucket *bucket;
      uint32_t basis;
    ctx_>xout_>slow |= SLOW_CONTROLLER;
    basis = flow_hash_symmetric_l4(&ctx->xin->flow, 0);
    flow_mask_hash_fields(&ctx->xin->flow, wc,
    NX_HASH_FIELDS_SYMMETRIC_L4);
    bucket = group_best_live_bucket(ctx, group, basis);
    if (bucket) {
        xlate_group_bucket(ctx, bucket);
        xlate_group_stats(ctx, group, bucket);
    }
    else if (ctx->xin->xcache)
             {
               ofproto_group_unref(&group_>up);
             }
}

static void
xlate_select_group(struct xlate_ctx *ctx, struct group_dpif *group)
{
    const char *selection_method = group->up.props.selection_method;

    if (ctx->was_mpls)
  {
     ctx_trigger_freeze(ctx);
   }

   ctx->xout->slow |= SLOW_CONTROLLER;
    xlate_commit_actions(ctx);
    xlate_default_select_group(ctx, group);
}

static struct ofputil_bucket *
group_best_live_bucket(const struct xlate_ctx *ctx,
                       const struct group_dpif *group,
                       uint32_t basis)
{
    if (!is_srand_initialized) {
         srand((unsigned int)time(NULL));
         is_srand_initialized = true;
    }
    struct ofputil_bucket *bucket;
    uint32_t total_weight = 0;

    LIST_FOR_EACH (bucket, list_node, &group->up.buckets) {
          if (bucket_is_alive(ctx, bucket, 0)) {
              total_weight += bucket->weight;
          }
    }
    uint32_t rand_num = rand() % total_weight + 1;
    struct ofputil_bucket *best_bucket = NULL;
    uint32_t summed_weight =0;
    LIST_FOR_EACH (bucket, list_node, &group->up.buckets) {
          if (bucket_is_alive(ctx, bucket, 0)) {
              summed_weight += bucket->weight;
              if (rand_num <= summed_weight) {
                  return bucket; // return this bucket
               }
          }
     }
    return best_bucket; // return NULL
}

>>>>>>>>>>>>>>> after that i rebuild and install OVS 2.7.

#cd openvswitch-2.7.0/
#apt-get install build-essential fakeroot
#apt-get install debhelper autoconf automake libssl-dev pkg-config bzip2
openssl python-all procps python-qt4 python-zopeinterface
python-twisted-conch dh-autoreconf
#fakeroot debian/rules binary

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>I received an error.
## ------------- ##
## Test results. ##
## ------------- ##















*ERROR: All 7 tests were run,7 failed unexpectedly.Makefile:6264: recipe
for target 'check-local' failedmake[5]: *** [check-local] Error 1make[5]:
Leaving directory '/root/openvswitch-2.7.0'Makefile:5402: recipe for target
'check-am' failedmake[4]: *** [check-am] Error 2make[4]: Leaving directory
'/root/openvswitch-2.7.0'Makefile:5111: recipe for target 'check-recursive'
failedmake[3]: *** [check-recursive] Error 1make[3]: Leaving directory
'/root/openvswitch-2.7.0'Makefile:5406: recipe for target 'check'
failedmake[2]: *** [check] Error 2make[2]: Leaving directory
'/root/openvswitch-2.7.0'*# ----------------------------- ##
## openvswitch 2.7.0 test suite. ##
## ----------------------------- ##









*mpls-xlate419: MPLS xlate action                               FAILED
(mpls-xlate.at:70 <http://mpls-xlate.at:70>)ofproto-dpif1003: ofproto-dpif
- group actions have no effect afterwards FAILED (ofproto-dpif.at:341
<http://ofproto-dpif.at:341>)1006: ofproto-dpif - select
group                     FAILED (ofproto-dpif.at:387
<http://ofproto-dpif.at:387>)1007: ofproto-dpif - select group with watch
port     FAILED (ofproto-dpif.at:400 <http://ofproto-dpif.at:400>)1008:
ofproto-dpif - select group with weight         FAILED (ofproto-dpif.at:412
<http://ofproto-dpif.at:412>)1009: ofproto-dpif - select group with hash
selection method FAILED (ofproto-dpif.at:435
<http://ofproto-dpif.at:435>)1010: ofproto-dpif - select group with dp_hash
selection method FAILED (ofproto-dpif.at:478 <http://ofproto-dpif.at:478>)*
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>then at the end it said
debian/rules:37: recipe for target 'override_dh_auto_test' failed
make[1]: *** [override_dh_auto_test] Error 1
make[1]: Leaving directory '/root/openvswitch-2.7.0'
debian/rules:25: recipe for target 'binary' failed
make: *** [binary] Error 2


the test results is in the attachment file.

your help is greatly appreciated
thank you.
-------------- next part --------------
## ------------- ##
## Test results. ##
## ------------- ##

ERROR: All 7 tests were run,
7 failed unexpectedly.

Makefile:6264: recipe for target 'check-local' failed
make[5]: *** [check-local] Error 1
make[5]: Leaving directory '/root/openvswitch-2.7.0'
Makefile:5402: recipe for target 'check-am' failed
make[4]: *** [check-am] Error 2
make[4]: Leaving directory '/root/openvswitch-2.7.0'
Makefile:5111: recipe for target 'check-recursive' failed
make[3]: *** [check-recursive] Error 1
make[3]: Leaving directory '/root/openvswitch-2.7.0'
Makefile:5406: recipe for target 'check' failed
make[2]: *** [check] Error 2
make[2]: Leaving directory '/root/openvswitch-2.7.0'



# ----------------------------- ##
## openvswitch 2.7.0 test suite. ##
## ----------------------------- ##

mpls-xlate

419: MPLS xlate action                               FAILED (mpls-xlate.at:70)

ofproto-dpif

1003: ofproto-dpif - group actions have no effect afterwards FAILED (ofproto-dpif.at:341)
1006: ofproto-dpif - select group                     FAILED (ofproto-dpif.at:387)
1007: ofproto-dpif - select group with watch port     FAILED (ofproto-dpif.at:400)
1008: ofproto-dpif - select group with weight         FAILED (ofproto-dpif.at:412)
1009: ofproto-dpif - select group with hash selection method FAILED (ofproto-dpif.at:435)
1010: ofproto-dpif - select group with dp_hash selection method FAILED (ofproto-dpif.at:478)



debian/rules:37: recipe for target 'override_dh_auto_test' failed
make[1]: *** [override_dh_auto_test] Error 1
make[1]: Leaving directory '/root/openvswitch-2.7.0'
debian/rules:25: recipe for target 'binary' failed
make: *** [binary] Error 2


More information about the dev mailing list