> On 28/07/2021 18:58, Lorenzo Bianconi wrote:
> > Introduce some log messages in IPv6 Prefix delegation processing useful
> > for debugging
> >
> > Signed-off-by: Lorenzo Bianconi <[email protected]>
> > ---
> > controller/pinctrl.c | 25 ++++++++++++++++++++++++-
> > 1 file changed, 24 insertions(+), 1 deletion(-)
> >
> > diff --git a/controller/pinctrl.c b/controller/pinctrl.c
> > index a1fba3bdb..2ac227704 100644
> > --- a/controller/pinctrl.c
> > +++ b/controller/pinctrl.c
> > @@ -770,6 +770,13 @@ pinctrl_parse_dhcpv6_advt(struct rconn *swconn, const
> > struct flow *ip_flow,
> >
> > pfd->state = PREFIX_REQUEST;
> >
> > + static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(20, 40);
> > + char ip6_s[INET6_ADDRSTRLEN + 1];
> > + if (ipv6_string_mapped(ip6_s, &ip_flow->ipv6_src)) {
> > + VLOG_INFO_RL(&rl, "Received DHCPv6 advt from %s with aid %d"
>
> Should this be DBG level? I'm not sure but if it needs rate-limiting, it
> suggests that this will be noisy?
ack, I will fix it.
Regards,
Lorenzo
>
> > + " sending DHCPv6 request", ip6_s, aid);
> > + }
> > +
> > uint64_t packet_stub[256 / 8];
> > struct dp_packet packet;
> >
> > @@ -938,6 +945,14 @@ pinctrl_parse_dhcpv6_reply(struct dp_packet *pkt_in,
> > in_dhcpv6_data += opt_len;
> > }
> > if (status) {
> > + static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(20, 40);
> > + char prefix[INET6_ADDRSTRLEN + 1];
> > + char ip6_s[INET6_ADDRSTRLEN + 1];
> > + if (ipv6_string_mapped(ip6_s, &ip_flow->ipv6_src) &&
> > + ipv6_string_mapped(prefix, &ipv6)) {
> > + VLOG_INFO_RL(&rl, "Received DHCPv6 reply from %s with prefix
> > %s/%d"
> > + " aid %d", ip6_s, prefix, prefix_len, aid);Should
> > this be DBG level?
> > + }
> > pinctrl_prefixd_state_handler(ip_flow, ipv6, aid, eth->eth_src,
> > in_ip->ip6_src, prefix_len, t1, t2,
> > plife_time, vlife_time, uuid,
> > uuid_len);
> > @@ -1227,19 +1242,27 @@ fill_ipv6_prefix_state(struct ovsdb_idl_txn
> > *ovnsb_idl_txn,
> > pfd->prefix = in6addr_any;
> > }
> > } else if (pfd->state == PREFIX_PENDING && ovnsb_idl_txn) {
> > + static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(20,
> > 40);
> > char prefix_str[INET6_ADDRSTRLEN + 1] = {};
> > struct smap options;
> >
> > + if (!ipv6_string_mapped(prefix_str, &pfd->prefix)) {
> > + goto out;
> > + }
> > + VLOG_INFO_RL(&rl, "updating port_binding for %s with prefix
> > %s/%d"
> > + " aid %d", pb->logical_port, prefix_str,
> > pfd->plen,
> Should this be DBG level?
>
> > + pfd->aid);
> > +
> > pfd->state = PREFIX_DONE;
> > pfd->last_complete = time_msec();
> > pfd->next_announce = pfd->last_complete + pfd->t1;
> > - ipv6_string_mapped(prefix_str, &pfd->prefix);
> > smap_clone(&options, &pb->options);
> > smap_add_format(&options, "ipv6_ra_pd_list", "%d:%s/%d",
> > pfd->aid, prefix_str, pfd->plen);
> > sbrec_port_binding_set_options(pb, &options);
> > smap_destroy(&options);
> > }
> > +out:
> > pfd->last_used = time_msec();
> > destroy_lport_addresses(&c_addrs);
> > }
> >
>
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev