Re: [PATCH 9/9] x86/iommu: use dma_ops_list in get_dma_ops

From: Joerg Roedel
Date: Mon Sep 29 2008 - 05:29:35 EST


On Mon, Sep 29, 2008 at 12:25:49PM +0300, Muli Ben-Yehuda wrote:
> On Sun, Sep 28, 2008 at 08:44:24PM +0200, Joerg Roedel wrote:
>
> > Hmm, we should only call find_dma_ops_for_device() the first time a
> > dma api call is done (look into get_dma_ops). But I also thought
> > about how this lock can be avoided. In the real world it should not
> > be necessary because the dma_ops list is initialized before dma api
> > calls are done. But since there is now a register function which can
> > be called its safer this way. What do you think, are we still safe
> > enough without this lock?
>
> We could be, if we add a check to the register function that verifies
> it isn't being called after DMAs have started. Something like:
>
> in register:
>
> if (dma_started)
> yell loudly
>
> before PCI device initialization and after IOMMU initialization:
> dma_started = true

Good idea. I will change this in my patchset, thanks.

Joerg

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