WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] dom0 boot failure: dma_reserve in reserve_bootmem_generic()

To: "Xen-devel@xxxxxxxxxxxxxxxxxxx" <Xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] dom0 boot failure: dma_reserve in reserve_bootmem_generic()
From: Mukesh Rathor <mukesh.rathor@xxxxxxxxxx>
Date: Fri, 25 Jun 2010 18:40:46 -0700
Cc:
Delivery-date: Fri, 25 Jun 2010 18:42:18 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Oracle Corporation
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi,

I've been debugging an interesting dom0 boot failure which happens
only on certain machines when dom0_mem=830M. A scsi driver fails to 
allocate 512 bytes in GFP_DMA. However, the system boots with 500M or
930M.  The root cause:

reserve_bootmem_generic():
....
        if (phys+len <= MAX_DMA_PFN*PAGE_SIZE)
                dma_reserve += len / PAGE_SIZE;      <---


In case of 830M, phys+len is just enough to set dma_reserve where
the dma memory zone is then 'holed' out. With less dom0_mem, it
leaves few pages for GFP_DMA. With more, phys+len is larger than 
MAX_DMA_PFN*PAGE_SIZE and it skips setting dma_reserve so DMA cache is
good again.

So, anyone know the point of setting dma_reserve? Obviously, things 
are implied OK without it, so would it be safe to just remove the
if stmt completely?

thanks a lot,
Mukesh


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>