All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Galbraith <efault-Mmb7MZpHnFY@public.gmane.org>
To: nouveau <nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
Cc: Christian Koenig <christian.koenig-5C7GfCeVMHo@public.gmane.org>,
	Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>,
	Roger He <Hongbo.He-5C7GfCeVMHo@public.gmane.org>,
	LKML <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Ben Skeggs <bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Subject: Re: kernel spew from nouveau/ swiotlb
Date: Fri, 11 May 2018 09:13:50 +0200	[thread overview]
Message-ID: <1526022830.6288.3.camel@gmx.de> (raw)
In-Reply-To: <1525948096.29445.4.camel-Mmb7MZpHnFY@public.gmane.org>

On Thu, 2018-05-10 at 12:28 +0200, Mike Galbraith wrote:
> On Thu, 2018-05-10 at 11:10 +0200, Mike Galbraith wrote:
> > Greetings,
> > 
> > When box is earning its keep, nouveau/swiotlb grumble.. a LOT.  The
> > below is from master.today.
> > 
> > [12594.640959] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.693000] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.713787] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.743413] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.796740] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12607.000774] swiotlb_tbl_map_single: 54 callbacks suppressed
> > [12607.000776] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12607.347941] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12608.677038] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > homer:/novell/ssh # dmesg|grep 'swiotlb buffer is full'|wc -l
> > 2052
> > homer:/novell/ssh # dmesg|grep 'callbacks suppressed'|wc -l
> > 171
> > 
> > lib/swiotlb.c:
> >  573 not_found:
> >  574         spin_unlock_irqrestore(&io_tlb_lock, flags);
> >  575         if (!(attrs & DMA_ATTR_NO_WARN) && printk_ratelimit())
> >  576                 dev_warn(hwdev, "swiotlb buffer is full (sz: %zd bytes)\n", size);
> > 
> > Does nouveau perhaps want one of those DMA_ATTR_NO_WARN thingies?
> 
> Or should ttm perhaps always use the one on hand?  (seems to work)

No it didn't, I just didn't wait long enough for spew to start...

> ---
>  drivers/gpu/drm/ttm/ttm_page_alloc_dma.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> @@ -342,7 +342,7 @@ static struct dma_page *__ttm_dma_alloc_
>  	if (!d_page)
>  		return NULL;
>  
> -	if (pool->type & IS_HUGE)
> +	if (1 || pool->type & IS_HUGE)
>  		attrs = DMA_ATTR_NO_WARN;
>  
>  	vaddr = dma_alloc_attrs(pool->dev, pool->size, &d_page->dma,

While IS_HUGE is indeed false on my box, it just doesn't matter,
because when we get to either the old or the new alloc(), it calls
swiotlb_alloc_buffer(), which drops attrs passed to it on the floor,
making it unlikely that alloc() caller wishes are granted.

	-Mike
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

WARNING: multiple messages have this Message-ID (diff)
From: Mike Galbraith <efault@gmx.de>
To: nouveau <nouveau@lists.freedesktop.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Ben Skeggs <bskeggs@redhat.com>,
	Christian Koenig <christian.koenig@amd.com>,
	Roger He <Hongbo.He@amd.com>, Christoph Hellwig <hch@lst.de>
Subject: Re: kernel spew from nouveau/ swiotlb
Date: Fri, 11 May 2018 09:13:50 +0200	[thread overview]
Message-ID: <1526022830.6288.3.camel@gmx.de> (raw)
In-Reply-To: <1525948096.29445.4.camel@gmx.de>

On Thu, 2018-05-10 at 12:28 +0200, Mike Galbraith wrote:
> On Thu, 2018-05-10 at 11:10 +0200, Mike Galbraith wrote:
> > Greetings,
> > 
> > When box is earning its keep, nouveau/swiotlb grumble.. a LOT.  The
> > below is from master.today.
> > 
> > [12594.640959] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.693000] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.713787] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.743413] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12594.796740] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12607.000774] swiotlb_tbl_map_single: 54 callbacks suppressed
> > [12607.000776] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12607.347941] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > [12608.677038] nouveau 0000:01:00.0: swiotlb buffer is full (sz: 2097152 bytes)
> > homer:/novell/ssh # dmesg|grep 'swiotlb buffer is full'|wc -l
> > 2052
> > homer:/novell/ssh # dmesg|grep 'callbacks suppressed'|wc -l
> > 171
> > 
> > lib/swiotlb.c:
> >  573 not_found:
> >  574         spin_unlock_irqrestore(&io_tlb_lock, flags);
> >  575         if (!(attrs & DMA_ATTR_NO_WARN) && printk_ratelimit())
> >  576                 dev_warn(hwdev, "swiotlb buffer is full (sz: %zd bytes)\n", size);
> > 
> > Does nouveau perhaps want one of those DMA_ATTR_NO_WARN thingies?
> 
> Or should ttm perhaps always use the one on hand?  (seems to work)

No it didn't, I just didn't wait long enough for spew to start...

> ---
>  drivers/gpu/drm/ttm/ttm_page_alloc_dma.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
> @@ -342,7 +342,7 @@ static struct dma_page *__ttm_dma_alloc_
>  	if (!d_page)
>  		return NULL;
>  
> -	if (pool->type & IS_HUGE)
> +	if (1 || pool->type & IS_HUGE)
>  		attrs = DMA_ATTR_NO_WARN;
>  
>  	vaddr = dma_alloc_attrs(pool->dev, pool->size, &d_page->dma,

While IS_HUGE is indeed false on my box, it just doesn't matter,
because when we get to either the old or the new alloc(), it calls
swiotlb_alloc_buffer(), which drops attrs passed to it on the floor,
making it unlikely that alloc() caller wishes are granted.

	-Mike

  parent reply	other threads:[~2018-05-11  7:13 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-10  9:10 kernel spew from nouveau/ swiotlb Mike Galbraith
2018-05-10  9:10 ` Mike Galbraith
     [not found] ` <1525943427.8013.11.camel-Mmb7MZpHnFY@public.gmane.org>
2018-05-10 10:28   ` Mike Galbraith
2018-05-10 10:28     ` Mike Galbraith
     [not found]     ` <1525948096.29445.4.camel-Mmb7MZpHnFY@public.gmane.org>
2018-05-11  7:13       ` Mike Galbraith [this message]
2018-05-11  7:13         ` Mike Galbraith
     [not found]         ` <1526022830.6288.3.camel-Mmb7MZpHnFY@public.gmane.org>
2018-05-11 15:15           ` [patch] swiotlb: fix ignored DMA_ATTR_NO_WARN request Mike Galbraith
2018-05-11 15:15             ` Mike Galbraith
     [not found]             ` <1526051730.23162.3.camel-Mmb7MZpHnFY@public.gmane.org>
2018-05-12  7:11               ` Mike Galbraith
2018-05-12  7:11                 ` Mike Galbraith
2018-05-10 14:31   ` kernel spew from nouveau/ swiotlb Jerome Glisse
2018-05-10 14:31     ` [Nouveau] " Jerome Glisse
     [not found]     ` <474293973.18773550.1525962696189.JavaMail.zimbra-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2018-05-10 15:31       ` Mike Galbraith
2018-05-10 15:31         ` [Nouveau] " Mike Galbraith
2018-05-10 16:30         ` Mike Galbraith

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1526022830.6288.3.camel@gmx.de \
    --to=efault-mmb7mzphnfy@public.gmane.org \
    --cc=Hongbo.He-5C7GfCeVMHo@public.gmane.org \
    --cc=bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=christian.koenig-5C7GfCeVMHo@public.gmane.org \
    --cc=hch-jcswGhMUV9g@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.