Consume the return code from hvm_pi_update_irte(), and propagate the error
back to the caller if hvm_pi_update_irte() fails.
Fixes: 35a1caf8b6b5 ('pass-through: update IRTE according to guest interrupt config changes')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
master commit:
cb587f620ab56cc683347d8120ba63989fad2693
master date: 2025-03-12 13:32:31 +0100
/* Use interrupt posting if it is supported. */
if ( iommu_intpost )
- hvm_pi_update_irte(vcpu, info, pirq_dpci->gmsi.gvec);
+ {
+ rc = hvm_pi_update_irte(vcpu, info, pirq_dpci->gmsi.gvec);
+
+ if ( rc )
+ {
+ pt_irq_destroy_bind(d, pt_irq_bind);
+ return rc;
+ }
+ }
if ( pt_irq_bind->u.msi.gflags & XEN_DOMCTL_VMSI_X86_UNMASKED )
{