Commit 0dd11f9be47188ce08543ef65e9ece9beb2027dc
Committed by
Linus Torvalds
1 parent
4eb527a0ca
Exists in
master
and in
4 other branches
msi: fix the ordering of msix irqs
"Mike Miller (OS Dev)" <mikem@beardog.cca.cpqcorp.net> writes: Found what seems the problem with our vectors being listed backward. In drivers/pci/msi.c we should be using list_add_tail rather than list_add to preserve the ordering across various kernels. Please consider this for inclusion. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Screwed-up-by: Michael Ellerman <michael@ellerman.id.au> Cc: "Mike Miller (OS Dev)" <mikem@beardog.cca.cpqcorp.net> Cc: Andi Kleen <ak@suse.de> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff
drivers/pci/msi.c
... | ... | @@ -333,7 +333,7 @@ |
333 | 333 | msi_mask_bits_reg(pos, is_64bit_address(control)), |
334 | 334 | maskbits); |
335 | 335 | } |
336 | - list_add(&entry->list, &dev->msi_list); | |
336 | + list_add_tail(&entry->list, &dev->msi_list); | |
337 | 337 | |
338 | 338 | /* Configure MSI capability structure */ |
339 | 339 | ret = arch_setup_msi_irqs(dev, 1, PCI_CAP_ID_MSI); |
... | ... | @@ -404,7 +404,7 @@ |
404 | 404 | entry->dev = dev; |
405 | 405 | entry->mask_base = base; |
406 | 406 | |
407 | - list_add(&entry->list, &dev->msi_list); | |
407 | + list_add_tail(&entry->list, &dev->msi_list); | |
408 | 408 | } |
409 | 409 | |
410 | 410 | ret = arch_setup_msi_irqs(dev, nvec, PCI_CAP_ID_MSIX); |