[PATCHv2] x86/vmd: Initialize list item in irq disable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Multiple calls to disable an IRQ would have caused the driver to
dereference a poisoned list item. This re-initializes the list to
allow multiple requests to disable the irq.

Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
---
v1 -> v2:
  Used the patch with the correct macro

 arch/x86/pci/vmd.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/x86/pci/vmd.c b/arch/x86/pci/vmd.c
index b1662bf..3519a15 100644
--- a/arch/x86/pci/vmd.c
+++ b/arch/x86/pci/vmd.c
@@ -135,6 +135,7 @@ static void vmd_irq_disable(struct irq_data *data)
 
 	raw_spin_lock(&list_lock);
 	list_del_rcu(&vmdirq->node);
+	INIT_LIST_HEAD_RCU(&vmdirq->node);
 	raw_spin_unlock(&list_lock);
 }
 
-- 
2.7.2

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux