From: Jens Axboe <jens.axboe@oracle.com>
To: Andrea Arcangeli <andrea@qumranet.com>
Cc: Andrew Morton <akpm@osdl.org>, Yang Shi <yang.shi@windriver.com>,
linux-kernel@vger.kernel.org, kvm-devel@lists.sourceforge.net
Subject: Re: regression breaks lowmem reserved RAM
Date: Tue, 1 Apr 2008 14:45:54 +0200 [thread overview]
Message-ID: <20080401124553.GM12346@kernel.dk> (raw)
In-Reply-To: <20080401105331.GH12427@duo.random>
On Tue, Apr 01 2008, Andrea Arcangeli wrote:
> Looking a bit closer into this regression the reason this can't be
> right is that dma_addr common default is BLK_BOUNCE_HIGH and most
> machines have less than 4G. So if you do:
>
> if (b_pfn <= (min_t(u64, 0xffffffff, BLK_BOUNCE_HIGH) >> PAGE_SHIFT))
> dma = 1
>
> that will translate to:
>
> if (BLK_BOUNCE_HIGH <= BLK_BOUNCE_HIGH)
> dma = 1
>
> So for 99% of hardware this will trigger unnecessary GFP_DMA
> allocations and isa pooling operations.
>
> Also note how the 32bit code still does b_pfn < blk_max_low_pfn.
>
> I guess this is what you were looking after. I didn't verify but as
> far as I can tell, this will stop the regression with isa dma
> operations at boot for 99% of blkdev/memory combinations out there and
> I guess this fixes the setups with >4G of ram and 32bit pci cards as
> well (this also retains symmetry with the 32bit code).
>
> Signed-off-by: Andrea Arcangeli <andrea@qumranet.com>
Thanks Andrea, this looks much saner!
--
Jens Axboe
prev parent reply other threads:[~2008-04-01 12:46 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-28 19:49 regression breaks lowmem reserved RAM Andrea Arcangeli
2008-03-28 19:49 ` Andrea Arcangeli
2008-04-01 10:53 ` Andrea Arcangeli
2008-04-01 11:27 ` yshi
2008-04-01 11:27 ` yshi
2008-04-01 12:45 ` Jens Axboe [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=20080401124553.GM12346@kernel.dk \
--to=jens.axboe@oracle.com \
--cc=akpm@osdl.org \
--cc=andrea@qumranet.com \
--cc=kvm-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=yang.shi@windriver.com \
/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.