Re: [Xen-ia64-devel] Compiling error: libxc

2007-03-22 Thread Rodrigo Lord

Hi Tristan!

I'm just a xen tester, not a programmer! :)
Can you get me more details?

Thanks!


2007/3/21, Tristan Gingold [EMAIL PROTECTED]:


On Tue, Mar 20, 2007 at 05:37:04PM -0300, Rodrigo Lord wrote:
 I don't know how to see the change-set in the ia64 version (in the x86,
I
 saw the archive Changelog)...

 I have installed the xen-ia64 some time ago, and it's ok... but now, I
 installed a new change-set and it doesn't work! (libxc problem) :(

 I tryied to install a patch to libxc, but it failed too...

 Any suggestion?
I hqve the same issue on my system (debian based).  It is a conflict
between a system header (elf.h IIRC) and a xen header.  Simply manually
edit the xen header to remove the error.

Tristan.

___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel

Re: [Xen-ia64-devel] [PATCH] Improve error message when HVM domain creation failed

2007-03-22 Thread Alex Williamson
On Wed, 2007-03-21 at 20:05 +0900, Masaki Kanno wrote:

 This patch changes the return value of the following functions 
 to -12(ENOMEM). Therefore the error message is changed to 
 Cannot allocate memory. 
 
  - vmx_final_setup_guest()
  - init_domain_tlb()
  - init_domain_vhpt()

   Applied.  Thanks,

Alex

-- 
Alex Williamson HP Open Source  Linux Org.


___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel


Re: [Xen-ia64-devel] Xen summit

2007-03-22 Thread Isaku Yamahata
On Thu, Mar 22, 2007 at 04:05:23PM -0600, Alex Williamson wrote:

Who's going to Xen Summit?  

I'm planning to go. 


 Should we try to carve out some time for
 a Xen/ia64 get together?  Thanks,

It would be valuable.

-- 
yamahata

___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel


RE: [Xen-ia64-devel] Xen summit

2007-03-22 Thread Xu, Anthony
Alex Williamson write on 2007年3月23日 6:05:
 Hi All,
 
Who's going to Xen Summit?  Should we try to carve out some time
 for a Xen/ia64 get together?  Thanks,
 
   Alex

I won't be there this time.

- Anthony

___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel


[Xen-ia64-devel] [PATCH] fix the ia64 p2m semantic

2007-03-22 Thread Isaku Yamahata
Make the semantic same as the x86 one.
So far the ia64 p2m has the semantic similar to
(the x86 p2m) + (page reference count).
But the differece from the x86 p2m have caused the breakage and work around.
This patch make the ia64 p2m semantic same as x86 to solve it.
- get_page() only for grant table page mapping and foreign domain page
  mapping.
- put_page() only for those pages.
- guest_physmap_remove_page() doesn't touch PGC_allocated bit.


I have to admit this patch is ugly.
There's much room for clean up, especially get_page() right before put_page().
But they aren't on performance critical path (memory exchange and
decrease reservation).
I'm rushing because I want to push this into 3.0.5.

Tsunehisa.
I haven't tested arch_memory_op(). Could you verify it?

-- 
yamahata

___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel


[Xen-ia64-devel] [PATCH] remove the ia64 p2m bug work around

2007-03-22 Thread Isaku Yamahata
The ia64 p2m semantic is now fixed. remove unnecessary work around patch.

-- 
yamahata
# HG changeset patch
# User [EMAIL PROTECTED]
# Date 1174568114 -32400
# Node ID eaeeefd8cddb55016ccd10e4d8b56db71963e67c
# Parent  d1bd4110c3b1406594ec3a638371f0e72568bf3f
The ia64 p2m semantic is now fixed. remove unnecessary work around patch.
PATCHNAME: remove_work_round

Signed-off-by: Isaku Yamahata [EMAIL PROTECTED]

diff -r d1bd4110c3b1 -r eaeeefd8cddb linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c
--- a/linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c	Fri Mar 23 11:29:36 2007 +0900
+++ b/linux-2.6-xen-sparse/arch/ia64/xen/hypervisor.c	Thu Mar 22 21:55:14 2007 +0900
@@ -205,18 +205,6 @@ static void contiguous_bitmap_clear(
 #define MAX_CONTIG_ORDER 7
 static unsigned long discontig_frames[1MAX_CONTIG_ORDER];
 
-/* Width of DMA addresses. 30 bits is a b44 limitation. */
-#define DEFAULT_DMA_BITS 30
-static unsigned int xen_ia64_dma_bits = DEFAULT_DMA_BITS;
-
-static int __init
-setup_dma_bits(char *str)
-{
-	xen_ia64_dma_bits = simple_strtoul(str, NULL, 0);
-	return 0;
-}
-__setup(xen_ia64_dma_bits=, setup_dma_bits);
-
 /* Ensure multi-page extents are contiguous in machine memory. */
 int
 __xen_create_contiguous_region(unsigned long vstart,
@@ -245,15 +233,6 @@ __xen_create_contiguous_region(unsigned 
 		 },
 		.nr_exchanged = 0
 	};
-
-	/*
-	 * XXX xen/ia64 vmm bug work around
-	 * the c/s 13366:ed73ff8440d8 of xen-unstable.hg revealed that
-	 * XENMEM_exchange has been broken on Xen/ia64.
-	 * This is work around for it until the right fix.
-	 */
-	if (address_bits  xen_ia64_dma_bits)
-		return -ENOSYS;
 
 	if (unlikely(order  MAX_CONTIG_ORDER))
 		return -ENOMEM;
___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel

Re: [Xen-ia64-devel] [PATCH] fix the ia64 p2m semantic

2007-03-22 Thread Isaku Yamahata
forgot to attach the patch.

On Fri, Mar 23, 2007 at 11:38:34AM +0900, Isaku Yamahata wrote:
 Make the semantic same as the x86 one.
 So far the ia64 p2m has the semantic similar to
 (the x86 p2m) + (page reference count).
 But the differece from the x86 p2m have caused the breakage and work around.
 This patch make the ia64 p2m semantic same as x86 to solve it.
 - get_page() only for grant table page mapping and foreign domain page
   mapping.
 - put_page() only for those pages.
 - guest_physmap_remove_page() doesn't touch PGC_allocated bit.
 
 
 I have to admit this patch is ugly.
 There's much room for clean up, especially get_page() right before put_page().
 But they aren't on performance critical path (memory exchange and
 decrease reservation).
 I'm rushing because I want to push this into 3.0.5.
 
 Tsunehisa.
 I haven't tested arch_memory_op(). Could you verify it?
 
 -- 
 yamahata
 
 ___
 Xen-ia64-devel mailing list
 Xen-ia64-devel@lists.xensource.com
 http://lists.xensource.com/xen-ia64-devel
 

-- 
yamahata
# HG changeset patch
# User [EMAIL PROTECTED]
# Date 1174616976 -32400
# Node ID d1bd4110c3b1406594ec3a638371f0e72568bf3f
# Parent  be1017157768e8d6d5d5552cf0008d81d611b1bb
Make the semantic same as the x86 one.
So far the ia64 p2m has the semantic similar to
(the x86 p2m) + (page reference count).
But the differece from the x86 p2m have caused the breakage and work around.
This patch make the ia64 p2m semantic same as x86 to solve it.
- get_page() only for grant table page mapping and foreign domain page
  mapping.
- put_page() only for those pages.
- guest_physmap_remove_page() doesn't touch PGC_allocated bit.
PATCHNAME: fix_p2m_semantic

Signed-off-by: Isaku Yamahata [EMAIL PROTECTED]

diff -r be1017157768 -r d1bd4110c3b1 xen/arch/ia64/xen/mm.c
--- a/xen/arch/ia64/xen/mm.c	Thu Mar 22 09:30:54 2007 -0600
+++ b/xen/arch/ia64/xen/mm.c	Fri Mar 23 11:29:36 2007 +0900
@@ -208,46 +208,6 @@ alloc_dom_xen_and_dom_io(void)
 BUG_ON(dom_io == NULL);
 }
 
-// heavily depends on the struct page_info layout.
-// if (page_get_owner(page) == d 
-// test_and_clear_bit(_PGC_allocated, page-count_info)) {
-// put_page(page);
-// }
-static void
-try_to_clear_PGC_allocate(struct domain* d, struct page_info* page)
-{
-u32 _d, _nd;
-u64 x, nx, y;
-
-_d = pickle_domptr(d);
-y = *((u64*)page-count_info);
-do {
-x = y;
-_nd = x  32;
-nx = x - 1;
-__clear_bit(_PGC_allocated, nx);
-
-if (unlikely(!(x  PGC_allocated)) || unlikely(_nd != _d)) {
-struct domain* nd = unpickle_domptr(_nd);
-if (nd == NULL) {
-gdprintk(XENLOG_INFO, gnttab_transfer: 
-Bad page %p: ed=%p(%u) 0x%x, 
-sd=%p 0x%x,
- caf=%016lx, taf=% PRtype_info \n,
-(void *) page_to_mfn(page),
-d, d-domain_id, _d,
-nd, _nd,
-x,
-page-u.inuse.type_info);
-}
-break;
-}
-
-BUG_ON((nx  PGC_count_mask)  1);
-y = cmpxchg((u64*)page-count_info, x, nx);
-} while (unlikely(y != x));
-}
-
 static void
 mm_teardown_pte(struct domain* d, volatile pte_t* pte, unsigned long offset)
 {
@@ -267,22 +227,25 @@ mm_teardown_pte(struct domain* d, volati
 if (!mfn_valid(mfn))
 return;
 page = mfn_to_page(mfn);
-// struct page_info corresponding to mfn may exist or not depending
-// on CONFIG_VIRTUAL_FRAME_TABLE.
-// This check is too easy.
-// The right way is to check whether this page is of io area or acpi pages
+// page might be pte page for p2m exposing. check it.
 if (page_get_owner(page) == NULL) {
 BUG_ON(page-count_info != 0);
 return;
 }
+// struct page_info corresponding to mfn may exist or not depending
+// on CONFIG_VIRTUAL_FRAME_TABLE.
+// The above check is too easy.
+// The right way is to check whether this page is of io area or acpi pages
 
 if (pte_pgc_allocated(old_pte)) {
 BUG_ON(page_get_owner(page) != d);
 BUG_ON(get_gpfn_from_mfn(mfn) == INVALID_M2P_ENTRY);
 set_gpfn_from_mfn(mfn, INVALID_M2P_ENTRY);
-try_to_clear_PGC_allocate(d, page);
-}
-put_page(page);
+if (test_and_clear_bit(_PGC_allocated, page-count_info))
+put_page(page);
+} else {
+put_page(page);
+}
 }
 
 static void
@@ -770,7 +733,6 @@ __assign_new_domain_page(struct domain *
 {
 struct page_info *p;
 unsigned long maddr;
-int ret;
 
 BUG_ON(!pte_none(*pte));
 
@@ -791,8 +753,6 @@ __assign_new_domain_page(struct domain *
maddr);
 }
 
-ret = get_page(p, d);
-BUG_ON(ret == 0);
 set_gpfn_from_mfn(page_to_mfn(p), mpaddr  PAGE_SHIFT);
 // clear_page() and set_gpfn_from_mfn() become visible before 

[Xen-ia64-devel] [Patch] Remove panic_domain()

2007-03-22 Thread Akio Takebe
Hi,

I found the bug of panic_domain().
When we compile xen with crash_debug=y, debugger_trap_immediate() and 
debugger_trap_fatal() is not nop.
So if xen call panic_domain() to crash guest,
xen call debugger routine, then hangup system.

domain_crash_synchronous() has __FILE__, __LINE__ macros.
So I remove panic_domain() and replace it with printk() and
domain_crash_synchronous() as x86 do.

I tested dom0/domU/domVTi boot/shutdown.

Signed-off-by: Akio Takebe [EMAIL PROTECTED]

Best Regards,

Akio Takebe

remove_panic_domain.patch
Description: Binary data
___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel

[Xen-ia64-devel] Xen/IA64 Healthiness Report -Cset#14513

2007-03-22 Thread Yang, Liuqing
Xen/IA64 Healthiness Report

Only the Two_SMPXenU_Coexist  case in this Cset have failed. But it passed in 
manual test. 

Testing Environment:

Platform: Tiger4
Processor: Itanium 2 Processor
Logic Processors number: 8 (2 processors with Due Core)
PAL version: 8.47
Service OS: RHEL4u3 IA64 SMP with 2 VCPUs
VTI Guest OS: RHEL4u2  RHEL4u3
XenU Guest OS: RHEL4u2
Xen IA64 Unstable tree: 14513:be1017157768
Xen Schedule: credit
VTI Guest Firmware Flash.fd.2006.12.01 MD5:
   09a224270416036a8b4e6f8496e97854

Summary Test Report:
-
  Total cases: 16
  Passed:    15
  Failed: 1

Case Name Status   Case Description
Four_SMPVTI_Coexist    pass   4 VTI (mem=256, vcpus=2)
Two_UP_VTI_Co pass   2 UP_VTI (mem=256)
One_UP_VTI    pass    1 UP_VTI (mem=256)
One_UP_XenU  pass    1 UP_xenU(mem=256)
SMPVTI_LTP    pass    VTI (vcpus=4, mem=512) run LTP
SMPVTI_and_SMPXenU   pass  1 VTI + 1 xenU (mem=256 vcpus=2)
Two_SMPXenU_Coexist    fail    2 xenU (mem=256, vcpus=2)
One_SMPVTI_4096M  pass  1 VTI (vcpus=2, mem=4096M)
SMPVTI_Network  pass  1 VTI (mem=256,vcpu=2) and 'ping'
SMPXenU_Network    pass  1 XenU (vcpus=2) and 'ping'
One_SMP_XenU  pass   1 SMP xenU (vcpus=2)
One_SMP_VTI    pass   1 SMP VTI (vcpus=2)
SMPVTI_Kernel_Build  pass  VTI (vcpus=4) and do Kernel Build
Four_SMPVTI_Coexist pass  4 VTI domains( mem=256, vcpu=2)
SMPVTI_Windows  pass  SMPVTI windows(vcpu=2)
SMPWin_SMPVTI_SMPxenU  pass  SMPVTI Linux/Windows  XenU
UPVTI_Kernel_Build   pass   1 UP VTI and do kernel build
Notes:
-
The last stable changeset:
-
14494:2216a45bf058

Best Regards
Liuqing



___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel