From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: Load increase after memory upgrade (part2) Date: Fri, 17 Feb 2012 10:07:59 -0500 Message-ID: <20120217150759.GA29554@phenom.dumpdata.com> References: <20120215192804.GA21695@phenom.dumpdata.com> <4F3CD2E502000078000735E4@nat28.tlf.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <4F3CD2E502000078000735E4@nat28.tlf.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Jan Beulich Cc: Konrad Rzeszutek Wilk , xen-devel , Carsten Schiers , Sander Eikelenboom List-Id: xen-devel@lists.xenproject.org On Thu, Feb 16, 2012 at 08:56:53AM +0000, Jan Beulich wrote: > >>> On 15.02.12 at 20:28, Konrad Rzeszutek Wilk wrote: > >@@ -1550,7 +1552,11 @@ static void *__vmalloc_area_node(struct vm_struct *area, gfp_t gfp_mask, > > struct page **pages; > > unsigned int nr_pages, array_size, i; > > gfp_t nested_gfp = (gfp_mask & GFP_RECLAIM_MASK) | __GFP_ZERO; > >- > >+ gfp_t dma_mask = gfp_mask & (__GFP_DMA | __GFP_DMA32); > >+ if (xen_pv_domain()) { > >+ if (dma_mask == (__GFP_DMA | __GFP_DMA32)) > > I didn't spot where you force this normally invalid combination, without > which the change won't affect vmalloc32() in a 32-bit kernel. > > >+ gfp_mask &= (__GFP_DMA | __GFP_DMA32); > > gfp_mask &= ~(__GFP_DMA | __GFP_DMA32); > > Jan Duh! Good eyes. Thanks for catching that. > > >+ } > > nr_pages = (area->size - PAGE_SIZE) >> PAGE_SHIFT; > > array_size = (nr_pages * sizeof(struct page *)); > > >