x86/irq: skip unmap_domain_pirq XSM during destruction
authorJason Andryuk <jandryuk@gmail.com>
Fri, 8 Apr 2022 12:51:52 +0000 (14:51 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 8 Apr 2022 12:51:52 +0000 (14:51 +0200)
commit2e6f95a942d1927a53f077c301db0b799c54c05a
treebc9c0ca4250a15d0d31fb9006b07777ac8234741
parent347d36c2ec2b6f78cd1023f30b8426f2b1444ecc
x86/irq: skip unmap_domain_pirq XSM during destruction

xsm_unmap_domain_irq was seen denying unmap_domain_pirq when called from
complete_domain_destroy as an RCU callback.  The source context was an
unexpected, random domain.  Since this is a xen-internal operation,
going through the XSM hook is inapproriate.

Check d->is_dying and skip the XSM hook when set since this is a cleanup
operation for a domain being destroyed.

Suggested-by: Roger Pau Monné <roger.pau@citrix.com>
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
xen/arch/x86/irq.c