From: Tomasz Figa <tomasz.figa@gmail.com>
To: linux-arm-kernel@lists.infradead.org
Cc: Tony Prisk <linux@prisktech.co.nz>, Arnd Bergmann <arnd@arndb.de>,
linux-mm@kvack.org, mgorman@suse.de, m.szyprowski@samsung.com
Subject: Re: dma_alloc_coherent fails in framebuffer
Date: Mon, 15 Oct 2012 08:42:20 +0200 [thread overview]
Message-ID: <1822826.6oRYLvbneG@flatron> (raw)
In-Reply-To: <1350253591.13440.1.camel@gitbox>
Hi Tony,
On Monday 15 of October 2012 11:26:31 Tony Prisk wrote:
> On Mon, 2012-10-15 at 09:34 +1300, Tony Prisk wrote:
> > On Sun, 2012-10-14 at 18:28 +1300, Tony Prisk wrote:
> > > Up until 07 Oct, drivers/video/wm8505-fb.c was working fine, but on
> > > the
> > > 11 Oct when I did another pull from linus all of a sudden
> > > dma_alloc_coherent is failing to allocate the framebuffer any
> > > longer.
> > >
> > > I did a quick look back and found this:
> > >
> > > ARM: add coherent dma ops
> > >
> > > arch_is_coherent is problematic as it is a global symbol. This
> > > doesn't work for multi-platform kernels or platforms which can
> > > support
> > > per device coherent DMA.
> > >
> > > This adds arm_coherent_dma_ops to be used for devices which
> > > connected
> > > coherently (i.e. to the ACP port on Cortex-A9 or A15). The
> > > arm_dma_ops
> > > are modified at boot when arch_is_coherent is true.
> > >
> > > Signed-off-by: Rob Herring <rob.herring@calxeda.com>
> > > Cc: Russell King <linux@arm.linux.org.uk>
> > > Cc: Marek Szyprowski <m.szyprowski@samsung.com>
> > > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> > >
> > >
> > > This is the only patch lately that I could find (not that I would
> > > claim
> > > to be any good at finding things) that is related to the problem.
> > > Could
> > > it have caused the allocations to fail?
> > >
> > > Regards
> > > Tony P
> >
> > Have done a bit more digging and found the cause - not Rob's patch so
> > apologies.
> >
> > The cause of the regression is this patch:
> >
> > From f40d1e42bb988d2a26e8e111ea4c4c7bac819b7e Mon Sep 17 00:00:00 2001
> > From: Mel Gorman <mgorman@suse.de>
> > Date: Mon, 8 Oct 2012 16:32:36 -0700
> > Subject: [PATCH 2/3] mm: compaction: acquire the zone->lock as late as
> >
> > possible
> >
> > Up until then, the framebuffer allocation with dma_alloc_coherent(...)
> > was fine. From this patch onwards, allocations fail.
> >
> > I don't know how this patch would effect CMA allocations, but it seems
> > to be causing the issue (or at least, it's caused an error in
> > arch-vt8500 to become visible).
> >
> > Perhaps someone who understand -mm could explain the best way to
> > troubleshoot the cause of this problem?
> >
> >
> > Regards
> > Tony P
> >
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > linux-arm-kernel@lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
> Have done a bit more testing..
>
> Disabling Memory Compaction makes no difference.
> Disabling CMA fixes/hides the problem. ?!?!?!
Could you post your kernel log when it isn't working?
Do you have the default CMA reserved pool in Kconfig set big enough to
serve this allocation?
I'm not sure what kind of allocation this framebuffer driver does, but if
it needs to allocate memory from atomic context then possibly this patch
series has something to do with it:
http://thread.gmane.org/gmane.linux.ports.arm.kernel/182697/focus=182699
CC'ing Marek Szyprowski <m.szyprowski@samsung.com>
Best regards,
Tomasz Figa
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2012-10-15 6:42 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1350192523.10946.4.camel@gitbox>
2012-10-14 20:34 ` dma_alloc_coherent fails in framebuffer Tony Prisk
2012-10-14 22:26 ` Tony Prisk
2012-10-15 6:42 ` Tomasz Figa [this message]
2012-10-15 8:03 ` Tony Prisk
2012-10-15 13:35 ` Marek Szyprowski
2012-10-15 9:45 ` Mel Gorman
2012-10-15 18:28 ` Tony Prisk
2012-10-16 2:17 ` Bob Liu
2012-10-16 5:02 ` Tony Prisk
2012-10-16 5:54 ` Tony Prisk
2012-10-16 6:50 ` Tony Prisk
2012-10-16 7:58 ` Mel Gorman
2012-10-16 8:13 ` Tony Prisk
2012-10-16 14:41 ` James Bottomley
2012-10-17 2:26 ` Bob Liu
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=1822826.6oRYLvbneG@flatron \
--to=tomasz.figa@gmail.com \
--cc=arnd@arndb.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-mm@kvack.org \
--cc=linux@prisktech.co.nz \
--cc=m.szyprowski@samsung.com \
--cc=mgorman@suse.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).