>>> On 20.12.18 at 06:58, <christopher.w.cl...@gmail.com> wrote: > On Wed, Dec 12, 2018 at 3:53 AM Jan Beulich <jbeul...@suse.com> wrote: >> >>> On 01.12.18 at 02:32, <christopher.w.cl...@gmail.com> wrote: >> > +static struct argo_ring_info * >> > +argo_ring_find_info_by_match(const struct domain *d, uint32_t port, >> > + domid_t partner_id, uint64_t partner_cookie) >> > +{ >> > + argo_ring_id_t id; >> > + struct argo_ring_info *ring_info; >> > + >> > + ASSERT(rw_is_locked(&d->argo->lock)); >> > + >> > + id.addr.port = port; >> > + id.addr.domain_id = d->domain_id; >> > + id.partner = partner_id; >> > + >> > + ring_info = argo_ring_find_info(d, &id); >> > + if ( ring_info && (partner_cookie == ring_info->partner_cookie) ) >> > + return ring_info; >> >> Such a cookie makes mismatches unlikely, but it doesn't exclude >> them. If there are other checks, is the cookie useful at all? > > Yes, I think so and it's proved useful elsewhere in the second > version of the series: it helps avoid sending signals to incorrect > domains that may not be argo-enabled.
"It helps avoid" still isn't "it allows to avoid", i.e. it still sounds like an approach reducing likelihood instead of one excluding mistakes altogether. Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel