From: "Robert P. J. Day" <rpjday@mindspring.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: __get_free_pages: can GFP_DMA omit GFP_KERNEL and GFP_ATOMIC?
Date: Mon, 4 Jun 2007 15:07:27 -0400 (EDT) [thread overview]
Message-ID: <Pine.LNX.4.64.0706041504150.3644@localhost.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.64.0706041201210.24550@schroedinger.engr.sgi.com>
On Mon, 4 Jun 2007, Christoph Lameter wrote:
> On Mon, 4 Jun 2007, Robert P. J. Day wrote:
>
> > all right, then some of those __get_free_pages() calls would translate
> > to calls of the form __get_dma_pages(0, ...) -- is that what you're
> > saying? or would it be equivalent and preferable to put GFP_ATOMIC in
> > there just so it looks not so weird?
>
> Put GFP_ATOMIC in there so that it does not look weird.
>
> GFP_ATOMIC & ~__GFP_HIGH == GFP_NOWAIT
>
> So these should have GFP_NOWAIT as far as I can tell?
beats me. just FYI, it's not like this would be a massive change --
here's the entire collection of candidates for conversion over to
__get_dma_pages():
$ grep -r "get_free.*GFP_DMA" *
arch/s390/kernel/smp.c: __get_free_pages(GFP_KERNEL | GFP_DMA,
drivers/net/arm/ep93xx_eth.c: page = (void *)__get_free_page(GFP_KERNEL | GFP_DMA);
drivers/net/arm/ep93xx_eth.c: page = (void *)__get_free_page(GFP_KERNEL | GFP_DMA);
drivers/s390/net/qeth_main.c: ptr = (void *) __get_free_page(GFP_KERNEL|GFP_DMA);
drivers/s390/net/claw.c: (void *)__get_free_pages(__GFP_DMA,
drivers/s390/net/claw.c: (void *)__get_free_pages(__GFP_DMA,
drivers/s390/net/claw.c: p_buff=(void *)__get_free_pages(__GFP_DMA,
drivers/s390/net/claw.c: (void *)__get_free_pages(__GFP_DMA,
drivers/s390/net/claw.c: p_buff = (void *)__get_free_pages(__GFP_DMA,
drivers/s390/block/dasd.c: device->ccw_mem = (void *) __get_free_pages(GFP_ATOMIC | GFP_DMA, 1);
drivers/s390/char/tty3270.c: __get_free_pages(GFP_KERNEL|GFP_DMA, 0);
drivers/s390/char/sclp_cpi.c: sccb = (struct cpi_sccb *) __get_free_page(GFP_KERNEL | GFP_DMA);
drivers/s390/cio/cmf.c: mem = (void*)__get_free_pages(GFP_KERNEL | GFP_DMA,
lib/swiotlb.c: io_tlb_start = (char *)__get_free_pages(GFP_DMA | __GFP_NOWARN,
lib/swiotlb.c: io_tlb_overflow_buffer = (void *)__get_free_pages(GFP_DMA,
sound/oss/sscape.c: start_addr = (char *) __get_free_pages(GFP_ATOMIC|GFP_DMA, sz);
sound/oss/hal2.c: codec->buffer = (unsigned char *)__get_free_pages(GFP_KERNEL | GFP_DMA,
sound/oss/dmabuf.c: start_addr = (char *) __get_free_pages(GFP_ATOMIC|GFP_DMA|__GFP_NOWARN, sz);
and, obviously, it's not worth doing anything under sound/. so
we're not talking enormous cleanup or anything.
rday
--
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA
http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
prev parent reply other threads:[~2007-06-04 19:09 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-03 8:41 Robert P. J. Day
2007-06-04 18:45 ` Christoph Lameter
2007-06-04 18:53 ` Robert P. J. Day
2007-06-04 19:02 ` Christoph Lameter
2007-06-04 19:07 ` Robert P. J. Day [this message]
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=Pine.LNX.4.64.0706041504150.3644@localhost.localdomain \
--to=rpjday@mindspring.com \
--cc=clameter@sgi.com \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®