[dm-devel] [PATCH] block: set the bounce_pfn to the actual DMA limit rather than to max memory

Malahal Naineni malahal at us.ibm.com
Fri Sep 24 19:20:59 UTC 2010


Jens Axboe [jaxboe at fusionio.com] wrote:
> > This patch also _fixed_ our problem. So we are fine with either patch,
> > but this patch is preferred as it enables more request merges. Also,
> > both patches maybe needed for some configurations.
> 
> Plus it doesn't needlessly bounce, that's the real problem you want to
> fix. I have applied this thread patch to for-2.6.37/core, thanks.

There is a shortcut check in blk_queue_bounce() that uses blk_max_pfn to
return without doing anything.  blk_max_pfn is not updated when we do
hot-plug memory add, so bounce buffers are NOT really used in our case
(thankfully)! 

Here is the code that may need some fix in future:

        if (!(q->limits.bounce_gfp & GFP_DMA)) {
		if (queue_bounce_pfn(q) >= blk_max_pfn)
			return;


Thank you so much for applying this patch.

Thanks, Malahal.




More information about the dm-devel mailing list