I can boot with this patch- thanks!
-K
On 8/6/25 22:16, Nam Cao wrote:
On Thu, Aug 07, 2025 at 06:39:13AM +0200, Nam Cao wrote:
Kenneth Crudup <kenny@xxxxxxxxx> writes:
I'm running Linus' master (as of today, cca7a0aae8958c9b1).
If I revert the named commit, I can boot OK. Unfortunately there's no
real output before the machine reboots, to help identify the problem.
I have a(n enabled) VMD in my Alderlake machine:
[ 0.141952] [ T1] smpboot: CPU0: 12th Gen Intel(R) Core(TM)
i7-1280P (family: 0x6, model: 0x9a, stepping: 0x3)
If there's something else I can try, let me know.
Thanks for the report. It is unfortunate that there is no output to work
with :(
Let me stare at the commit again..
Another person reported problem with this commit, and that was resolved
with the diff below.
Does it fix your case too?
diff --git a/drivers/pci/controller/vmd.c b/drivers/pci/controller/vmd.c
index 9bbb0ff4cc15..b679c7f28f51 100644
--- a/drivers/pci/controller/vmd.c
+++ b/drivers/pci/controller/vmd.c
@@ -280,10 +280,12 @@ static int vmd_msi_alloc(struct irq_domain *domain, unsigned int virq,
static void vmd_msi_free(struct irq_domain *domain, unsigned int virq,
unsigned int nr_irqs)
{
+ struct irq_data *irq_data;
struct vmd_irq *vmdirq;
for (int i = 0; i < nr_irqs; ++i) {
- vmdirq = irq_get_chip_data(virq + i);
+ irq_data = irq_domain_get_irq_data(domain, virq + i);
+ vmdirq = irq_data->chip_data;
synchronize_srcu(&vmdirq->irq->srcu);
--
Kenneth R. Crudup / Sr. SW Engineer, Scott County Consulting, Orange
County CA