Re: [ovs-dev] [PATCH ovn] ovn-northd: Do not generate logical flows if lsp is not up

2020-05-17 Thread 0-day Robot
Bleep bloop.  Greetings 刘梦馨, I am a robot and I have tried out your patch.
Thanks for your contribution.

I encountered some error that I wasn't expecting.  See the details below.


git-am:
error: patch fragment without header at line 6: @@ -4626,7 +4630,7 @@ 
build_lswitch_output_port_sec(struct hmap *ports,
error: could not build fake ancestor
hint: Use 'git am --show-current-patch' to see the failed patch
Patch failed at 0001 ovn-northd: Do not generate logical flows if lsp is not up
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".


Please check this out.  If you feel there has been an error, please email 
acon...@redhat.com

Thanks,
0-day Robot
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [PATCH ovn] ovn-northd: Do not generate logical flows if lsp is not up

2020-05-17 Thread 刘梦馨
If the logical_switch_port is not in up state, we don't need to
generate related logical_flow. In this way we can reduce the
flow numbers in ovn-sb.

Signed-off-by: oilbeater 
---
 northd/ovn-northd.c | 10 +++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c
index 87625c395..b9830faf8 100644
--- a/northd/ovn-northd.c
+++ b/northd/ovn-northd.c
@@ -4569,6 +4569,10 @@ build_lswitch_input_port_sec(struct hmap *ports,
struct hmap *datapaths,
 continue;
 }

+if (!lsp_is_up(op->nbsp)) {
+continue;
+}
+
 ds_clear();
 ds_clear();
 ds_put_format(, "inport == %s", op->json_key);
@@ -4626,7 +4630,7 @@ build_lswitch_output_port_sec(struct hmap *ports,
struct hmap *datapaths,
  * they don't even receive multicast or broadcast packets.
  */
 HMAP_FOR_EACH (op, key_node, ports) {
-if (!op->nbsp || lsp_is_external(op->nbsp)) {
+if (!op->nbsp || lsp_is_external(op->nbsp) ||
!lsp_is_up(op->nbsp)) {
 continue;
 }

@@ -6825,7 +6829,7 @@ build_lswitch_flows(struct hmap *datapaths, struct
hmap *ports,

 /* Ingress table 19: Destination lookup, unicast handling (priority
50), */
 HMAP_FOR_EACH (op, key_node, ports) {
-if (!op->nbsp || lsp_is_external(op->nbsp)) {
+if (!op->nbsp || lsp_is_external(op->nbsp) ||
!lsp_is_up(op->nbsp)) {
 continue;
 }

@@ -9724,7 +9728,7 @@ build_lrouter_flows(struct hmap *datapaths, struct
hmap *ports,
  * outport and an Ethernet address in eth.dst.
  */
 HMAP_FOR_EACH (op, key_node, ports) {
-if (op->nbsp && !lsp_is_enabled(op->nbsp)) {
+if (op->nbsp && (!lsp_is_enabled(op->nbsp) ||
!lsp_is_up(op->nbsp))) {
 continue;
 }

-- 
2.21.1 (Apple Git-122.3)
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] hi

2020-05-17 Thread leigh hester
  Hello
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH 2/3] netdev-offload-tc: Allow to match the IP and port mask of tunnel

2020-05-17 Thread 0-day Robot
Bleep bloop.  Greetings Tonghao Zhang, I am a robot and I have tried out your 
patch.
Thanks for your contribution.

I encountered some error that I wasn't expecting.  See the details below.


checkpatch:
WARNING: Line is 84 characters long (recommended limit is 79)
#38 FILE: include/openvswitch/match.h:109:
void match_set_tun_tp_src_masked(struct match *match, ovs_be16 port, ovs_be16 
mask);

Lines checked: 288, Warnings: 1, Errors: 0


Please check this out.  If you feel there has been an error, please email 
acon...@redhat.com

Thanks,
0-day Robot
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH ovs v2 0/4] expand the meter table and fix bug

2020-05-17 Thread Tonghao Zhang
On Sat, May 16, 2020 at 1:14 AM Ilya Maximets  wrote:
>
> On 5/13/20 3:31 PM, xiangxia.m@gmail.com wrote:
> > From: Tonghao Zhang 
> >
> > The patch set expand or shrink the meter table when necessary.
> > and other patches fix bug or improve codes.
> >
> > Tonghao Zhang (4):
> >   dpif-netdev: Expand the meters supported number
> >   dpif-netdev: Add burst size to buckets
> >   dpif-netdev: Use the u64 instead of u32 for buckets
> >   Revert "dpif-netdev: includes microsecond delta in meter bucket
> > calculation"
> >
> >  include/openvswitch/ofp-meter.h |   2 +-
> >  lib/dpif-netdev.c   | 336 
> >  lib/ofp-meter.c |   4 +-
> >  3 files changed, 257 insertions(+), 85 deletions(-)
> >
>
> Thanks for working on this!
>
> General note about sending patches:
> Please, don't send patches in reply to the previous version.  This messes up
> mailboxes.  Send new versions separately.
> And it's better to have a dot at the end of a patch subject.
Ok, I got it, thanks.
> Best regards, Ilya Maximets.



-- 
Best regards, Tonghao
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [PATCH 1/3] dpif-netlink: Generate ufids for installing TC flowers

2020-05-17 Thread xiangxia . m . yue
From: Tonghao Zhang 

To support installing the TC flowers to HW, via "ovs-appctl dpctl/add-flow"
command, there should be an ufid. This patch will check whether ufid exists,
if not, generate an ufid. Should to know that when processing upcall packets,
ufid is generated in parse_odp_packet for kernel datapath.

Configuring the max-idle/max-revalidator, may help testing this patch.

Cc: Simon Horman 
Cc: Paul Blakey 
Cc: Roi Dayan 
Cc: Ben Pfaff 
Cc: William Tu 
Cc: Ilya Maximets 
Signed-off-by: Tonghao Zhang 
---
 lib/dpif-netlink.c | 45 +
 1 file changed, 45 insertions(+)

diff --git a/lib/dpif-netlink.c b/lib/dpif-netlink.c
index dc642100fc58..a19ed7e53566 100644
--- a/lib/dpif-netlink.c
+++ b/lib/dpif-netlink.c
@@ -2231,12 +2231,55 @@ dpif_netlink_operate_chunks(struct dpif_netlink *dpif, 
struct dpif_op **ops,
 }
 }
 
+static void
+dpif_netlink_try_update_ufid__(struct dpif_op *op, ovs_u128 *ufid)
+{
+switch (op->type) {
+case DPIF_OP_FLOW_PUT:
+if (!op->flow_put.ufid) {
+odp_flow_key_hash(op->flow_put.key, op->flow_put.key_len,
+  ufid);
+op->flow_put.ufid = ufid;
+}
+break;
+case DPIF_OP_FLOW_DEL:
+if (!op->flow_del.ufid) {
+odp_flow_key_hash(op->flow_del.key, op->flow_del.key_len,
+  ufid);
+op->flow_del.ufid = ufid;
+}
+break;
+case DPIF_OP_FLOW_GET:
+if (!op->flow_get.ufid) {
+odp_flow_key_hash(op->flow_get.key, op->flow_get.key_len,
+  ufid);
+op->flow_get.ufid = ufid;
+}
+break;
+case DPIF_OP_EXECUTE:
+default:
+break;
+}
+}
+
+static void
+dpif_netlink_try_update_ufid(struct dpif_op **ops, ovs_u128 *ufid,
+ size_t n_ops)
+{
+int i;
+
+for (i = 0; i < n_ops; i++) {
+dpif_netlink_try_update_ufid__(ops[i], [i]);
+}
+}
+
 static void
 dpif_netlink_operate(struct dpif *dpif_, struct dpif_op **ops, size_t n_ops,
  enum dpif_offload_type offload_type)
 {
 struct dpif_netlink *dpif = dpif_netlink_cast(dpif_);
 struct dpif_op *new_ops[OPERATE_MAX_OPS];
+ovs_u128 ufids[OPERATE_MAX_OPS];
 int count = 0;
 int i = 0;
 int err = 0;
@@ -2246,6 +2289,8 @@ dpif_netlink_operate(struct dpif *dpif_, struct dpif_op 
**ops, size_t n_ops,
 return;
 }
 
+dpif_netlink_try_update_ufid(ops, ufids, n_ops);
+
 if (offload_type != DPIF_OFFLOAD_NEVER && netdev_is_flow_api_enabled()) {
 while (n_ops > 0) {
 count = 0;
-- 
2.26.1

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [PATCH 2/3] netdev-offload-tc: Allow to match the IP and port mask of tunnel

2020-05-17 Thread xiangxia . m . yue
From: Tonghao Zhang 

This patch allows users to offload the TC flower rules with tunnel
mask. In some case, mask is useful as wildcards.

For example:
$ ovs-appctl dpctl/add-flow \
"tunnel(dst=3.3.3.100,src=3.3.3.200/255.255.255.0,tp_dst=4789),\
recirc_id(0),in_port(3),eth(),eth_type(0x0800),ipv4()" "2"

Cc: Simon Horman 
Cc: Paul Blakey 
Cc: Roi Dayan 
Cc: Ben Pfaff 
Cc: William Tu 
Cc: Ilya Maximets 
Signed-off-by: Tonghao Zhang 
---
 include/openvswitch/match.h |  2 ++
 lib/match.c | 13 +
 lib/netdev-offload-tc.c | 40 --
 lib/tc.c| 57 +
 tests/tunnel.at | 22 ++
 5 files changed, 119 insertions(+), 15 deletions(-)

diff --git a/include/openvswitch/match.h b/include/openvswitch/match.h
index 8af3b74ed3e0..cbb1a0382a2e 100644
--- a/include/openvswitch/match.h
+++ b/include/openvswitch/match.h
@@ -105,6 +105,8 @@ void match_set_tun_flags(struct match *match, uint16_t 
flags);
 void match_set_tun_flags_masked(struct match *match, uint16_t flags, uint16_t 
mask);
 void match_set_tun_tp_dst(struct match *match, ovs_be16 tp_dst);
 void match_set_tun_tp_dst_masked(struct match *match, ovs_be16 port, ovs_be16 
mask);
+void match_set_tun_tp_src(struct match *match, ovs_be16 tp_src);
+void match_set_tun_tp_src_masked(struct match *match, ovs_be16 port, ovs_be16 
mask);
 void match_set_tun_gbp_id_masked(struct match *match, ovs_be16 gbp_id, 
ovs_be16 mask);
 void match_set_tun_gbp_id(struct match *match, ovs_be16 gbp_id);
 void match_set_tun_gbp_flags_masked(struct match *match, uint8_t flags, 
uint8_t mask);
diff --git a/lib/match.c b/lib/match.c
index 25c277cc670b..29b25a73bab4 100644
--- a/lib/match.c
+++ b/lib/match.c
@@ -293,6 +293,19 @@ match_set_tun_tp_dst_masked(struct match *match, ovs_be16 
port, ovs_be16 mask)
 match->flow.tunnel.tp_dst = port & mask;
 }
 
+void
+match_set_tun_tp_src(struct match *match, ovs_be16 tp_src)
+{
+match_set_tun_tp_src_masked(match, tp_src, OVS_BE16_MAX);
+}
+
+void
+match_set_tun_tp_src_masked(struct match *match, ovs_be16 port, ovs_be16 mask)
+{
+match->wc.masks.tunnel.tp_src = mask;
+match->flow.tunnel.tp_src = port & mask;
+}
+
 void
 match_set_tun_gbp_id_masked(struct match *match, ovs_be16 gbp_id, ovs_be16 
mask)
 {
diff --git a/lib/netdev-offload-tc.c b/lib/netdev-offload-tc.c
index 875ebef71941..39cf25f63ce0 100644
--- a/lib/netdev-offload-tc.c
+++ b/lib/netdev-offload-tc.c
@@ -633,13 +633,22 @@ parse_tc_flower_to_match(struct tc_flower *flower,
 match_set_tun_id(match, flower->key.tunnel.id);
 match->flow.tunnel.flags |= FLOW_TNL_F_KEY;
 }
-if (flower->key.tunnel.ipv4.ipv4_dst) {
-match_set_tun_src(match, flower->key.tunnel.ipv4.ipv4_src);
-match_set_tun_dst(match, flower->key.tunnel.ipv4.ipv4_dst);
-} else if (!is_all_zeros(>key.tunnel.ipv6.ipv6_dst,
-   sizeof flower->key.tunnel.ipv6.ipv6_dst)) {
-match_set_tun_ipv6_src(match, >key.tunnel.ipv6.ipv6_src);
-match_set_tun_ipv6_dst(match, >key.tunnel.ipv6.ipv6_dst);
+if (flower->mask.tunnel.ipv4.ipv4_dst ||
+flower->mask.tunnel.ipv4.ipv4_src) {
+match_set_tun_dst_masked(match,
+ flower->key.tunnel.ipv4.ipv4_dst,
+ flower->mask.tunnel.ipv4.ipv4_dst);
+match_set_tun_src_masked(match,
+ flower->key.tunnel.ipv4.ipv4_src,
+ flower->mask.tunnel.ipv4.ipv4_src);
+} else if (ipv6_addr_is_set(>mask.tunnel.ipv6.ipv6_dst) ||
+   ipv6_addr_is_set(>mask.tunnel.ipv6.ipv6_src)) {
+match_set_tun_ipv6_dst_masked(match,
+  >key.tunnel.ipv6.ipv6_dst,
+  >mask.tunnel.ipv6.ipv6_dst);
+match_set_tun_ipv6_src_masked(match,
+  >key.tunnel.ipv6.ipv6_src,
+  >mask.tunnel.ipv6.ipv6_src);
 }
 if (flower->key.tunnel.tos) {
 match_set_tun_tos_masked(match, flower->key.tunnel.tos,
@@ -649,8 +658,15 @@ parse_tc_flower_to_match(struct tc_flower *flower,
 match_set_tun_ttl_masked(match, flower->key.tunnel.ttl,
  flower->mask.tunnel.ttl);
 }
-if (flower->key.tunnel.tp_dst) {
-match_set_tun_tp_dst(match, flower->key.tunnel.tp_dst);
+if (flower->mask.tunnel.tp_dst) {
+match_set_tun_tp_dst_masked(match,
+flower->key.tunnel.tp_dst,
+flower->mask.tunnel.tp_dst);
+}
+if (flower->mask.tunnel.tp_src) {
+match_set_tun_tp_src_masked(match,
+

[ovs-dev] [PATCH 3/3] netdev-offload-tc: Use ipv6_addr_is_set instead of is_all_zeros

2020-05-17 Thread xiangxia . m . yue
From: Tonghao Zhang 

Not bugfix, make the codes more readable.

Cc: Simon Horman 
Cc: Paul Blakey 
Cc: Roi Dayan 
Cc: Ben Pfaff 
Cc: William Tu 
Cc: Ilya Maximets 
Signed-off-by: Tonghao Zhang 
---
 lib/netdev-offload-tc.c | 6 ++
 lib/tc.c| 6 ++
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/lib/netdev-offload-tc.c b/lib/netdev-offload-tc.c
index 39cf25f63ce0..21ff2baec268 100644
--- a/lib/netdev-offload-tc.c
+++ b/lib/netdev-offload-tc.c
@@ -750,13 +750,11 @@ parse_tc_flower_to_match(struct tc_flower *flower,
 nl_msg_put_be32(buf, OVS_TUNNEL_KEY_ATTR_IPV4_DST,
 action->encap.ipv4.ipv4_dst);
 }
-if (!is_all_zeros(>encap.ipv6.ipv6_src,
-  sizeof action->encap.ipv6.ipv6_src)) {
+if (ipv6_addr_is_set(>encap.ipv6.ipv6_src)) {
 nl_msg_put_in6_addr(buf, OVS_TUNNEL_KEY_ATTR_IPV6_SRC,
 >encap.ipv6.ipv6_src);
 }
-if (!is_all_zeros(>encap.ipv6.ipv6_dst,
-  sizeof action->encap.ipv6.ipv6_dst)) {
+if (ipv6_addr_is_set(>encap.ipv6.ipv6_dst)) {
 nl_msg_put_in6_addr(buf, OVS_TUNNEL_KEY_ATTR_IPV6_DST,
 >encap.ipv6.ipv6_dst);
 }
diff --git a/lib/tc.c b/lib/tc.c
index 9ac40f692c17..ac5ecc2b7e6f 100644
--- a/lib/tc.c
+++ b/lib/tc.c
@@ -2060,7 +2060,7 @@ nl_msg_put_act_tunnel_key_set(struct ofpbuf *request, 
bool id_present,
 if (ipv4_dst) {
 nl_msg_put_be32(request, TCA_TUNNEL_KEY_ENC_IPV4_SRC, ipv4_src);
 nl_msg_put_be32(request, TCA_TUNNEL_KEY_ENC_IPV4_DST, ipv4_dst);
-} else if (!is_all_zeros(ipv6_dst, sizeof *ipv6_dst)) {
+} else if (ipv6_addr_is_set(ipv6_dst)) {
 nl_msg_put_in6_addr(request, TCA_TUNNEL_KEY_ENC_IPV6_DST,
 ipv6_dst);
 nl_msg_put_in6_addr(request, TCA_TUNNEL_KEY_ENC_IPV6_SRC,
@@ -2157,12 +2157,10 @@ nl_msg_put_act_ct(struct ofpbuf *request, struct 
tc_action *action)
 action->ct.range.ipv4.max);
 }
 } else if (action->ct.range.ip_family == AF_INET6) {
-size_t ipv6_sz = sizeof(action->ct.range.ipv6.max);
 
 nl_msg_put_in6_addr(request, TCA_CT_NAT_IPV6_MIN,
 >ct.range.ipv6.min);
-if (!is_all_zeros(>ct.range.ipv6.max,
-  ipv6_sz)) {
+if (ipv6_addr_is_set(>ct.range.ipv6.max)) {
 nl_msg_put_in6_addr(request, TCA_CT_NAT_IPV6_MAX,
 >ct.range.ipv6.max);
 }
-- 
2.26.1

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [PATCH v3 RESEND] classifier: Prevent tries vs n_tries race leading to NULL dereference.

2020-05-17 Thread Eiichi Tsukata
Currently classifier tries and n_tries can be updated not atomically,
there is a race condition which can lead to NULL dereference.
The race can happen when main thread updates a classifier tries and
n_tries in classifier_set_prefix_fields() and at the same time revalidator
or handler thread try to lookup them in classifier_lookup__(). Such race
can be triggered when user changes prefixes of flow_table.

Race(user changes flow_table prefixes: ip_dst,ip_src => none):

  [main thread] [revalidator/handler thread]
  ===
/* cls->n_tries == 2 */
for (int i = 0; i < cls->n_tries; i++) {
  trie_init(cls, i, NULL);
  /* n_tries == 0 */
  cls->n_tries = n_tries;
/* cls->tries[i]->feild is NULL */
trie_ctx_init(_ctx[i],>tries[i]);
/* trie->field is NULL */
ctx->be32ofs = trie->field->flow_be32ofs;

To prevent the race, instead of re-introducing internal mutex
implemented in the commit fccd7c092e09 ("classifier: Remove internal
mutex."), this patch makes trie field RCU protected and checks it after
read.

Fixes: fccd7c092e09 ("classifier: Remove internal mutex.")
Signed-off-by: Eiichi Tsukata 
---
 lib/classifier.c| 37 ++---
 lib/classifier.h|  6 --
 tests/test-classifier.c |  5 +++--
 3 files changed, 29 insertions(+), 19 deletions(-)

diff --git a/lib/classifier.c b/lib/classifier.c
index 0fad953..10909a6 100644
--- a/lib/classifier.c
+++ b/lib/classifier.c
@@ -393,7 +393,9 @@ classifier_set_prefix_fields(struct classifier *cls,
 bitmap_set1(fields.bm, trie_fields[i]);
 
 new_fields[n_tries] = NULL;
-if (n_tries >= cls->n_tries || field != cls->tries[n_tries].field) {
+const struct mf_field *cls_field
+= ovsrcu_get(struct mf_field *, >tries[n_tries].field);
+if (n_tries >= cls->n_tries || field != cls_field) {
 new_fields[n_tries] = field;
 changed = true;
 }
@@ -454,7 +456,7 @@ trie_init(struct classifier *cls, int trie_idx, const 
struct mf_field *field)
 } else {
 ovsrcu_set_hidden(>root, NULL);
 }
-trie->field = field;
+ovsrcu_set_hidden(>field, field);
 
 /* Add existing rules to the new trie. */
 CMAP_FOR_EACH (subtable, cmap_node, >subtables_map) {
@@ -839,7 +841,6 @@ classifier_remove_assert(struct classifier *cls,
 struct trie_ctx {
 const struct cls_trie *trie;
 bool lookup_done;/* Status of the lookup. */
-uint8_t be32ofs; /* U32 offset of the field in question. */
 unsigned int maskbits;   /* Prefix length needed to avoid false matches. */
 union trie_prefix match_plens;  /* Bitmask of prefix lengths with possible
  * matches. */
@@ -849,7 +850,6 @@ static void
 trie_ctx_init(struct trie_ctx *ctx, const struct cls_trie *trie)
 {
 ctx->trie = trie;
-ctx->be32ofs = trie->field->flow_be32ofs;
 ctx->lookup_done = false;
 }
 
@@ -1531,8 +1531,10 @@ insert_subtable(struct classifier *cls, const struct 
minimask *mask)
 *CONST_CAST(uint8_t *, >n_indices) = index;
 
 for (i = 0; i < cls->n_tries; i++) {
-subtable->trie_plen[i] = minimask_get_prefix_len(mask,
- cls->tries[i].field);
+const struct mf_field *field
+= ovsrcu_get(struct mf_field *, >tries[i].field);
+subtable->trie_plen[i]
+= field ? minimask_get_prefix_len(mask, field) : 0;
 }
 
 /* Ports trie. */
@@ -1577,8 +1579,10 @@ check_tries(struct trie_ctx trie_ctx[CLS_MAX_TRIES], 
unsigned int n_tries,
 for (j = 0; j < n_tries; j++) {
 /* Is the trie field relevant for this subtable, and
is the trie field within the current range of fields? */
-if (field_plen[j] &&
-flowmap_is_set(_map, trie_ctx[j].be32ofs / 2)) {
+const struct mf_field *ctx_field
+= ovsrcu_get(struct mf_field *, _ctx[j].trie->field);
+if (field_plen[j] && ctx_field &&
+flowmap_is_set(_map, ctx_field->flow_be32ofs / 2)) {
 struct trie_ctx *ctx = _ctx[j];
 
 /* On-demand trie lookup. */
@@ -1601,14 +1605,16 @@ check_tries(struct trie_ctx trie_ctx[CLS_MAX_TRIES], 
unsigned int n_tries,
  * than this subtable would otherwise. */
 if (ctx->maskbits <= field_plen[j]) {
 /* Unwildcard the bits and skip the rest. */
-mask_set_prefix_bits(wc, ctx->be32ofs, ctx->maskbits);
+mask_set_prefix_bits(wc, ctx_field->flow_be32ofs,
+ ctx->maskbits);
 /* Note: Prerequisite already unwildcarded, as the only
  * prerequisite of the 

[ovs-dev] Postdated Check cleared receipt for 2020/15/May

2020-05-17 Thread Sales
Please confirm payment made May 14 2020.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] changer de contrat

2020-05-17 Thread Elodie . LEROY

revoir#outlook a { padding:0; } body { 
margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:10
0%;
} table, td {
border-collapse:collapse;mso-table-lspace:0pt;mso-table-rspace:0pt; }
img { border:0;height:auto;line-height:100%;
outline:none;text-decoration:none;-ms-interpolation-mode:bicubic; } p {
display:block;margin:13px 0; } 96 .mj-outlook-group-fix { width:100%
!important; } @media only screen and (min-width:480px) {
.mj-column-per-100 { width:100% !important; max-width: 100%; }
.mj-column-per-50 { width:50% !important; max-width: 50%; } }[owa]
.mj-column-per-100 { width:100% !important; max-width: 100%; } [owa]
.mj-column-per-50 { width:50% !important; max-width: 50%; }@media only
screen and (max-width:480px) { table.mj-full-width-mobile { width: 100%
!important; } td.mj-full-width-mobile { width: auto !important; } }









Bonjour,



Si vous avez un prt immobilier en cours, je vous propose de
rengocier pour vous l'assurance emprunteur que vous avez
souscrite en mme temps que votre prt.

Nos clients conomisent en moyenne 8000 euros  12000
euros sur la dure de leur prt (avec de meilleures
garanties) sans avoir  changer de banque ni contraintes
administratives.





Nous nous chargeons de toutes les dmarches administratives.
C'est 100% gagnant.

Si vous tes dispos  obtenir une premire
tude gratuite et sans engagement, je vous invite 
remplir notre formulaire ICI. Si vous n'avez pas de prt en
cours, je vous invite  transfrer ce mail  un
ami



















Je reste  votre entire disposition pour toute
information complmentaire,

Bien Cordialement



Elodie LEROY Assistante Commerciale















































cliquez ici pour vous dsabonner.

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] ERNEST

2020-05-17 Thread erns tourch
Dear Sir,


Compliments,



INVESTMENT

how are you?...
I am a lawyer. There is an investment/ partnership business proposal which I 
believe will be of mutual benefit to both of us.
I need your co-operation to transfer some money to your account and invest the 
fund in any of the following sectors, real estate, Fishing etc, thus any other 
available sector..


I look forward to discussing this opportunity further with you.


Sincerely,


Mr. Ernest Tourch

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] mettre à jour vos informations personnelles

2020-05-17 Thread cmb












Madame, Monsieur,

Vous devez vous connecter  votre compte 
decrdit mutuel de bretagneds que possible et 
accepterles nouvelles conditionspour confirmer et / ou mettre 
 jour vos donnes personnelles.

Avec cette tape, nous pouvons nous assurer que 
votre adresse lectronique et votre numro de 
tlphone ne sont pas utiliss sans votre consentement.

Vous devez accder au service en ligne en 
cliquant sur le lien ci-dessus:

Espace Client



Suivez les conseils ci-dessous pour confirmer et / ou 
mettre  jour vos informations personnelles:


1Connectez-vous  votre espace 
scuris avec vos identifiants personnels.
2 Accepter les nouvelles conditions et suivez 
les tapes


Si vous avez des questions, votre agence de 
crdit mutuel sera toujours disponible pour vous aider.

Cordialement,

Lquipe crdit mutuel de bretagne















Ce message et toutes les pices jointes sont 
confidentiels et tablis  lintention exclusive de son ou 
ses destinataires. Si vous avez reu ce message par erreur, merci 
den avertir immdiatement lmetteur et de 
dtruire le message. Toute modification, dition, utilisation ou 
diffusion non autorise est interdite. Lmetteur 
dcline toute responsabilit au titre de ce message sil a 
t modifi, dform, falsifi, 
infect par un virus ou encore dit ou diffus 
sans autorisation.




___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] OvS-DPDK change interface MAC

2020-05-17 Thread Roni Bar Yanai
Hi Ravi,

The patch only configures internal ports of OVS, other 
ports are blocked (you can look at the code).
We currently looking for a solution for setting the MAC
 in case of switchmod when VF is in passthrough and VM is 
 untrusted.
why do you need to change the mac address on the fly?

>-Original Message-
>From: dev  On Behalf Of Ravi Kerur
>Sent: Wednesday, May 13, 2020 9:56 PM
>To: ovs-dev 
>Subject: [ovs-dev] OvS-DPDK change interface MAC
>
>Hello OvS-DPDK team,
>
>Is there a way to change interface mac address for DPDK interfaces?
>Interfaces are part of LACP bond.
>
>I tried following commands and they don't seem to work.
>
>ovs-vsctl set interface  other-
>config:hwaddr=\"00:11:11:11:11:01\"
>ovs-vsctl set interface  mac=\"00:00:00:01:01:01\"
>
>No error messages in vswitchd log. Logs shown below
>
>
>ovs-ofctl dump-ports-desc br-phy
>OFPST_PORT_DESC reply (xid=0x2):
> 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> config: 0
> state:  0
> current:10GB-FD AUTO_NEG
> speed: 1 Mbps now, 0 Mbps max
> 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
> config: 0
> state:  0
> current:10GB-FD AUTO_NEG
> speed: 1 Mbps now, 0 Mbps max
> LOCAL(br-phy): addr:a0:36:9f:5d:af:58
> config: 0
> state:  0
> current:10MB-FD COPPER
> speed: 10 Mbps now, 0 Mbps max
>
>/Execute command***/
>ovs-vsctl set interface dpdk-ens11f0
>other-config:hwaddr=\"00:11:11:11:11:01\"
>
>/***Nothing changed***/
>ovs-ofctl dump-ports-desc br-phy
>OFPST_PORT_DESC reply (xid=0x2):
> 1(dpdk-enp4s0f0): addr:a0:36:9f:5d:af:58
> config: 0
> state:  0
> current:10GB-FD AUTO_NEG
> speed: 1 Mbps now, 0 Mbps max
> 2(dpdk-ens11f0): addr:90:e2:ba:a0:e6:10
> config: 0
> state:  0
> current:10GB-FD AUTO_NEG
> speed: 1 Mbps now, 0 Mbps max
> LOCAL(br-phy): addr:a0:36:9f:5d:af:58
> config: 0
> state:  0
> current:10MB-FD COPPER
> speed: 10 Mbps now, 0 Mbps max
>
>Thanks,
>Ravi
>___
>dev mailing list
>d...@openvswitch.org
>https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.open
>vswitch.org%2Fmailman%2Flistinfo%2Fovs-
>devdata=02%7C01%7Croniba%40mellanox.com%7C17acfbf576d840852ac40
>8d7f76f4355%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C63724992956
>6354578sdata=UKJmh36BntaRjllz551sBv0ah6O4sF%2BO8d6IGtr3xwM%3D&
>amp;reserved=0
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev