From: David Gibson <david@gibson.dropbear.id.au>
To: Tom Rini <trini@kernel.crashing.org>
Cc: Dan Malek <dan@embeddededge.com>,
Eugene Surovegin <ebs@innocent.com>,
linuxppc-embedded@lists.linuxppc.org
Subject: Re: [PATCH] pci_alloc_consistent in an interrupt context
Date: Sat, 15 Jun 2002 16:40:44 +1000 [thread overview]
Message-ID: <20020615064044.GG1124@zax> (raw)
In-Reply-To: <20020614145930.GI13541@opus.bloom.county>
On Fri, Jun 14, 2002 at 07:59:30AM -0700, Tom Rini wrote:
> > > > > My only concern is that are things still consistent on non consistent
> > > > > procs?
> > > >
> > > > Absolutely - no change to the code path at all on non cache coherent
> > > > processors.
> > >
> > > So kmalloc/kfree are equivilent to __get_free_pages/free_pages ?
> >
> > Read that again: on *non* cache coherent processors the code path is
> > the same. kmalloc() vs. __get_free_pages() is a problem for
> > processors which *are* cache coherent.
>
> Yes. And there's 2 things here which I'm wondering about:
> (a) Why do we call __get_fre_pages/free_pages now on coherent procs?
> Can we really just call something else and have it work?
Possibly not (though I'm not sure kmalloc() wouldn't work), which is
why my last patch reverted to using __get_free_pages()/free_pages().
But the only problem with kmalloc() is the page-alignment requirements
specified in DMA-mapping.txt, not the actual consistency/coherence.
> (b) Is it really a good idea to have a function called
> 'consistent_alloc()' which doesn't actually do that, for the sake of
> removing 2 ifdefs?
As paulus already pointer out, it *does* actually do that. Normal
memory is consistent on cache coherent processsors - that's what cache
coherent means.
--
David Gibson | For every complex problem there is a
david@gibson.dropbear.id.au | solution which is simple, neat and
| wrong. -- H.L. Mencken
http://www.ozlabs.org/people/dgibson
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2002-06-15 6:40 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-06-13 19:28 [PATCH] pci_alloc_consistent in an interrupt context Eugene Surovegin
2002-06-13 20:58 ` Tom Rini
2002-06-13 21:47 ` Dan Malek
2002-06-13 21:56 ` Tom Rini
2002-06-14 0:24 ` David Gibson
2002-06-14 0:38 ` Tom Rini
2002-06-14 0:45 ` David Gibson
2002-06-14 0:51 ` Tom Rini
2002-06-14 5:14 ` David Gibson
2002-06-14 14:59 ` Tom Rini
2002-06-15 6:40 ` David Gibson [this message]
2002-06-14 1:25 ` Eugene Surovegin
2002-06-14 1:33 ` David Gibson
2002-06-14 1:57 ` Eugene Surovegin
2002-06-14 2:06 ` David Gibson
2002-06-14 2:15 ` Tom Rini
2002-06-14 3:58 ` David Gibson
2002-06-14 4:42 ` Tom Rini
2002-06-14 2:08 ` Dan Malek
2002-06-14 1:57 ` Dan Malek
2002-06-13 22:23 ` Eugene Surovegin
2002-06-13 23:34 ` Paul Mackerras
2002-06-14 2:17 ` Dan Malek
2002-06-14 2:29 ` Eugene Surovegin
2002-06-13 23:37 ` Paul Mackerras
2002-06-14 2:15 ` Dan Malek
2002-06-14 2:21 ` Eugene Surovegin
2002-06-13 23:07 ` [PATCH] pci_alloc_consistent in an interrupt context, part 2 Eugene Surovegin
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=20020615064044.GG1124@zax \
--to=david@gibson.dropbear.id.au \
--cc=dan@embeddededge.com \
--cc=ebs@innocent.com \
--cc=linuxppc-embedded@lists.linuxppc.org \
--cc=trini@kernel.crashing.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.