On 07/10/2022 20:31, Jason Andryuk wrote:
> I observed this ASSERT_UNREACHABLE in partner_rings_remove consistently
> trip.  It was in OpenXT with the viptables patch applied.
>
> dom10 shuts down.
> dom7 is REJECTED sending to dom10.
> dom7 shuts down and this ASSERT trips for dom10.
>
> The argo_send_info has a domid, but there is no refcount taken on
> the domain.  Therefore it's not appropriate to ASSERT that the domain
> can be looked up via domid.  Replace with a debug message.
>
> Signed-off-by: Jason Andryuk <jandr...@gmail.com>

We're into the 4.17 release process now.  A bugfix like this obviously
should be considered, but will need approval from the release manager. 
CC Henry.

~Andrew

> ---
>  xen/common/argo.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/xen/common/argo.c b/xen/common/argo.c
> index 748b8714d6..973e1e9956 100644
> --- a/xen/common/argo.c
> +++ b/xen/common/argo.c
> @@ -1298,7 +1298,8 @@ partner_rings_remove(struct domain *src_d)
>                      ASSERT_UNREACHABLE();
>              }
>              else
> -                ASSERT_UNREACHABLE();
> +                argo_dprintk("%pd has entry for stale partner domid %d\n",
> +                             src_d, send_info->id.domain_id);
>  
>              if ( dst_d )
>                  rcu_unlock_domain(dst_d);

Reply via email to