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] [PATCH] PoD: correct assertion and remove noisy messages

Sure. The patch is attached.
In addition, it removes noisy messages.
I don't think these messages are helpful.

Thanks,
Kouya

Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>

George Dunlap writes:
> You're right, that should be >=.  Can you make a patch, see if it
> fixes your problem, and if so send it to the list?
> 
> Thanks,
>  -George
> 
> On Fri, Dec 11, 2009 at 2:12 AM, Kouya Shimura <kouya@xxxxxxxxxxxxxx> wrote:
> > Hi George,
> >
> > Executing "xm mem-set" command twice for a guest causes
> > the assertion failure.
> >
> > (XEN) p2m_pod_set_cache_target: Unable to allocate domheap page for pod 
> > cache.  target 48183 cachesize 48050
> > (XEN) memory.c:128:d2 Could not allocate order=0 extent: id=2 memflags=0 
> > (321 of 512)
> > (XEN) memory.c:128:d2 Could not allocate order=0 extent: id=2 memflags=0 
> > (188 of 321)
> > (XEN) Assertion 'pod_target > p2md->pod.count' failed at p2m.c:526
> > (XEN) ----[ Xen-3.5-unstable  x86_64  debug=y  Tainted:    C ]----
> > (XEN) CPU:    1
> > (XEN) RIP:    e008:[<ffff82c4801bd7d4>] p2m_pod_set_mem_target+0x42/0x61
> > (XEN) RFLAGS: 0000000000010246   CONTEXT: hypervisor
> > (XEN) rax: 000000000000bc37   rbx: 0000000000000010   rcx: 000000000000bc37
> > (XEN) rdx: 000000000000bc37   rsi: 000000000001bab9   rdi: ffff830127cf2000
> > (XEN) rbp: ffff8301391efc68   rsp: ffff8301391efc68   r8:  000000000002017e
> > (XEN) r9:  00000000deadbeef   r10: ffff82c4802032d0   r11: 0000000000000282
> > (XEN) r12: 0000000046007bc0   r13: 00000000ffffffea   r14: 00000000ffffffda
> > (XEN) r15: 0000000046007bc0   cr0: 0000000080050033   cr4: 00000000000026f0
> > (XEN) cr3: 0000000129a43000   cr2: 0000000000a4e008
> > (XEN) ds: 0000   es: 0000   fs: 0063   gs: 0000   ss: e010   cs: e008
> > (XEN) Xen stack trace from rsp=ffff8301391efc68:
> > (XEN)    ffff8301391efcf8 ffff82c48015f095 ffff8301391efc88 ffff82c480134e07
> > (XEN)    0000000000030000 0000000000000000 0000000000000000 0000000000000000
> > (XEN)    0000000000000002 ffff82f602534860 ffff830127cf2000 ffff8300bf48a000
> > (XEN)    ffff82c480264080 ffff8300bf48a000 0000000000000010 0000000046007bc0
> > (XEN)    00000000ffffffda 0000000046007bc0 
> > ffff8301391eff08<G><2>memory.c:128:d2 Could not allocate order=0 extent: 
> > id=2 memflags=0 (0 of 512)
> > (XEN)  ffff82c480113b33
> > (XEN)    0000000000000002 00000059ef675add ffff8300bf326000 ffff82c480262080
> > (XEN)    ffff8301391efd38 ffff82c48016b41e ffff8301391efd48 ffff82c48016b4ed
> > (XEN)    ffff8301391efd68 ffff82c48011dc44 ffff8301391efda8 0000000000000001
> > (XEN)    ffff8301391efd88 ffff82c48011887e 0000000000000001 00000059ef675add
> > (XEN)    ffff8301391efdd8 0000000000000282 0000000000000001 ffff8301391efe50
> > (XEN)    ffff8301391efdf8 0000000000000000 ffff8300bf326000 0000000000000000
> > (XEN)    0000000000000001 ffff880001976560 ffff8301391efde8 ffff82c48011d181
> > (XEN)    ffff8301391efe08 ffff82c480149f07 ffff8301391be000 0000000000000004
> > (XEN)    ffff8301391efe18 ffff82c480149f86 ffff8301391efe48 ffff82c48010764c
> > (XEN)    0000000000000286 ffff8301391be000 0000000000000004 0000000000000000
> > (XEN)    ffff8301391efe68 ffff82c480107a26 ffffffffffffffda ffff8800bcc21c18
> > (XEN)    ffff8301391efe78 ffff82c48015b7f2 ffff8301391eff28 ffff8300bf48a000
> > (XEN)    0000000046007bc0 0000000000000009 ffff8301391eff08 ffff82c4801f1533
> > (XEN)    0000000000000000 0000000000000206 ffffffff810094d4 0000000000000100
> > (XEN)    00000039d18cebd7 000000000000e033 ffff8301391efee8 ffff8300bf48a000
> > (XEN) Xen call trace:
> > (XEN)    [<ffff82c4801bd7d4>] p2m_pod_set_mem_target+0x42/0x61
> > (XEN)    [<ffff82c48015f095>] arch_memory_op+0xc69/0xd34
> > (XEN)    [<ffff82c480113b33>] do_memory_op+0x1944/0x19a1
> > (XEN)    [<ffff82c4801ee1bf>] syscall_enter+0xef/0x149
> > (XEN)
> > (XEN)
> > (XEN) ****************************************
> > (XEN) Panic on CPU 1:
> > (XEN) Assertion 'pod_target > p2md->pod.count' failed at p2m.c:526
> > (XEN) ****************************************
> > (XEN)
> > (XEN) Reboot in five seconds...
> >
> > I'm not sure but this assertion should be
> > ASSERT(pod_target >= p2md->pod.count) ?
> > Since pod.entry_count == pod.count at that time.
> >
> > Thanks,
> > Kouya
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxxxxxxxx
> > http://lists.xensource.com/xen-devel
> >
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

diff -r b928797213ac xen/arch/x86/mm/p2m.c
--- a/xen/arch/x86/mm/p2m.c     Fri Dec 11 09:17:09 2009 +0000
+++ b/xen/arch/x86/mm/p2m.c     Mon Dec 14 14:55:00 2009 +0900
@@ -338,7 +338,6 @@ static struct page_info * p2m_pod_cache_
 
         /* Break up a superpage to make single pages. NB count doesn't
          * need to be adjusted. */
-        printk("%s: Breaking up superpage.\n", __func__);
         p = page_list_remove_head(&p2md->pod.super);
         mfn = mfn_x(page_to_mfn(p));
 
@@ -529,7 +528,7 @@ p2m_pod_set_mem_target(struct domain *d,
     if ( pod_target > p2md->pod.entry_count )
         pod_target = p2md->pod.entry_count;
 
-    ASSERT( pod_target > p2md->pod.count );
+    ASSERT( pod_target >= p2md->pod.count );
 
     ret = p2m_pod_set_cache_target(d, pod_target);
 
@@ -695,7 +694,6 @@ out_entry_check:
     /* If we've reduced our "liabilities" beyond our "assets", free some */
     if ( p2md->pod.entry_count < p2md->pod.count )
     {
-        printk("b %d\n", p2md->pod.entry_count);
         p2m_pod_set_cache_target(d, p2md->pod.entry_count);
     }
 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>