]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Merge commit '4364ee' into tmp-bad-learn
authorMaria Matejka <mq@ucw.cz>
Tue, 27 Sep 2022 10:46:22 +0000 (12:46 +0200)
committerMaria Matejka <mq@ucw.cz>
Tue, 27 Sep 2022 10:46:22 +0000 (12:46 +0200)
1  2 
sysdep/linux/netlink.c
sysdep/unix/krt.c

index a4172a6d4c7064cabc79df548ba93460d8575d34,d802d3e072f1f09c8fa439cd072d429d01bff5a4..656202ac71f8a5540148b3a54a131b462228ec73
@@@ -2044,11 -2042,11 +2042,10 @@@ nl_parse_route(struct nl_parse_state *s
      s->net = lp_alloc(s->pool, net->length);
      net_copy(s->net, net);
  
--    s->attrs = ra;
--
-     ea_set_attr_data(&ra->eattrs, &ea_gen_nexthop, 0,
+     ea_set_attr_data(&ra, &ea_gen_nexthop, 0,
        nhad.ad.data, nhad.ad.length);
  
++    s->attrs = ra;
      s->proto = p;
      s->new = new;
      s->krt_src = krt_src;
index 84457d37f9524005ed4bf0deece8bbce153b23f6,a37d3186664de92d8c3587ba7a5b8e1833250e88..4539feee5733c685caf52bc5e6da853342d61e39
@@@ -319,15 -319,6 +319,14 @@@ krt_learn_announce_delete(struct krt_pr
    rte_update(p->p.main_channel, n, NULL, p->p.main_source);
  }
  
-   ASSERT(!e->attrs->cached);
-   ea_set_attr_u32(&e->attrs->eattrs, &ea_gen_preference, 0, p->p.main_channel->preference);
 +static struct rte_storage *
 +krt_store_async(struct krt_proto *p, net *n, rte *e)
 +{
++  ea_set_attr_u32(&e->attrs, &ea_gen_preference, 0, p->p.main_channel->preference);
 +  e->src = p->p.main_source;
 +  return rte_store(e, n, p->krt_table);
 +}
 +
  /* Called when alien route is discovered during scan */
  static void
  krt_learn_scan(struct krt_proto *p, rte *e)