|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen staging-4.20] x86/hvm: check return code of hvm_pi_update_irte when binding
commit 94928e415f2131bde75c1c4e5fd120a43e2836a3
Author: Roger Pau Monné <roger.pau@xxxxxxxxxx>
AuthorDate: Thu Mar 20 12:52:32 2025 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu Mar 20 12:52:32 2025 +0100
x86/hvm: check return code of hvm_pi_update_irte when binding
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@xxxxxxxxxx>
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>
master commit: cb587f620ab56cc683347d8120ba63989fad2693
master date: 2025-03-12 13:32:31 +0100
---
xen/drivers/passthrough/x86/hvm.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/xen/drivers/passthrough/x86/hvm.c
b/xen/drivers/passthrough/x86/hvm.c
index f5faff7a49..47de6953fd 100644
--- a/xen/drivers/passthrough/x86/hvm.c
+++ b/xen/drivers/passthrough/x86/hvm.c
@@ -381,7 +381,15 @@ int pt_irq_create_bind(
/* 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 )
{
--
generated by git-patchbot for /home/xen/git/xen.git#staging-4.20
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |