[{"id":3680575,"web_url":"http://patchwork.ozlabs.org/comment/3680575/","msgid":"<CACAUutNacPUqpddYSGfncJp77JM5JevchCZGzkZjY_yyjKH=aQ@mail.gmail.com>","list_archive_url":null,"date":"2026-04-22T11:59:41","subject":"Re: [ovs-dev] [PATCH ovn v2 1/2] northd: Use uuid hash from source\n of parsed route.","submitter":{"id":90169,"url":"http://patchwork.ozlabs.org/api/people/90169/","name":"Lucas Vargas Dias","email":"lucas.vdias@luizalabs.com"},"content":"Em ter., 21 de abr. de 2026 às 18:12, Lucas Vargas Dias <\nlucas.vdias@luizalabs.com> escreveu:\n\n> Search by parsed route can be direct using uuid hash\n> from source (static route, learned route, connect\n> route), this avoids the search by ovn_datapath,\n> and after, the search for parsed route.\n>\n> Signed-off-by: Lucas Vargas Dias <lucas.vdias@luizalabs.com>\n> ---\n>\nrecheck-request: github-robot\n\n\n>  northd/en-learned-route-sync.c | 11 ++---------\n>  northd/northd.c                | 11 +++++------\n>  northd/northd.h                |  4 ++--\n>  3 files changed, 9 insertions(+), 17 deletions(-)\n>\n> diff --git a/northd/en-learned-route-sync.c\n> b/northd/en-learned-route-sync.c\n> index 4f7a12a28..38bd09739 100644\n> --- a/northd/en-learned-route-sync.c\n> +++ b/northd/en-learned-route-sync.c\n> @@ -230,15 +230,9 @@ routes_table_sync(\n>\n>  static struct parsed_route *\n>  find_learned_route(const struct sbrec_learned_route *learned_route,\n> -                   const struct ovn_datapaths *lr_datapaths,\n>                     const struct hmap *routes)\n>  {\n> -    const struct ovn_datapath *od = ovn_datapath_from_sbrec_(\n> -        &lr_datapaths->datapaths, learned_route->datapath);\n> -    if (!od) {\n> -        return NULL;\n> -    }\n> -    return parsed_route_lookup_by_source(od, ROUTE_SOURCE_LEARNED,\n> +    return parsed_route_lookup_by_source(ROUTE_SOURCE_LEARNED,\n>                                           &learned_route->header_, routes);\n>  }\n>\n> @@ -273,8 +267,7 @@\n> learned_route_sync_sb_learned_route_change_handler(struct engine_node *node,\n>\n>          if (sbrec_learned_route_is_deleted(changed_route)) {\n>              struct parsed_route *route = find_learned_route(\n> -                changed_route, &northd_data->lr_datapaths,\n> -                &data->parsed_routes);\n> +                changed_route, &data->parsed_routes);\n>              if (!route) {\n>                  goto fail;\n>              }\n> diff --git a/northd/northd.c b/northd/northd.c\n> index 0b52db6cf..4fd4b9de9 100644\n> --- a/northd/northd.c\n> +++ b/northd/northd.c\n> @@ -12225,15 +12225,14 @@ parsed_route_clone(const struct parsed_route *pr)\n>      return new_pr;\n>  }\n>\n> -/* Searches for a parsed_route in a hmap based on datapath, source and\n> +/* Searches for a parsed_route in a hmap based on source and\n>   * source_hint. */\n>  struct parsed_route *\n> -parsed_route_lookup_by_source(const struct ovn_datapath *od,\n> -                              enum route_source source,\n> +parsed_route_lookup_by_source(enum route_source source,\n>                                const struct ovsdb_idl_row *source_hint,\n>                                const struct hmap *routes)\n>  {\n> -    size_t hash = uuid_hash(&od->key);\n> +    size_t hash = uuid_hash(&source_hint->uuid);\n>      struct parsed_route *route;\n>      HMAP_FOR_EACH_WITH_HASH (route, key_node, hash, routes) {\n>          if (route->source == source &&\n> @@ -12247,10 +12246,10 @@ parsed_route_lookup_by_source(const struct\n> ovn_datapath *od,\n>\n>  /* This hash needs to be equal to the one used in\n>   * build_route_flows_for_lrouter to iterate over all routes of a datapath.\n> - * This is distinct from route_hash which is stored in\n> parsed_route->hash. */\n> + * This is equal to route_hash which is stored in parsed_route->hash. */\n>  size_t\n>  parsed_route_hash(const struct parsed_route *pr) {\n> -    return uuid_hash(&pr->od->key);\n> +    return uuid_hash(&pr->source_hint->uuid);\n>  }\n>\n>  void\n> diff --git a/northd/northd.h b/northd/northd.h\n> index e86d39f9a..a9070d6f6 100644\n> --- a/northd/northd.h\n> +++ b/northd/northd.h\n> @@ -859,8 +859,8 @@ struct parsed_route {\n>\n>  struct parsed_route *parsed_route_clone(const struct parsed_route *);\n>  struct parsed_route *parsed_route_lookup_by_source(\n> -    const struct ovn_datapath *od, enum route_source source,\n> -    const struct ovsdb_idl_row *source_hint, const struct hmap *routes);\n> +    enum route_source source, const struct ovsdb_idl_row *source_hint,\n> +    const struct hmap *routes);\n>  size_t parsed_route_hash(const struct parsed_route *);\n>  void parsed_route_free(struct parsed_route *);\n>\n> --\n> 2.43.0\n>\n>","headers":{"Return-Path":"<ovs-dev-bounces@openvswitch.org>","X-Original-To":["incoming@patchwork.ozlabs.org","dev@openvswitch.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","ovs-dev@lists.linuxfoundation.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=luizalabs.com header.i=@luizalabs.com\n header.a=rsa-sha256 header.s=google header.b=Hge3aToe;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org\n (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org)","smtp3.osuosl.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key,\n unprotected) header.d=luizalabs.com header.i=@luizalabs.com\n header.a=rsa-sha256 header.s=google header.b=Hge3aToe","smtp4.osuosl.org; dmarc=pass (p=quarantine dis=none)\n header.from=luizalabs.com","smtp4.osuosl.org; dkim=pass (1024-bit key,\n unprotected) header.d=luizalabs.com header.i=@luizalabs.com\n header.a=rsa-sha256 header.s=google header.b=Hge3aToe"],"Received":["from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g0yTG2L47z1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 22 Apr 2026 22:00:00 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby smtp3.osuosl.org (Postfix) with ESMTP id 24E9F6178F;\n\tWed, 22 Apr 2026 11:59:58 +0000 (UTC)","from smtp3.osuosl.org ([127.0.0.1])\n by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id 8HEdGNeAXjmA; Wed, 22 Apr 2026 11:59:57 +0000 (UTC)","from lists.linuxfoundation.org (lf-lists.osuosl.org\n [IPv6:2605:bc80:3010:104::8cd3:938])\n\tby smtp3.osuosl.org (Postfix) with ESMTPS id 2877160B2D;\n\tWed, 22 Apr 2026 11:59:57 +0000 (UTC)","from lf-lists.osuosl.org (localhost [127.0.0.1])\n\tby lists.linuxfoundation.org (Postfix) with ESMTP id 0250DC058E;\n\tWed, 22 Apr 2026 11:59:57 +0000 (UTC)","from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n by lists.linuxfoundation.org (Postfix) with ESMTP id 25B99C058D\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 11:59:55 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id 1433D4260C\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 11:59:55 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id 9NGzefocsYkM for <dev@openvswitch.org>;\n Wed, 22 Apr 2026 11:59:54 +0000 (UTC)","from mail-ot1-x331.google.com (mail-ot1-x331.google.com\n [IPv6:2607:f8b0:4864:20::331])\n by smtp4.osuosl.org (Postfix) with ESMTPS id D58A04240B\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 11:59:53 +0000 (UTC)","by mail-ot1-x331.google.com with SMTP id\n 46e09a7af769-7dbcf927395so3040873a34.0\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 04:59:53 -0700 (PDT)"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections -\n client-ip=2605:bc80:3010:104::8cd3:938; helo=lists.linuxfoundation.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp3.osuosl.org 2877160B2D","OpenDKIM Filter v2.11.0 smtp4.osuosl.org D58A04240B"],"Received-SPF":"Pass (mailfrom) identity=mailfrom;\n client-ip=2607:f8b0:4864:20::331; helo=mail-ot1-x331.google.com;\n envelope-from=lucas.vdias@luizalabs.com; receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp4.osuosl.org D58A04240B","ARC-Seal":"i=1; a=rsa-sha256; t=1776859192; cv=none;\n d=google.com; s=arc-20240605;\n b=fuR2/1JPSv5/lclJJez8rdK6zJKEXMCtlI56EJO2NHROkXp+vZJwUXXzq8xjyvKGbW\n Ek9N4NLM0JCZbS7spdemSvt49Dv8oXJ7CbQiDmM+0duTUVEZRN9gvz87HzlSGJClVfkR\n 27kLfKUXnbIp2k0WHowTl9Q6xr+hi+4R2plXN3IPFTRZZGjPzJXjYx5nUrCSxAQZQxNq\n MfJZkR4XDLPW52jYy1bY+d4anECtutYUpYkjpVvr2flFmBpMPjzbsNXgCnuTPwESXzzW\n rTjU2FQTRPpVasWeEhuHu0pBRqj6CoWgagf4JG8itk+6h+R+5sP0v4f4QHAK5fLPek/E\n qjGw==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :dkim-signature;\n bh=t9Av2CxD5TxM/6C4VIvep4Mj56IJUNTeE6B//mEb2ZY=;\n fh=WnO6tfRXfzNkmVvpHWPU0Sn0nugAh6D8VsZG77w0RnY=;\n b=OsUWi/d8Iczwr5wgSaK2jUcbo3dRTkGVGE1nPB9yWzO0HTEQ/NMJf7Y47+Tj+Qalb1\n 29RE913MIZZQ3MJsjTEyuUE90RToEzAVgFQ7APbasIiArzkzDMj3WMuAXMZTpz9ZMU8F\n 9yHjsk7772xPMGipIP1m2mgfp4N+OKXaX7XQVZq00zkOYpGwLSBi9y4eEYU6QmBFaayy\n ZIyl44vmV5iM1tKqVuf+N0wpgekgkFoSjuK5uoBdC6UTJTMeyAcUcHMkFIu8PikiHPAY\n Ezt5WLglFjWLgkTj0KOVOTAET+j9nNM096fIn4PF8Fe35k05G8aTLNhdc+8S55pSULas\n iM0w==; darn=openvswitch.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=luizalabs.com; s=google; t=1776859192; x=1777463992; darn=openvswitch.org;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :from:to:cc:subject:date:message-id:reply-to;\n bh=t9Av2CxD5TxM/6C4VIvep4Mj56IJUNTeE6B//mEb2ZY=;\n b=Hge3aToevbwOQZ3OQaleHyuzx1EQKSE86p1tgysNLpvd8qs4ltUvR5dezg88BPPTDm\n jlrk7NS/PCyRLWXUzLPdZaKbv6f5wUIm2zALXPWH4EseKNJWNof0uY1e+UbtH3YKZ29d\n lXtq5/dTDAZmwhXXAvt5oubSrzUkXPVfQzEcE=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776859192; x=1777463992;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=t9Av2CxD5TxM/6C4VIvep4Mj56IJUNTeE6B//mEb2ZY=;\n b=B/ZMyEqjg1g3LmZ6s65pU0H+JxJdGe4WTnEpkOuTSLKLP0KTCrPeUT9bll+CQAa7L9\n cnnTBWBcgk2JsL4pbJZgiabJZAh5p0alsXfIvTTMfXphIPdJDdhzFkrFtDtP/kZLcDH4\n BwpqPpnSqn+yBKId0Y4c6hY19EY7OLlSYrxpto+w14QlHYOZPKIiN4LAxIyl5a5yTAWN\n 3cV3Qbd5J9Jwv4C3kg8abiWrsbkAk0x/1avwtUg8+xEldEu+wNDqwkCbEYH7vcYQn6B0\n 67haHBfN5/Aj8GPMbUYMv4DNo4JmS6Pytl8g7ewDbb7qebOF4V3MZfVjkimD77REaRF4\n Y4Ag==","X-Gm-Message-State":"AOJu0Yzxq3NqT7tlqEw0xXOf8QB2KEk1IBf23vF034+Y413Y+oMI7Nb8\n uA7/GrT/VagpeTswxNmOn/JRF0hhnbHG/pfk/BuzZLtqD1PgLYyG0F0bjTrbuRg0KINZ12TMi5Y\n o44CJBJkJg7QfvBGpBiS7qLDIjEbaJwBDRTHyDRE4fpZ7jT331mQxZ+cVCBGpisWCJI0zyrWI6Z\n 3vJIpm9HDAWf6Vhp38RHpjXOg/6W5C8k8UM+g=","X-Gm-Gg":"AeBDievVCEMu6YzaVMmtgJHmoqzj8s47+8vYhG2u/Sv6qpAhEZx3h9VGRY7y4qQJJas\n Dj1ivx2z6UmBwySVOkhpbN89Tt008ML3tPkX385DgrU8gEy4VrrkWM4agf6lEUClxa5wgR2aVQH\n YpFDbWYBy4bTAdps2gSZ9gJBsyH7qrUWPCAXQAD9yff+cExD9axuEk83CS9Ovfnbehjowk+EZDc\n 2u5Fyhz6sgL6xnN+4d8b5PI74bszYrCNjLu/+49nOJqFNLfS/KKdQJKx30yeXT3e/PdJM6zOJEd\n frFa9mydhTAf7gVMUXYxEA/6RjaJ2j8=","X-Received":"by 2002:a05:6830:8d1:b0:7d7:5b78:ef31 with SMTP id\n 46e09a7af769-7dc94fdf204mr13665483a34.12.1776859192157; Wed, 22 Apr 2026\n 04:59:52 -0700 (PDT)","MIME-Version":"1.0","References":"<20260421211155.1974219-1-lucas.vdias@luizalabs.com>","In-Reply-To":"<20260421211155.1974219-1-lucas.vdias@luizalabs.com>","Date":"Wed, 22 Apr 2026 08:59:41 -0300","X-Gm-Features":"AQROBzDg6SaYOn3pvQex-cJk_ItMVCPC2BvN8B41J0-ViNBeBa1OvkTtgG64caU","Message-ID":"\n <CACAUutNacPUqpddYSGfncJp77JM5JevchCZGzkZjY_yyjKH=aQ@mail.gmail.com>","To":"dev@openvswitch.org","X-Content-Filtered-By":"Mailman/MimeDel 2.1.30","Subject":"Re: [ovs-dev] [PATCH ovn v2 1/2] northd: Use uuid hash from source\n of parsed route.","X-BeenThere":"ovs-dev@openvswitch.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"<ovs-dev.openvswitch.org>","List-Unsubscribe":"<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>","List-Archive":"<http://mail.openvswitch.org/pipermail/ovs-dev/>","List-Post":"<mailto:ovs-dev@openvswitch.org>","List-Help":"<mailto:ovs-dev-request@openvswitch.org?subject=help>","List-Subscribe":"<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=subscribe>","From":"Lucas Vargas Dias via dev <ovs-dev@openvswitch.org>","Reply-To":"Lucas Vargas Dias <lucas.vdias@luizalabs.com>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"ovs-dev-bounces@openvswitch.org","Sender":"\"dev\" <ovs-dev-bounces@openvswitch.org>"}},{"id":3680644,"web_url":"http://patchwork.ozlabs.org/comment/3680644/","msgid":"<CACAUutOWF3yh_ZhNj-hr5uoimH9-DEJLSA-64VGpdTGpsT9TLg@mail.gmail.com>","list_archive_url":null,"date":"2026-04-22T14:04:33","subject":"Re: [ovs-dev] [PATCH ovn v2 1/2] northd: Use uuid hash from source\n of parsed route.","submitter":{"id":90169,"url":"http://patchwork.ozlabs.org/api/people/90169/","name":"Lucas Vargas Dias","email":"lucas.vdias@luizalabs.com"},"content":"Recheck-request: github-robot\n\nEm qua., 22 de abr. de 2026 às 08:59, Lucas Vargas Dias <\nlucas.vdias@luizalabs.com> escreveu:\n\n>\n>\n>\n> Em ter., 21 de abr. de 2026 às 18:12, Lucas Vargas Dias <\n> lucas.vdias@luizalabs.com> escreveu:\n>\n>> Search by parsed route can be direct using uuid hash\n>> from source (static route, learned route, connect\n>> route), this avoids the search by ovn_datapath,\n>> and after, the search for parsed route.\n>>\n>> Signed-off-by: Lucas Vargas Dias <lucas.vdias@luizalabs.com>\n>> ---\n>>\n> recheck-request: github-robot\n>\n>\n>>  northd/en-learned-route-sync.c | 11 ++---------\n>>  northd/northd.c                | 11 +++++------\n>>  northd/northd.h                |  4 ++--\n>>  3 files changed, 9 insertions(+), 17 deletions(-)\n>>\n>> diff --git a/northd/en-learned-route-sync.c\n>> b/northd/en-learned-route-sync.c\n>> index 4f7a12a28..38bd09739 100644\n>> --- a/northd/en-learned-route-sync.c\n>> +++ b/northd/en-learned-route-sync.c\n>> @@ -230,15 +230,9 @@ routes_table_sync(\n>>\n>>  static struct parsed_route *\n>>  find_learned_route(const struct sbrec_learned_route *learned_route,\n>> -                   const struct ovn_datapaths *lr_datapaths,\n>>                     const struct hmap *routes)\n>>  {\n>> -    const struct ovn_datapath *od = ovn_datapath_from_sbrec_(\n>> -        &lr_datapaths->datapaths, learned_route->datapath);\n>> -    if (!od) {\n>> -        return NULL;\n>> -    }\n>> -    return parsed_route_lookup_by_source(od, ROUTE_SOURCE_LEARNED,\n>> +    return parsed_route_lookup_by_source(ROUTE_SOURCE_LEARNED,\n>>                                           &learned_route->header_,\n>> routes);\n>>  }\n>>\n>> @@ -273,8 +267,7 @@\n>> learned_route_sync_sb_learned_route_change_handler(struct engine_node *node,\n>>\n>>          if (sbrec_learned_route_is_deleted(changed_route)) {\n>>              struct parsed_route *route = find_learned_route(\n>> -                changed_route, &northd_data->lr_datapaths,\n>> -                &data->parsed_routes);\n>> +                changed_route, &data->parsed_routes);\n>>              if (!route) {\n>>                  goto fail;\n>>              }\n>> diff --git a/northd/northd.c b/northd/northd.c\n>> index 0b52db6cf..4fd4b9de9 100644\n>> --- a/northd/northd.c\n>> +++ b/northd/northd.c\n>> @@ -12225,15 +12225,14 @@ parsed_route_clone(const struct parsed_route\n>> *pr)\n>>      return new_pr;\n>>  }\n>>\n>> -/* Searches for a parsed_route in a hmap based on datapath, source and\n>> +/* Searches for a parsed_route in a hmap based on source and\n>>   * source_hint. */\n>>  struct parsed_route *\n>> -parsed_route_lookup_by_source(const struct ovn_datapath *od,\n>> -                              enum route_source source,\n>> +parsed_route_lookup_by_source(enum route_source source,\n>>                                const struct ovsdb_idl_row *source_hint,\n>>                                const struct hmap *routes)\n>>  {\n>> -    size_t hash = uuid_hash(&od->key);\n>> +    size_t hash = uuid_hash(&source_hint->uuid);\n>>      struct parsed_route *route;\n>>      HMAP_FOR_EACH_WITH_HASH (route, key_node, hash, routes) {\n>>          if (route->source == source &&\n>> @@ -12247,10 +12246,10 @@ parsed_route_lookup_by_source(const struct\n>> ovn_datapath *od,\n>>\n>>  /* This hash needs to be equal to the one used in\n>>   * build_route_flows_for_lrouter to iterate over all routes of a\n>> datapath.\n>> - * This is distinct from route_hash which is stored in\n>> parsed_route->hash. */\n>> + * This is equal to route_hash which is stored in parsed_route->hash. */\n>>  size_t\n>>  parsed_route_hash(const struct parsed_route *pr) {\n>> -    return uuid_hash(&pr->od->key);\n>> +    return uuid_hash(&pr->source_hint->uuid);\n>>  }\n>>\n>>  void\n>> diff --git a/northd/northd.h b/northd/northd.h\n>> index e86d39f9a..a9070d6f6 100644\n>> --- a/northd/northd.h\n>> +++ b/northd/northd.h\n>> @@ -859,8 +859,8 @@ struct parsed_route {\n>>\n>>  struct parsed_route *parsed_route_clone(const struct parsed_route *);\n>>  struct parsed_route *parsed_route_lookup_by_source(\n>> -    const struct ovn_datapath *od, enum route_source source,\n>> -    const struct ovsdb_idl_row *source_hint, const struct hmap *routes);\n>> +    enum route_source source, const struct ovsdb_idl_row *source_hint,\n>> +    const struct hmap *routes);\n>>  size_t parsed_route_hash(const struct parsed_route *);\n>>  void parsed_route_free(struct parsed_route *);\n>>\n>> --\n>> 2.43.0\n>>\n>>","headers":{"Return-Path":"<ovs-dev-bounces@openvswitch.org>","X-Original-To":["incoming@patchwork.ozlabs.org","dev@openvswitch.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","ovs-dev@lists.linuxfoundation.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=luizalabs.com header.i=@luizalabs.com\n header.a=rsa-sha256 header.s=google header.b=YJ/aiUPF;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org\n (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org)","smtp3.osuosl.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key)\n header.d=luizalabs.com header.i=@luizalabs.com header.a=rsa-sha256\n header.s=google header.b=YJ/aiUPF","smtp3.osuosl.org; dmarc=pass (p=quarantine dis=none)\n header.from=luizalabs.com"],"Received":["from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g11FQ5jQ3z1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 00:04:58 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby smtp3.osuosl.org (Postfix) with ESMTP id B9E8D60C06;\n\tWed, 22 Apr 2026 14:04:56 +0000 (UTC)","from smtp3.osuosl.org ([127.0.0.1])\n by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id lDlQs7J--qUC; Wed, 22 Apr 2026 14:04:52 +0000 (UTC)","from lists.linuxfoundation.org (lf-lists.osuosl.org\n [IPv6:2605:bc80:3010:104::8cd3:938])\n\tby smtp3.osuosl.org (Postfix) with ESMTPS id 7F0DA61AFD;\n\tWed, 22 Apr 2026 14:04:52 +0000 (UTC)","from lf-lists.osuosl.org (localhost [127.0.0.1])\n\tby lists.linuxfoundation.org (Postfix) with ESMTP id 68697C058F;\n\tWed, 22 Apr 2026 14:04:52 +0000 (UTC)","from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])\n by lists.linuxfoundation.org (Postfix) with ESMTP id 5DB96C058D\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 14:04:51 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp3.osuosl.org (Postfix) with ESMTP id 4392D61B09\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 14:04:51 +0000 (UTC)","from smtp3.osuosl.org ([127.0.0.1])\n by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id jhx3_yI3M6CZ for <dev@openvswitch.org>;\n Wed, 22 Apr 2026 14:04:46 +0000 (UTC)","from mail-ot1-x336.google.com (mail-ot1-x336.google.com\n [IPv6:2607:f8b0:4864:20::336])\n by smtp3.osuosl.org (Postfix) with ESMTPS id 3A58C61AE9\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 14:04:46 +0000 (UTC)","by mail-ot1-x336.google.com with SMTP id\n 46e09a7af769-7dbccf6a23dso4490442a34.2\n for <dev@openvswitch.org>; Wed, 22 Apr 2026 07:04:46 -0700 (PDT)"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections -\n client-ip=2605:bc80:3010:104::8cd3:938; helo=lists.linuxfoundation.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp3.osuosl.org 7F0DA61AFD","OpenDKIM Filter v2.11.0 smtp3.osuosl.org 3A58C61AE9"],"Received-SPF":"Pass (mailfrom) identity=mailfrom;\n client-ip=2607:f8b0:4864:20::336; helo=mail-ot1-x336.google.com;\n envelope-from=lucas.vdias@luizalabs.com; receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp3.osuosl.org 3A58C61AE9","ARC-Seal":"i=1; a=rsa-sha256; t=1776866685; cv=none;\n d=google.com; s=arc-20240605;\n b=Z0dZS/CHoMz7lwboiKIA+ys0+BDk2lHdKQnWwLSF2GTcnqc21J1pacN9vW455lpwTa\n pZqPSUnKMNIFCP8jXC8Fh99e1e+fyPW9mWqHnYAGnlBEzqPxUEQN3Fb7GwvBzxDKLNhV\n Z88q2n5pTWzPtEtOln0NoeLFG00ZrMRNDLZJ48az4hLNj2zWCGm7xnUk5mN1FQKvcXqd\n vPkCdSghHgylIMq+f4K37xRBZfyTbpZyfK+Fj5w6PuITZSPrJr/IVHEOWRB/mVWPxEt/\n GcNUu57O8FbEmttvwHvd57eEKhk8rEfROPmGDZs+LYwUnwHwi1So3d9V5X7wbC5MFC7k\n nrLA==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :dkim-signature;\n bh=eB+KTO4kQmCZYszPLBfFLKhxf7SBULjLpSMpDo2pBLo=;\n fh=WnO6tfRXfzNkmVvpHWPU0Sn0nugAh6D8VsZG77w0RnY=;\n b=kpyFeLFxXQ82jdh3tGT6Zig3iJRQk/zOS+V18Kfs4+DxZwQfuD2OEJ4+gyXk8L1QMv\n 5rYyLgGlEJ+qlHcuerDcYuGs2uzqg6Fn1HKpu7JmQNPMX3rAg3IXF1RfM4+Wi7lcJ9eV\n Xzt85fz38VJkOPYUAEzuGnlz3jekvXj6DPDWptgWmQnOvXWZO9FaI05gn/oPt/R3lPEf\n swaiLnzOlIp0dG3gRtSKNci0vBCiH4Mwri9rdUJ0hF1uVEpEqAzwVcZk93pAQ7VXLIhK\n 3HlNsKZr41RYdLqESHALkDwxJRoO+9xDUT7HpR02dCMgohhsp8tAR153pB0xqtz5ZLq6\n tjdg==; darn=openvswitch.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=luizalabs.com; s=google; t=1776866685; x=1777471485; darn=openvswitch.org;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :from:to:cc:subject:date:message-id:reply-to;\n bh=eB+KTO4kQmCZYszPLBfFLKhxf7SBULjLpSMpDo2pBLo=;\n b=YJ/aiUPFWvfQiJlV6kEKFYftB0PvZP+JGUbK1dRgisLz7yvMMudkFJLNQ/661Z6J/P\n th6gd4c4jREf1vhXpRP9/+B8JVw7gtNzJ1NBDmk0xVI73zjQt7RQdhrwDEJSbJcpiWQO\n 53U/ceH2NsyJnvJxOPGMpQAm9xuuHwvramxLU=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776866685; x=1777471485;\n h=to:subject:message-id:date:from:in-reply-to:references:mime-version\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=eB+KTO4kQmCZYszPLBfFLKhxf7SBULjLpSMpDo2pBLo=;\n b=kiPDEBR4rHeWUm28U+vnIfCjcItUsntQ6L1L1vZYcr3tafFxLCKxQU5tlv+l7nFKX7\n YjDGMRYKFaW5T3DElZpp3DEcElx1GbBhJIkfqcauGptmt80rekKo9041K4hsuGUaedu/\n k4oO8GbBUS1wH7qP1VPW1kJUK9CDjyMuIsAGp/+Mpz3NYF7CdpQuJvtj74y54C1mYh0u\n tiJrtNASS/CeH8LHfXXDd5vd6rPksRo8X70GDgPgHTZUMUmoEUnfUGpaiWAvOUJE8Yhp\n 1z0uWyx4ctCHfMwJhvBW3YRDQTURUxU+VVM12rHU4p5gXI6PMxWw6tAJg9FU92fg0Ufk\n Oucw==","X-Gm-Message-State":"AOJu0YxwHuU6BVvTQcAZo2sdoxiQlBIOVF01FFacsdDXhQm1x8g1ARFa\n BKRDrgfeqerQxZVBwxkocblniDkHyiIdZcblWGN/vtUvi1LWQEvSpglNcQ4UiJjNKHgjI546z73\n VV7+eDLd0ZLn1bADPDoB/FWbm3MrBv0OPhcN7VaYYXNy5ANitKs4lIlgUFi+canN3YF5XRqdrLz\n ZEOSZKGHichRQPJGoBNMZAoC5hPni2No7EpnU=","X-Gm-Gg":"AeBDietfL6+EQGFnNiU2ROPkBmJykLN26ah3zBlP5PwsJmCJV+J4ionKEqN3YbncFp2\n gWoynyQbaTXgLF/aRh1Nb0VDs8DU4qGxvKq1VfKJipbyDrn4hn/P57u+P/B3aw6NJb8XQune+dZ\n rDTnccVLQN0oZq27wPq8F88z1WfPuwOS3ZlNXeAuYYJEj6btyCy5/bZMnz0AuO1rJtdNixOWBaW\n TVwIX4u+yLGOld8ISxDMb6Je9+xn5OwMQULwEYjHuKFH0ig6Ap/ZI/oaXgb5bNSZBhuQjmbtIRc\n KuYRJ5MY4cgAasKht5PY","X-Received":"by 2002:a05:6830:8292:b0:7d7:ef4a:5ba0 with SMTP id\n 46e09a7af769-7dc950f996bmr15726495a34.12.1776866684730; Wed, 22 Apr 2026\n 07:04:44 -0700 (PDT)","MIME-Version":"1.0","References":"<20260421211155.1974219-1-lucas.vdias@luizalabs.com>\n <CACAUutNacPUqpddYSGfncJp77JM5JevchCZGzkZjY_yyjKH=aQ@mail.gmail.com>","In-Reply-To":"\n <CACAUutNacPUqpddYSGfncJp77JM5JevchCZGzkZjY_yyjKH=aQ@mail.gmail.com>","Date":"Wed, 22 Apr 2026 11:04:33 -0300","X-Gm-Features":"AQROBzD2OjDvoUTUXUsaezNJyd1esf9powoge18h65UgQB8hebnRTQtcX4gMY4A","Message-ID":"\n <CACAUutOWF3yh_ZhNj-hr5uoimH9-DEJLSA-64VGpdTGpsT9TLg@mail.gmail.com>","To":"dev@openvswitch.org","X-Content-Filtered-By":"Mailman/MimeDel 2.1.30","Subject":"Re: [ovs-dev] [PATCH ovn v2 1/2] northd: Use uuid hash from source\n of parsed route.","X-BeenThere":"ovs-dev@openvswitch.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"<ovs-dev.openvswitch.org>","List-Unsubscribe":"<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>","List-Archive":"<http://mail.openvswitch.org/pipermail/ovs-dev/>","List-Post":"<mailto:ovs-dev@openvswitch.org>","List-Help":"<mailto:ovs-dev-request@openvswitch.org?subject=help>","List-Subscribe":"<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=subscribe>","From":"Lucas Vargas Dias via dev <ovs-dev@openvswitch.org>","Reply-To":"Lucas Vargas Dias <lucas.vdias@luizalabs.com>","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"ovs-dev-bounces@openvswitch.org","Sender":"\"dev\" <ovs-dev-bounces@openvswitch.org>"}}]