Re: [PATCH] iommu/vt-d: fix race between free_irte() and get_irte()

2014-07-23 Thread Joerg Roedel
On Wed, Jul 23, 2014 at 08:49:17AM -0600, Greg Edwards wrote: > On Wed, Jul 23, 2014 at 04:40:24PM +0200, Joerg Roedel wrote: > > On Tue, Jul 22, 2014 at 08:27:19AM -0600, Greg Edwards wrote: > >> get_irte() can race with free_irte() and dereference a NULL iommu > >> pointer. > > > > Have you seen

Re: [PATCH] iommu/vt-d: fix race between free_irte() and get_irte()

2014-07-23 Thread Greg Edwards
On Wed, Jul 23, 2014 at 04:40:24PM +0200, Joerg Roedel wrote: > On Tue, Jul 22, 2014 at 08:27:19AM -0600, Greg Edwards wrote: >> get_irte() can race with free_irte() and dereference a NULL iommu >> pointer. > > Have you seen any real occurance of this race? Get_irte is called in the > set_affinity

Re: [PATCH] iommu/vt-d: fix race between free_irte() and get_irte()

2014-07-23 Thread Joerg Roedel
On Tue, Jul 22, 2014 at 08:27:19AM -0600, Greg Edwards wrote: > get_irte() can race with free_irte() and dereference a NULL iommu > pointer. Have you seen any real occurance of this race? Get_irte is called in the set_affinity path, how can that race with the irq being freed? Joerg

[PATCH] iommu/vt-d: fix race between free_irte() and get_irte()

2014-07-22 Thread Greg Edwards
get_irte() can race with free_irte() and dereference a NULL iommu pointer. Signed-off-by: Greg Edwards Cc: sta...@vger.kernel.org --- drivers/iommu/intel_irq_remapping.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/drivers/iommu/intel_irq_remapping.c b/drivers/iommu/intel_irq_remap