On Wed, May 25, 2022 at 07:51:12PM +0200, Frank Kardel wrote:
> See uuencodes files:
thanks, I see nothing obvious here.
Please rebuild the netbsd-XEN3_DOM0 kernel with the attached patch,
and use the attached xen-debug.gz (it has extra printk which I used to debug
the msi/msi-x setup). Hopefully this will tell us why Xen refuses to map
the msi-x, and then the msi interrupts.
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Index: sys/arch/xen/x86/pintr.c
===================================================================
RCS file: /cvsroot/src/sys/arch/xen/x86/pintr.c,v
retrieving revision 1.23
diff -u -p -u -r1.23 pintr.c
--- sys/arch/xen/x86/pintr.c 24 May 2022 15:51:10 -0000 1.23
+++ sys/arch/xen/x86/pintr.c 25 May 2022 18:59:23 -0000
@@ -208,7 +208,7 @@ xen_map_msi_pirq(struct pic *pic, int co
}
aprint_debug("\n");
} else {
- aprint_debug(" fail\n");
+ aprint_debug(" fail %d\n", ret);
}
return ret;
}
@@ -246,7 +246,7 @@ xen_map_msix_pirq(struct pic *pic, int c
aprint_debug(" map %d", i);
ret = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq);
if (ret) {
- aprint_debug(" fail\n");
+ aprint_debug(" fail %d\n", ret);
goto fail;
}
msi_i->mp_xen_pirq[i] = map_irq.pirq;
Attachment:
xen-debug.gz
Description: Binary data