[PATCH 1/2] drm/ttm: Implement and export ttm_dma_page_alloc_enabled

Thomas Hellstrom thellstrom at vmware.com
Mon Jan 28 13:29:04 UTC 2019


Hi,

On Mon, 2019-01-28 at 12:21 +0000, Koenig, Christian wrote:
> Am 25.01.19 um 14:05 schrieb Thomas Hellstrom:
> > The vmwgfx driver needs to know whether the dma page pool is
> > enabled
> > to determine whether to refuse loading if the dma mode logic
> > requests coherent memory from the dma page pool.
> > 
> > Cc: "Koenig, Christian" <Christian.Koenig at amd.com>
> > Signed-off-by: Thomas Hellstrom <thellstrom at vmware.com>
> > ---
> >   drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 11 +++++++++++
> >   include/drm/ttm/ttm_page_alloc.h         |  4 ++++
> >   2 files changed, 15 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> > b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> > index d594f7520b7b..adf8cc189ecc 100644
> > --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> > +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> > @@ -1235,4 +1235,15 @@ int ttm_dma_page_alloc_debugfs(struct
> > seq_file *m, void *data)
> >   }
> >   EXPORT_SYMBOL_GPL(ttm_dma_page_alloc_debugfs);
> >   
> > +/**
> > + * ttm_dma_page_alloc_enabled - Is the dma page pool enabled?
> > + *
> > + * Returns true if the dma page pool is enabled. false otherwise.
> > + */
> > +bool ttm_dma_page_alloc_enabled(void)
> > +{
> > +	return !!_manager;
> > +}
> > +EXPORT_SYMBOL(ttm_dma_page_alloc_enabled);
> > +
> 
> This is completely superfluous cause the manager is enabled as soon
> as 
> it is compiled in.
> 
> You could just use "#if defined(CONFIG_SWIOTLB) || 
> defined(CONFIG_INTEL_IOMMU)" instead.
> 
> Christian.
> 

Yes, that's what was done before in vmgwfx, but it's very fragile and
based on assumptions about what various parts of TTM does and doesn't
do. Chances are somebody would modify the enablement and forget to
modify this function. 

But of course I can change it if you think that'd be better.

/Thomas



More information about the dri-devel mailing list