Re: [ovs-dev] [PATCH ovn] ovn-northd: Do not generate logical flows if lsp is not up
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
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
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
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
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
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
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
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.
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
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
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
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
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
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