Hi Thomas, On Sun, Jun 23, 2024 at 05:18:39PM +0200, Thomas Gleixner wrote: > From: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > > The its_pci_msi_prepare() function from the ITS-PCI/MSI code provides the > 'global' PCI/MSI domains. Move this function to the ITS-MSI parent code and > amend the function to use the domain hardware size, which is the MSI[X] > vector count, for allocating the ITS slots for the PCI device. > > Enable PCI matching in msi_parent_ops and provide the necessary update to > the ITS specific child domain initialization function so that the prepare > callback gets invoked on allocations. > > The latter might be optimized to do the allocation right at the point where > the child domain is initialized, but keep it simple for now. > > Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Signed-off-by: Anna-Maria Behnsen <anna-maria@xxxxxxxxxxxxx> > Signed-off-by: Shivamurthy Shastri <shivamurthy.shastri@xxxxxxxxxxxxx> > Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> I just noticed guests (under KVM) failing to boot on my TX2 with your latest branch. I bisected to this patch as the first bad commit. I'm away this weekend, so won't have time to dive deeper. It looks like the CPU is stuck in do_idle() (no timer interrupts?). Also sysrq did not seem able to get the stack trace on the other CPUs. It fails both with a single or multiple CPUs in the same way place (shortly before mounting the rootfs and starting user space). Not sure whether it's related by Red Hat's CI is also reporting boot failures: https://lore.kernel.org/r/66859.124062817530400571@xxxxxxxxxxxxxxxxxxxxxxxxxx I'll drop your branch from the arm64 for-kernelci for now and have a look again on Monday. -- Catalin