Re: [Xen-ia64-devel] [Patch][RFC] buildconfigs of supportingSPARSEMEM

2007-02-01 Thread Akio Takebe
Hi, Alex and Isaku

I'm trying to fix the warning caused by setting SPARSEMEM. 

In the case of x86 code, the following check is used instead of pfn_valid().

static inline unsigned long mfn_to_local_pfn(unsigned long mfn)
{
unsigned long pfn = mfn_to_pfn(mfn);
if ((pfn  end_pfn)
 !xen_feature(XENFEAT_auto_translated_physmap)
 (phys_to_machine_mapping[pfn] != mfn))
return end_pfn; /* force !pfn_valid() */
return pfn;
}

mfn_to_local_pfn() is called only by in_swiotlb_aperture().
in_swiotlb_aperture() check pfn_valid(),
so I fix by the following way, what do you think?

diff -r ef646312685f linux-2.6-xen-sparse/include/asm-ia64/maddr.h
--- a/linux-2.6-xen-sparse/include/asm-ia64/maddr.h Wed Jan 31 10:59:56 
2007 -0700
+++ b/linux-2.6-xen-sparse/include/asm-ia64/maddr.h Fri Feb 02 01:08:01 
2007 +0900
@@ -69,8 +69,11 @@ mfn_to_local_pfn(unsigned long mfn)
 mfn_to_local_pfn(unsigned long mfn)
 {
unsigned long pfn = mfn_to_pfn_for_dma(mfn);
+#ifndef CONFIG_SPARSEMEM
if (!pfn_valid(pfn))
return INVALID_P2M_ENTRY;
+#endif
+/* we should pfn_valid() in caller function if SARSEMEM. */
return pfn;
 }
 

Best Regards,

Akio Takeeb

Hi Akio,

   These end with a build error for me, so I think they should be
cleaned up before this goes in the tree.  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


[Xen-ia64-devel] [Patch] fix compile warning of xenentry.S

2007-02-01 Thread Akio Takebe
Hi,

This patch fix the following compile warnig with srlz.d.

/linux-2.6.18-xen/arch/ia64/xen/xenentry.S: Assembler messages:
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:130: Warning: Use of 'st4' violates 
RAW dependency 'DTC' (data)
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:130: Warning: Only the first path 
encountering the conflict is reported
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:125: Warning: This is the location 
of the conflicting usage
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:130: Warning: Use of 'st4' violates 
RAW dependency 'DTR' (data)
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:130: Warning: Only the first path 
encountering the conflict is reported
/linux-2.6.18-xen/arch/ia64/xen/xenentry.S:125: Warning: This is the location 
of the conflicting usage

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

Best Regards,

Akio Takebe

cleanup_xenentry_S.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] XenU will crash Xen in CSet # 13773.

2007-02-01 Thread You, Yongkang
Hi all,

In latest Changeset 13773, if creating XenU, Xen0 would crash and hang.
The hang happened when XenU try to bring up its network.

The serial console log is attached.

BTW. VTI domain creation also meets a little issue, which is brought from 
xen-unstable. If try to create VTI domain with sdl=1, VTI window won't popup. 
Edwin has sent a patch to xen-devel to fix it. The simple workaround is to use 
vnc to create VTI domain.

No detailed testing report today. 

Best Regards,
Yongkang (Kangkang) 永康


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

[Xen-ia64-devel] Re: [PATCH] new domain builder setup hook clean up (was Re: [Xen-devel] [PATCH] new domain builder fix to boot domU on IA64.)

2007-02-01 Thread Isaku Yamahata
On Thu, Feb 01, 2007 at 08:59:33AM +0100, Gerd Hoffmann wrote:
 Hmm, bootearly() is called twice now, I guess the first call in
 mem_init() should have been removed?  Otherwise the patch looks fine to me.

Yes. Thanks for pointing out.
Attaced updated one.

-- 
yamahata
# HG changeset patch
# User [EMAIL PROTECTED]
# Date 1170329925 -32400
# Node ID 72fa33b455d1058f15caabab1aafe6ea27fcdb43
# Parent  3751a96ba0217690b4f1fedc577ed4d45a7b456e
new domain builder arch_setup hook clean up.
arch_setup_early  - arch_setup_meminit
arch_setup_middle - arch_setup_bootearly
arch_setup_late   - arch_setup_bootlate
PATCHNAME: new_domain_builder_cleanup

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

diff -r 3751a96ba021 -r 72fa33b455d1 tools/libxc/xc_dom_boot.c
--- a/tools/libxc/xc_dom_boot.c	Thu Feb 01 11:50:48 2007 +0900
+++ b/tools/libxc/xc_dom_boot.c	Thu Feb 01 20:38:45 2007 +0900
@@ -144,7 +144,7 @@ static int x86_shadow(int xc, domid_t do
 return rc;
 }
 
-static int arch_setup_early(struct xc_dom_image *dom)
+static int arch_setup_meminit(struct xc_dom_image *dom)
 {
 int rc = 0;
 
@@ -157,13 +157,13 @@ static int arch_setup_early(struct xc_do
 return rc;
 }
 
-static int arch_setup_middle(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_late(struct xc_dom_image *dom)
+static int arch_setup_bootearly(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootlate(struct xc_dom_image *dom)
 {
 static const struct {
 	char *guest;
@@ -263,13 +263,13 @@ static int arch_setup_late(struct xc_dom
 
 #elif defined(__ia64__)
 
-static int arch_setup_early(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_middle(struct xc_dom_image *dom)
+static int arch_setup_meminit(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootearly(struct xc_dom_image *dom)
 {
 DECLARE_DOMCTL;
 int rc;
@@ -281,10 +281,6 @@ static int arch_setup_middle(struct xc_d
 domctl.domain = dom-guest_domid;
 domctl.u.arch_setup.flags = 0;
 
-/* dom-start_info_pfn should be initialized by alloc_magic_pages().
- * However it is called later. So we initialize here.
- */
-dom-start_info_pfn = dom-total_pages - 3;
 domctl.u.arch_setup.bp = (dom-start_info_pfn  PAGE_SHIFT)
 	+ sizeof(start_info_t);
 /* 3 = start info page, xenstore page and console page */
@@ -293,7 +289,7 @@ static int arch_setup_middle(struct xc_d
 return rc;
 }
 
-static int arch_setup_late(struct xc_dom_image *dom)
+static int arch_setup_bootlate(struct xc_dom_image *dom)
 {
 unsigned int page_size = XC_DOM_PAGE_SIZE(dom);
 shared_info_t *shared_info;
@@ -317,19 +313,19 @@ static int arch_setup_late(struct xc_dom
 
 #elif defined(__powerpc64__)
 
-static int arch_setup_early(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_middle(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_late(struct xc_dom_image *dom)
+static int arch_setup_meminit(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootearly(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootlate(struct xc_dom_image *dom)
 {
 start_info_t *si =
 	xc_dom_pfn_to_ptr(dom, dom-start_info_pfn, 1);
@@ -355,19 +351,19 @@ static int arch_setup_late(struct xc_dom
 
 #else
 
-static int arch_setup_early(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_middle(struct xc_dom_image *dom)
-{
-xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
-return 0;
-}
-
-static int arch_setup_late(struct xc_dom_image *dom)
+static int arch_setup_meminit(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootearly(struct xc_dom_image *dom)
+{
+xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int arch_setup_bootlate(struct xc_dom_image *dom)
 {
 xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
 return 0;
@@ -423,7 +419,7 @@ int xc_dom_boot_mem_init(struct xc_dom_i
 
 xc_dom_printf(%s: called\n, __FUNCTION__);
 
-if (0 != (rc = arch_setup_early(dom)))
+if (0 != (rc = arch_setup_meminit(dom)))
 	return rc;
 
 /* allocate guest memory */
@@ -438,9 +434,6 @@ int xc_dom_boot_mem_init(struct xc_dom_i
 	return rc;
 }
 
-if (0 != (rc = arch_setup_middle(dom)))
-return rc;
-
 return 0;
 }
 
@@ -497,6 +490,10 @@ int xc_dom_boot_image(struct xc_dom_imag
 
 

Re: [Xen-ia64-devel] [Patch][RFC] buildconfigs of supportingSPARSEMEM

2007-02-01 Thread Isaku Yamahata
On Thu, Feb 01, 2007 at 05:04:33PM +0900, Akio Takebe wrote:
 mfn_to_local_pfn() is called only by in_swiotlb_aperture().
 in_swiotlb_aperture() check pfn_valid(),
 so I fix by the following way, what do you think?

It seems caller's responsibility to check by pfn_valid().
So simple return mfn_to_pfn_for_dma(mfn) is ok instead of
#ifndef CONFIG_SPARSEMEM.
Adding comment is good thing.

 diff -r ef646312685f linux-2.6-xen-sparse/include/asm-ia64/maddr.h
 --- a/linux-2.6-xen-sparse/include/asm-ia64/maddr.h Wed Jan 31 10:59:56 
 2007 -0700
 +++ b/linux-2.6-xen-sparse/include/asm-ia64/maddr.h Fri Feb 02 01:08:01 
 2007 +0900
 @@ -69,8 +69,11 @@ mfn_to_local_pfn(unsigned long mfn)
  mfn_to_local_pfn(unsigned long mfn)
  {
 unsigned long pfn = mfn_to_pfn_for_dma(mfn);
 +#ifndef CONFIG_SPARSEMEM
 if (!pfn_valid(pfn))
 return INVALID_P2M_ENTRY;
 +#endif
 +/* we should pfn_valid() in caller function if SARSEMEM. */
 return pfn;
  }

-- 
yamahata

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


Re: [Xen-ia64-devel] [Patch][RFC] buildconfigs of supportingSPARSEMEM

2007-02-01 Thread Akio Takebe
Hi, Isaku

On Thu, Feb 01, 2007 at 05:04:33PM +0900, Akio Takebe wrote:
 mfn_to_local_pfn() is called only by in_swiotlb_aperture().
 in_swiotlb_aperture() check pfn_valid(),
 so I fix by the following way, what do you think?

It seems caller's responsibility to check by pfn_valid().
So simple return mfn_to_pfn_for_dma(mfn) is ok instead of
#ifndef CONFIG_SPARSEMEM.
Adding comment is good thing.

Thank you for your comments.
I'll update it soon.

Best Regards,

Akio Takebe


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


Re: [Xen-ia64-devel] XenU will crash Xen in CSet # 13773.

2007-02-01 Thread Isaku Yamahata
On Thu, Feb 01, 2007 at 05:48:33PM +0800, You, Yongkang wrote:
 In latest Changeset 13773, if creating XenU, Xen0 would crash and hang.
 The hang happened when XenU try to bring up its network.

At least domU network works for me.
Looking the panic log, the issue looks similar which I was seeing
before c/s 13773:ef646312685f.
Given that c/s 13773 resoved my issue, could you make sure your
build environment?

- linux-2.6.18-xen/drivers/xen/core/skbuff.c must not exist.
- the following three configs shouldn't exist in linux dot config
  CONFIG_HAVE_ARCH_ALLOC_SKB=y
  CONFIG_HAVE_ARCH_DEV_ALLOC_SKB=y
  CONFIG_XEN_SKBUFF=y

Alghough you might have checked those already or you might have built
from scratch, please check it again.
-- 
yamahata

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


[Xen-ia64-devel] [PATCH][RFC] embed memory map in domain pseudo physical address space

2007-02-01 Thread Isaku Yamahata
Hi all.

Xen/IA64 XEN_DOMCTL_arch_setup hypercall needs flexibilty
to address the following issues.
- xm dump-core. (save/restore would use in near future)
  Now I'm trying to enhance xm dump-core for IA64.
  Such utilities need to know the area where memory is populated.
  Currently domU populates memory dense, but this wouldn't be
  true in future.
  Especially VTi domain builder populate memory spasely so that
  xm dump-core doesn't work for domVTi.
- sparse populated domU for driver domain or other purose(e.g. NUMA)
  The domain builder needs flexibility to populate memory sparsely.

This patch 
- creates memory map as efi runtime data in domain pseudo
  physical space, 
- adds new member, memmap_info_pfn, to struct arch_shared_info
- set memmap_info_pfn to point memory map
- modifies XEN_DOMCTL_arch_setup so that it create EFI memory descriptor
  following the specified memory map.
  It abuses xen_ia64_boot_param to pass memory map.

NOTE: This patch depends the patches which I posted xen-devel,
  but not commited yet.

thnaks.
-- 
yamahata
# HG changeset patch
# User [EMAIL PROTECTED]
# Date 1170334448 -32400
# Node ID 0c8f4e87a6a6e099aeb601d637be2144a00613e8
# Parent  9cb3579daa5ce32764e96698a51f2b8e95005ef1
introduce memmap_info_t
PATCHNAME: introduce_memmap_info_t

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

diff -r 9cb3579daa5c -r 0c8f4e87a6a6 tools/libxc/xc_dom_boot.c
--- a/tools/libxc/xc_dom_boot.c	Thu Feb 01 21:34:45 2007 +0900
+++ b/tools/libxc/xc_dom_boot.c	Thu Feb 01 21:54:08 2007 +0900
@@ -263,9 +263,64 @@ static int arch_setup_bootlate(struct xc
 
 #elif defined(__ia64__)
 
+#include xc_efi.h
+
 static int arch_setup_meminit(struct xc_dom_image *dom)
 {
 xc_dom_printf(%s: doing nothing\n, __FUNCTION__);
+return 0;
+}
+
+static int ia64_setup_memmap(struct xc_dom_image *dom)
+{
+unsigned int page_size = XC_DOM_PAGE_SIZE(dom);
+unsigned long memmap_info_pfn;
+xen_ia64_memmap_info_t* memmap_info;
+unsigned int num_mds;
+efi_memory_desc_t *md;
+
+char* start_info;
+struct xen_ia64_boot_param* bp;
+
+/* setup memmap page */
+memmap_info_pfn = dom-start_info_pfn - 1;
+xc_dom_printf(%s: memmap: mfn 0x% PRIpfn \n,
+		  __FUNCTION__, memmap_info_pfn);
+memmap_info = xc_map_foreign_range(dom-guest_xc, dom-guest_domid,
+   page_size,
+   PROT_READ | PROT_WRITE,
+   memmap_info_pfn);
+if (NULL == memmap_info)
+return -1;
+/* [0, total_pages) */
+memmap_info-efi_memdesc_size = sizeof(md[0]);
+memmap_info-efi_memdesc_version = EFI_MEMORY_DESCRIPTOR_VERSION;
+num_mds = 0;
+md = (efi_memory_desc_t*)memmap_info-memdesc;
+md[num_mds].type = EFI_CONVENTIONAL_MEMORY;
+md[num_mds].pad = 0;
+md[num_mds].phys_addr = 0;
+md[num_mds].virt_addr = 0;
+md[num_mds].num_pages = dom-total_pages  (PAGE_SHIFT - EFI_PAGE_SHIFT);
+md[num_mds].attribute = EFI_MEMORY_WB;
+num_mds++;
+memmap_info-efi_memmap_size = num_mds * sizeof(md[0]);
+munmap(memmap_info, page_size);
+
+/* kludge: we need to pass memmap_info page's pfn somehow.
+ * we use xen_ia64_boot_param::efi_memmap for this purpose */
+start_info = xc_map_foreign_range(dom-guest_xc, dom-guest_domid,
+  page_size,
+  PROT_READ | PROT_WRITE,
+  dom-start_info_pfn);
+if (NULL == start_info)
+return -1;
+bp = (struct xen_ia64_boot_param*)(start_info + sizeof(start_info_t));
+memset(bp, 0, sizeof(*bp));
+bp-efi_memmap = memmap_info_pfn;
+/* 4 = memmap info page, start info page, xenstore page and console page */
+bp-efi_memmap_size = 4 * PAGE_SIZE;
+munmap(start_info, page_size);
 return 0;
 }
 
@@ -274,6 +329,10 @@ static int arch_setup_bootearly(struct x
 DECLARE_DOMCTL;
 int rc;
 
+rc = ia64_setup_memmap(dom);
+if (rc)
+return rc;
+
 xc_dom_printf(%s: setup firmware\n, __FUNCTION__);
 
 memset(domctl, 0, sizeof(domctl));
@@ -283,8 +342,7 @@ static int arch_setup_bootearly(struct x
 
 domctl.u.arch_setup.bp = (dom-start_info_pfn  PAGE_SHIFT)
 	+ sizeof(start_info_t);
-/* 3 = start info page, xenstore page and console page */
-domctl.u.arch_setup.maxmem = (dom-total_pages - 3)  PAGE_SHIFT;
+domctl.u.arch_setup.maxmem = dom-total_pages  PAGE_SHIFT;
 rc = do_domctl(dom-guest_xc, domctl);
 return rc;
 }
diff -r 9cb3579daa5c -r 0c8f4e87a6a6 tools/libxc/xc_dom_ia64.c
--- a/tools/libxc/xc_dom_ia64.c	Thu Feb 01 21:34:45 2007 +0900
+++ b/tools/libxc/xc_dom_ia64.c	Thu Feb 01 21:54:08 2007 +0900
@@ -76,6 +76,7 @@ static int shared_info_ia64(struct xc_do
 for (i = 0; i  MAX_VIRT_CPUS; i++)
 	shared_info-vcpu_info[i].evtchn_upcall_mask = 1;
 shared_info-arch.start_info_pfn = dom-start_info_pfn;
+shared_info-arch.memmap_info_pfn = dom-start_info_pfn - 1;
 return 0;
 }
 
diff -r 9cb3579daa5c -r 

Re: [Xen-ia64-devel] XenU will crash Xen in CSet # 13773.

2007-02-01 Thread Yongkang You

Isaku Yamahata wrote:

On Thu, Feb 01, 2007 at 05:48:33PM +0800, You, Yongkang wrote:

In latest Changeset 13773, if creating XenU, Xen0 would crash and hang.
The hang happened when XenU try to bring up its network.


At least domU network works for me.
Looking the panic log, the issue looks similar which I was seeing
before c/s 13773:ef646312685f.
Given that c/s 13773 resoved my issue, could you make sure your
build environment?

- linux-2.6.18-xen/drivers/xen/core/skbuff.c must not exist.
- the following three configs shouldn't exist in linux dot config
  CONFIG_HAVE_ARCH_ALLOC_SKB=y
  CONFIG_HAVE_ARCH_DEV_ALLOC_SKB=y
  CONFIG_XEN_SKBUFF=y

Alghough you might have checked those already or you might have built
from scratch, please check it again.


Hi Isaku,

Our every build comes from clean hg co. I have double checked the 
source as you suggested. I didn't find skbuff.c and can not grep any 
SKB in buildconfigs/*


Any other clue could I provide to track the issue?

Best Regards,
Yongkang

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


[Xen-ia64-devel] [Patch0/2] support config SPARSEMEM

2007-02-01 Thread Akio Takebe
Hi,

These patches are for supporting domain config of SPARSEMEM.
See the following thread.
http://lists.xensource.com/archives/html/xen-ia64-devel/2007-01/msg00278.html

[1/2] change config SPARSEMEM
[2/2] remove pfn_valid for supporting SPARSEMEM

Best Regards,

Akio Takebe


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


[Xen-ia64-devel] [Patch1/2] support config SPARSEMEM

2007-02-01 Thread Akio Takebe
Hi,

This patch change buildconfig from FLATMEM to SPARSEMEM.

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

Best Regards,

Akio Takebe


config_sparsemem.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] [Patch2/2] remove pfn_valid() in mfn_to_local_pfn() for supporting SPARSEMEM

2007-02-01 Thread Akio Takebe
Hi,

This patch remove pfn_valid() in mfn_to_local_pfn().
Caller function of mfn_to_local_pfn() should pfn_valid() in itself.

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

Best Regards,

Akio Takebe


remove_pfn_valid_for_sparsemem.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] [Patch] fix pal halt of para domain

2007-02-01 Thread Akio Takebe
Hi,

This patch is for the following issue.
http://lists.xensource.com/archives/html/xen-ia64-devel/2007-01/msg00163.html

I update it for linux-2.6.18.
I tested;
  1. domU shutdown
  2. domU crash then xend generate domU's core.

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

Best Regards,

Akio Takebe

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

Re: [Xen-ia64-devel][PATCH] Optimize hypercall path in VTI domain

2007-02-01 Thread Alex Williamson
On Wed, 2007-01-31 at 17:39 +0800, Xu, Anthony wrote:
 Optimize hypercall path in VTI domain,

   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] [Patch] fix compile warning of xenentry.S

2007-02-01 Thread Alex Williamson
On Thu, 2007-02-01 at 18:07 +0900, Akio Takebe wrote:
 Hi,
 
 This patch fix the following compile warnig with srlz.d.

   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] [PATCH][RFC] embed memory map in domain pseudo physical address space

2007-02-01 Thread Alex Williamson
Hi Isaku,

   A few comments inline.  Thanks,

Alex

On Thu, 2007-02-01 at 22:15 +0900, Isaku Yamahata wrote:
 +static void
 +setup_dom0_memmap_info(struct domain *d, struct fw_tables *tables,
 +  int *num_mds)
 +{
 +   int i;
 +   efi_memory_desc_t *md;
 +   efi_memory_desc_t *last_mem_md = NULL;
 +   xen_ia64_memmap_info_t* memmap_info;
 +   unsigned long paddr_start;
 +   unsigned long paddr_end;
 +
 +   for (i = 0; i  *num_mds; i++) {
 +   md = tables-efi_memmap[i];
 +   if (md-attribute == EFI_MEMORY_WB 
 +   md-type == EFI_CONVENTIONAL_MEMORY 
 +   md-num_pages  (1UL  (PAGE_SHIFT -
 EFI_PAGE_SHIFT)))
 +   last_mem_md = md;
 +   }
 +   if (last_mem_md == NULL) {
 +   printk(%s: warning: 
 +  no dom0 contiguous memory to hold memory map
 \n,
 +  __func__);
 +   return;
 +   }

   Looks like you could search the array starting from the end as a
minor optimization.


 +   paddr_end = last_mem_md-phys_addr +
 +   (last_mem_md-num_pages  EFI_PAGE_SHIFT);
 +   paddr_start = paddr_end - (1UL  (PAGE_SHIFT -
 EFI_PAGE_SHIFT));

   This doesn't look right.  We're not multiplying by the EFI page size.

 +   paddr_start = PAGE_MASK;

   Seems like it's possible this mask could make (paddr_start 
last_mem_md-phys_addr)


-- 
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] [Patch] fix pal halt of para domain

2007-02-01 Thread Alex Williamson
Hi Akio,

   Sorry, I should have responded to your last email on this topic.  I
still have issues with this approach.  Comments below.

On Fri, 2007-02-02 at 01:28 +0900, Akio Takebe wrote:
 diff -r ef646312685f linux-2.6-xen-sparse/arch/ia64/kernel/setup.c
 --- a/linux-2.6-xen-sparse/arch/ia64/kernel/setup.c Wed Jan 31
 10:59:56 2007 -0700
 +++ b/linux-2.6-xen-sparse/arch/ia64/kernel/setup.c Fri Feb 02
 01:44:36 2007 +0900
 @@ -63,6 +63,7 @@
  #ifdef CONFIG_XEN
  #include asm/hypervisor.h
  #include asm/xen/xencomm.h
 +#include asm/kdebug.h
  #endif
  #include linux/dma-mapping.h
  
 @@ -95,6 +96,18 @@ static struct notifier_block xen_panic_b
  static struct notifier_block xen_panic_block = {
 xen_panic_event, NULL, 0 /* try to go last */
  };
 +static int
 +xen_poweroff_event(struct notifier_block *this, unsigned long event,
 void *ptr)
 +{
 +   if ( event == DIE_MACHINE_HALT )
 +   HYPERVISOR_shutdown(SHUTDOWN_poweroff);
 +   return NOTIFY_DONE;
 +}
 +
 +static struct notifier_block xen_poweroff_block = {
 +   xen_poweroff_event, NULL, 0 /* try to go last */
 +};
 +

   machine_halt() isn't supposed to power off the system.  The
processors should be left spinning and the domain will be halted, but
still in place.  machine_power_off() should certainly shutdown the
domain, but that's where the pm_power_off hook is useful.

  #endif
  
  extern void ia64_setup_printk_clock(void);
 @@ -456,6 +469,7 @@ setup_arch (char **cmdline_p)
 /* Register a call for panic conditions. */
 atomic_notifier_chain_register(panic_notifier_list,
xen_panic_block);
 +   register_die_notifier(xen_poweroff_block);
 }
  #endif
  
 diff -r ef646312685f xen/arch/ia64/xen/fw_emul.c
 --- a/xen/arch/ia64/xen/fw_emul.c   Wed Jan 31 10:59:56 2007 -0700
 +++ b/xen/arch/ia64/xen/fw_emul.c   Fri Feb 02 01:44:36 2007 +0900
 @@ -385,6 +385,8 @@ xen_pal_emulator(unsigned long index, u6
 unsigned long r10 = 0;
 unsigned long r11 = 0;
 long status = PAL_STATUS_UNIMPLEMENTED;
 +   struct vcpu *v;
 +   volatile unsigned long nr_online_vcpus;
  
 if (running_on_sim)
 return pal_emulator_static(index);
 @@ -606,8 +608,24 @@ xen_pal_emulator(unsigned long index, u6
 console_start_sync();
 (*efi.reset_system)(EFI_RESET_SHUTDOWN,0,0,NULL);
 }
 -   else
 -   domain_shutdown(current-domain,
 SHUTDOWN_poweroff);
 +   else{
 +   set_bit(_VCPUF_down, current-vcpu_flags);
 +   vcpu_sleep_nosync(current);
 +
 +   LOCK_BIGLOCK(current-domain);
 +   nr_online_vcpus = 0;
 +   for_each_vcpu( current-domain, v ){
 +   if ( !test_bit(_VCPUF_down,
 v-vcpu_flags) ){
 +   nr_online_vcpus ++;
 +   }
 +   }   
 +   UNLOCK_BIGLOCK(current-domain);
 +
 +   if ( nr_online_vcpus == 0 ){
 +   domain_shutdown(current-domain,
 SHUTDOWN_poweroff);
 +   }
 +   status = PAL_STATUS_SUCCESS;
 +   }

   I though we didn't need this since qemu emulates the S5 power off and
we can hook into pm_power_off for PV domains.  Did we figure out that
doesn't work?  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] [Patch] fix pal halt of para domain

2007-02-01 Thread Akio Takebe
Hi, Alex

Thank you for your comments.

   machine_halt() isn't supposed to power off the system.  The
processors should be left spinning and the domain will be halted, but
still in place.  machine_power_off() should certainly shutdown the
domain, but that's where the pm_power_off hook is useful.

I concerned that someuser use halt command instead of shutdown -h now.
But you are right, I update it.

   I though we didn't need this since qemu emulates the S5 power off and
we can hook into pm_power_off for PV domains.  Did we figure out that
doesn't work?  Thanks,
Qemu emulation don't work because I used old GFW.
When I used the latest GFW, I could power off by qemu emulation.

Best Regards,

Akio Takebe


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


Re: [Xen-ia64-devel] [Patch0/2] support config SPARSEMEM

2007-02-01 Thread Alex Williamson
On Fri, 2007-02-02 at 01:19 +0900, Akio Takebe wrote:
 Hi,
 
 These patches are for supporting domain config of SPARSEMEM.
 See the following thread.
 http://lists.xensource.com/archives/html/xen-ia64-devel/2007-01/msg00278.html
 
 [1/2] change config SPARSEMEM
 [2/2] remove pfn_valid for supporting SPARSEMEM

Hi Akio,

   Dom0 boots with this, but booting a domU w/ the -xen kernel does bad
things:

Xen p2m: assign p2m table of [0x, 0x0001)
Xen p2m: to [0x0001, 0x000103ffc000) (65536 KBytes)
XENBUS: Device with no driver: device/console/0
Unable to handle kernel NULL pointer dereference (address )
swapper[0]: Oops 11012296146944 [1]
Modules linked in:

Pid: 0, CPU 0, comm:  swapper
psr : 121008026010 ifs : 840b ip  : [a001005010a1]Not 
tainted
ip is at __sync_single+0x61/0x1e0
unat:  pfs : 838c rsc : 0008
rnat: 021008026010 bsps: a001000dac30 pr  : 00019aa5
ldrs:  ccv :  fpsr: 0009804c0270033f
csd :  ssd : 
b0  : a001005013e0 b6  : a0010062e9a0 b7  : 
f6  : 0 f7  : 0
f8  : 0 f9  : 0
f10 : 0 f11 : 0
r1  : a001010ff400 r2  : 0030 r3  : a00100cc3b98
r8  : e00103a08928 r9  :  r10 : 
r11 :  r12 : a00100cc3b80 r13 : a00100cbc000
r14 : a00100cc3ba0 r15 : e000 r16 : a00100cc3ba8
r17 : a0010116f400 r18 : 0c92 r19 : 00649000
r20 : e5378000 r21 : a00100f283e8 r22 : a00100f283b8
r23 : e000 r24 : 059c r25 : 1000
r26 : 3fff r27 : 0008 r28 : 
r29 : 1412082a6010 r30 : 8006 r31 : 

Call Trace:
 [a0010001d0c0] show_stack+0x40/0xa0
sp=a00100cc3730 bsp=a00100cbd498
 [a0010001dd20] show_regs+0x840/0x880
sp=a00100cc3900 bsp=a00100cbd440
 [a00100041520] die+0x1c0/0x380
sp=a00100cc3900 bsp=a00100cbd3f0
 [a00100065e70] ia64_do_page_fault+0x810/0x940
sp=a00100cc3920 bsp=a00100cbd3a0
 [a00100068840] xen_leave_kernel+0x0/0x3c0
sp=a00100cc39b0 bsp=a00100cbd3a0
 [a001005010a0] __sync_single+0x60/0x1e0
sp=a00100cc3b80 bsp=a00100cbd348
 [a001005013e0] unmap_single+0xa0/0x220
sp=a00100cc3b90 bsp=a00100cbd310
 [a00100502b10] swiotlb_unmap_single+0x270/0x320
sp=a00100cc3ba0 bsp=a00100cbd2d0
 [a0010006b4e0] dma_unmap_single+0xa0/0xc0
sp=a00100cc3ba0 bsp=a00100cbd298
 [a0010062ebe0] cciss_softirq_done+0x240/0x5a0
sp=a00100cc3ba0 bsp=a00100cbd248
 [a001004ca680] blk_done_softirq+0x240/0x2a0
sp=a00100cc3ba0 bsp=a00100cbd230
 [a001000959b0] __do_softirq+0x1b0/0x340
sp=a00100cc3bb0 bsp=a00100cbd1b0
 [a00100095c60] do_softirq+0x120/0x240
sp=a00100cc3bb0 bsp=a00100cbd150
 [a00100095e00] irq_exit+0x80/0xa0
sp=a00100cc3bb0 bsp=a00100cbd138
 [a001006c49b0] evtchn_do_upcall+0x1d0/0x320
sp=a00100cc3bb0 bsp=a00100cbd0a0
 [a00100068240] xen_event_callback+0x380/0x3c0
sp=a00100cc3bb0 bsp=a00100cbd0a0
 [a001005013e0] unmap_single+0xa0/0x220
sp=a00100cc3bb0 bsp=a00100cbd0a0
 0Kernel panic - not syncing: Aiee, killing interrupt handler!
 (XEN) Domain 0 crashed: rebooting machine in 5 seconds.
(XEN) Domain0 halts the machine


-- 
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] [Patch0/2] support config SPARSEMEM

2007-02-01 Thread Akio Takebe
Hi, Alex

Hmm, I'm sorry.
I can boot dom0, domU with my patches on PRIMEQUEST.
I'll check this issue.

Best Regards,

Akio Takebe

   Dom0 boots with this, but booting a domU w/ the -xen kernel does bad
things:

Xen p2m: assign p2m table of [0x, 0x0001)
Xen p2m: to [0x0001, 0x000103ffc000) (65536 KBytes)
XENBUS: Device with no driver: device/console/0
Unable to handle kernel NULL pointer dereference (address )
swapper[0]: Oops 11012296146944 [1]
Modules linked in:

Pid: 0, CPU 0, comm:  swapper
psr : 121008026010 ifs : 840b ip  : [a001005010a1]
Not tainted
ip is at __sync_single+0x61/0x1e0
unat:  pfs : 838c rsc : 0008
rnat: 021008026010 bsps: a001000dac30 pr  : 00019aa5
ldrs:  ccv :  fpsr: 0009804c0270033f
csd :  ssd : 
b0  : a001005013e0 b6  : a0010062e9a0 b7  : 
f6  : 0 f7  : 0
f8  : 0 f9  : 0
f10 : 0 f11 : 0
r1  : a001010ff400 r2  : 0030 r3  : a00100cc3b98
r8  : e00103a08928 r9  :  r10 : 
r11 :  r12 : a00100cc3b80 r13 : a00100cbc000
r14 : a00100cc3ba0 r15 : e000 r16 : a00100cc3ba8
r17 : a0010116f400 r18 : 0c92 r19 : 00649000
r20 : e5378000 r21 : a00100f283e8 r22 : a00100f283b8
r23 : e000 r24 : 059c r25 : 1000
r26 : 3fff r27 : 0008 r28 : 
r29 : 1412082a6010 r30 : 8006 r31 : 

Call Trace:
 [a0010001d0c0] show_stack+0x40/0xa0
sp=a00100cc3730 bsp=a00100cbd498
 [a0010001dd20] show_regs+0x840/0x880
sp=a00100cc3900 bsp=a00100cbd440
 [a00100041520] die+0x1c0/0x380
sp=a00100cc3900 bsp=a00100cbd3f0
 [a00100065e70] ia64_do_page_fault+0x810/0x940
sp=a00100cc3920 bsp=a00100cbd3a0
 [a00100068840] xen_leave_kernel+0x0/0x3c0
sp=a00100cc39b0 bsp=a00100cbd3a0
 [a001005010a0] __sync_single+0x60/0x1e0
sp=a00100cc3b80 bsp=a00100cbd348
 [a001005013e0] unmap_single+0xa0/0x220
sp=a00100cc3b90 bsp=a00100cbd310
 [a00100502b10] swiotlb_unmap_single+0x270/0x320
sp=a00100cc3ba0 bsp=a00100cbd2d0
 [a0010006b4e0] dma_unmap_single+0xa0/0xc0
sp=a00100cc3ba0 bsp=a00100cbd298
 [a0010062ebe0] cciss_softirq_done+0x240/0x5a0
sp=a00100cc3ba0 bsp=a00100cbd248
 [a001004ca680] blk_done_softirq+0x240/0x2a0
sp=a00100cc3ba0 bsp=a00100cbd230
 [a001000959b0] __do_softirq+0x1b0/0x340
sp=a00100cc3bb0 bsp=a00100cbd1b0
 [a00100095c60] do_softirq+0x120/0x240
sp=a00100cc3bb0 bsp=a00100cbd150
 [a00100095e00] irq_exit+0x80/0xa0
sp=a00100cc3bb0 bsp=a00100cbd138
 [a001006c49b0] evtchn_do_upcall+0x1d0/0x320
sp=a00100cc3bb0 bsp=a00100cbd0a0
 [a00100068240] xen_event_callback+0x380/0x3c0
sp=a00100cc3bb0 bsp=a00100cbd0a0
 [a001005013e0] unmap_single+0xa0/0x220
sp=a00100cc3bb0 bsp=a00100cbd0a0
 0Kernel panic - not syncing: Aiee, killing interrupt handler!
 (XEN) Domain 0 crashed: rebooting machine in 5 seconds.
(XEN) Domain0 halts the machine



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


RE: [Xen-ia64-devel] XenU will crash Xen in CSet # 13773. -- wrong testing.

2007-02-01 Thread You, Yongkang
Hi Isaku and all,

I make a mistake. There is a hard-code in building script, while Xen Source has 
changed base kernel to 2.6.18. So build system didn't copy the right Xen0 
kernel to target. Then testing met the problem. Sorry for that. 

We will redo the testing and send out the testing report later. 

Best Regards,
Yongkang (Kangkang) 永康

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
Yongkang You
Sent: 2007年2月1日 22:52
To: Isaku Yamahata
Cc: xen-ia64-devel
Subject: Re: [Xen-ia64-devel] XenU will crash Xen in CSet # 13773.

Isaku Yamahata wrote:
 On Thu, Feb 01, 2007 at 05:48:33PM +0800, You, Yongkang wrote:
 In latest Changeset 13773, if creating XenU, Xen0 would crash and hang.
 The hang happened when XenU try to bring up its network.

 At least domU network works for me.
 Looking the panic log, the issue looks similar which I was seeing
 before c/s 13773:ef646312685f.
 Given that c/s 13773 resoved my issue, could you make sure your
 build environment?

 - linux-2.6.18-xen/drivers/xen/core/skbuff.c must not exist.
 - the following three configs shouldn't exist in linux dot config
   CONFIG_HAVE_ARCH_ALLOC_SKB=y
   CONFIG_HAVE_ARCH_DEV_ALLOC_SKB=y
   CONFIG_XEN_SKBUFF=y

 Alghough you might have checked those already or you might have built
 from scratch, please check it again.

Hi Isaku,

Our every build comes from clean hg co. I have double checked the
source as you suggested. I didn't find skbuff.c and can not grep any
SKB in buildconfigs/*

Any other clue could I provide to track the issue?

Best Regards,
Yongkang

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

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


Re: [Xen-ia64-devel] XenU will crash Xen in CSet # 13773.

2007-02-01 Thread Isaku Yamahata
On Thu, Feb 01, 2007 at 10:51:59PM +0800, Yongkang You wrote:
 Isaku Yamahata wrote:
 On Thu, Feb 01, 2007 at 05:48:33PM +0800, You, Yongkang wrote:
 In latest Changeset 13773, if creating XenU, Xen0 would crash and hang.
 The hang happened when XenU try to bring up its network.
 
 At least domU network works for me.
 Looking the panic log, the issue looks similar which I was seeing
 before c/s 13773:ef646312685f.
 Given that c/s 13773 resoved my issue, could you make sure your
 build environment?
 
 - linux-2.6.18-xen/drivers/xen/core/skbuff.c must not exist.
 - the following three configs shouldn't exist in linux dot config
   CONFIG_HAVE_ARCH_ALLOC_SKB=y
   CONFIG_HAVE_ARCH_DEV_ALLOC_SKB=y
   CONFIG_XEN_SKBUFF=y
 
 Alghough you might have checked those already or you might have built
 from scratch, please check it again.
 
 Hi Isaku,
 
 Our every build comes from clean hg co. I have double checked the 
 source as you suggested. I didn't find skbuff.c and can not grep any 
 SKB in buildconfigs/*
 
 Any other clue could I provide to track the issue?

From panic log.
 Bringing up interface eth0:  Bad page state in process 'swapper'
 page:e1547c60 flags:0x0010 mapping:a00100c25f50 
 mapcount:0 count:0
 Trying to fix it up, but a reboot is needed

It doesn't seems that arch_free_page() is defined as expected.
- Could you check linux symbol file?
  0xa00100c25f50 = netif_page_release()?
  If yes(I guess so),  page status is correct.
  If not, this issue is nasty

- Could you check linux-2.6.18-xen/mm/page_alloc.c compilation?
  Please check its cpp result and free_host_cold_page()
  It should include include/asm-ia64/page.h and
  HAVE_ARCH_FREE_PAGE should be defined so that the used arch_free_page
  definition should be same as in include/asm-ia64/page.h.

static void fastcall free_hot_cold_page(struct page *page, int cold)
...
if (arch_free_page(page, 0))  this line
return;


thanks.
-- 
yamahata

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


Re: [Xen-ia64-devel] [Patch0/2] support config SPARSEMEM

2007-02-01 Thread Alex Williamson
On Fri, 2007-02-02 at 11:11 +0900, Akio Takebe wrote:
 Hi, Alex
 
 Hmm, I'm sorry.
 I can boot dom0, domU with my patches on PRIMEQUEST.
 I'll check this issue.
 

   Thanks Akio.  Note that the dump below is actually from dom0 while
domU is booting.  The cciss driver is for an HP hardware raid card.  The
domU is a 4-way, 4GB domain.  dom0 is booted with dom0_max_vcpus=2
dom0_mem=16G.  Disk I/O via the cciss driver seems to work normally with
only dom0 running, but blows up when domU is started.  Thanks,

Alex

 Best Regards,
 
 Akio Takebe
 
Dom0 boots with this, but booting a domU w/ the -xen kernel does bad
 things:
 
 Xen p2m: assign p2m table of [0x, 0x0001)
 Xen p2m: to [0x0001, 0x000103ffc000) (65536 KBytes)
 XENBUS: Device with no driver: device/console/0
 Unable to handle kernel NULL pointer dereference (address )
 swapper[0]: Oops 11012296146944 [1]
 Modules linked in:
 
 Pid: 0, CPU 0, comm:  swapper
 psr : 121008026010 ifs : 840b ip  : [a001005010a1]
 Not tainted
 ip is at __sync_single+0x61/0x1e0
 unat:  pfs : 838c rsc : 0008
 rnat: 021008026010 bsps: a001000dac30 pr  : 00019aa5
 ldrs:  ccv :  fpsr: 0009804c0270033f
 csd :  ssd : 
 b0  : a001005013e0 b6  : a0010062e9a0 b7  : 
 f6  : 0 f7  : 0
 f8  : 0 f9  : 0
 f10 : 0 f11 : 0
 r1  : a001010ff400 r2  : 0030 r3  : a00100cc3b98
 r8  : e00103a08928 r9  :  r10 : 
 r11 :  r12 : a00100cc3b80 r13 : a00100cbc000
 r14 : a00100cc3ba0 r15 : e000 r16 : a00100cc3ba8
 r17 : a0010116f400 r18 : 0c92 r19 : 00649000
 r20 : e5378000 r21 : a00100f283e8 r22 : a00100f283b8
 r23 : e000 r24 : 059c r25 : 1000
 r26 : 3fff r27 : 0008 r28 : 
 r29 : 1412082a6010 r30 : 8006 r31 : 
 
 Call Trace:
  [a0010001d0c0] show_stack+0x40/0xa0
 sp=a00100cc3730 bsp=a00100cbd498
  [a0010001dd20] show_regs+0x840/0x880
 sp=a00100cc3900 bsp=a00100cbd440
  [a00100041520] die+0x1c0/0x380
 sp=a00100cc3900 bsp=a00100cbd3f0
  [a00100065e70] ia64_do_page_fault+0x810/0x940
 sp=a00100cc3920 bsp=a00100cbd3a0
  [a00100068840] xen_leave_kernel+0x0/0x3c0
 sp=a00100cc39b0 bsp=a00100cbd3a0
  [a001005010a0] __sync_single+0x60/0x1e0
 sp=a00100cc3b80 bsp=a00100cbd348
  [a001005013e0] unmap_single+0xa0/0x220
 sp=a00100cc3b90 bsp=a00100cbd310
  [a00100502b10] swiotlb_unmap_single+0x270/0x320
 sp=a00100cc3ba0 bsp=a00100cbd2d0
  [a0010006b4e0] dma_unmap_single+0xa0/0xc0
 sp=a00100cc3ba0 bsp=a00100cbd298
  [a0010062ebe0] cciss_softirq_done+0x240/0x5a0
 sp=a00100cc3ba0 bsp=a00100cbd248
  [a001004ca680] blk_done_softirq+0x240/0x2a0
 sp=a00100cc3ba0 bsp=a00100cbd230
  [a001000959b0] __do_softirq+0x1b0/0x340
 sp=a00100cc3bb0 bsp=a00100cbd1b0
  [a00100095c60] do_softirq+0x120/0x240
 sp=a00100cc3bb0 bsp=a00100cbd150
  [a00100095e00] irq_exit+0x80/0xa0
 sp=a00100cc3bb0 bsp=a00100cbd138
  [a001006c49b0] evtchn_do_upcall+0x1d0/0x320
 sp=a00100cc3bb0 bsp=a00100cbd0a0
  [a00100068240] xen_event_callback+0x380/0x3c0
 sp=a00100cc3bb0 bsp=a00100cbd0a0
  [a001005013e0] unmap_single+0xa0/0x220
 sp=a00100cc3bb0 bsp=a00100cbd0a0
  0Kernel panic - not syncing: Aiee, killing interrupt handler!
  (XEN) Domain 0 crashed: rebooting machine in 5 seconds.
 (XEN) Domain0 halts the machine
 
 
-- 
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


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

2007-02-01 Thread Zhang, Jingke
Xen/IA64 Healthiness Report

One issues:
1. Qemu can not be opened when creating a VTI domain. But the VTI can be
created successfully without qemu.

Testing Environment:

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

Summary Test Report:
-
  Total cases: 16
  Passed:16
  Failed: 0

Case Name Status   Case Description
Four_SMPVTI_Coexistpass   4 VTI (mem=256, vcpus=2)
Two_UP_VTI_Co pass   2 UP_VTI (mem=256)
One_UP_VTIpass1 UP_VTI (mem=256)
One_UP_XenU  pass1 UP_xenU(mem=256)
SMPVTI_LTPpassVTI (vcpus=4, mem=512) run LTP
SMPVTI_and_SMPXenU   pass  1 VTI + 1 xenU (mem=256 vcpus=2)
Two_SMPXenU_Coexistpass2 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_Networkpass  1 XenU (vcpus=2) and 'ping'
One_SMP_XenU  pass   1 SMP xenU (vcpus=2)
One_SMP_VTIpass   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:
-
13441:7e9077dd4010

Thanks,
Zhangjingke

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


Re: [Xen-ia64-devel] [PATCH][RFC] embed memory map in domain pseudo physical address space

2007-02-01 Thread Tristan Gingold
On Thu, Feb 01, 2007 at 10:15:21PM +0900, Isaku Yamahata wrote:
 Hi all.
 
 Xen/IA64 XEN_DOMCTL_arch_setup hypercall needs flexibilty
 to address the following issues.
 - xm dump-core. (save/restore would use in near future)
   Now I'm trying to enhance xm dump-core for IA64.
   Such utilities need to know the area where memory is populated.
   Currently domU populates memory dense, but this wouldn't be
   true in future.
   Especially VTi domain builder populate memory spasely so that
   xm dump-core doesn't work for domVTi.
 - sparse populated domU for driver domain or other purose(e.g. NUMA)
   The domain builder needs flexibility to populate memory sparsely.
Hi,

I agree with the goal.
Although I don't have all the details in memory, why not fully build the
domain (ie building pal/sal stubs) from libxc ?

If this is doable, I think it should be cleaner.

[This is just an idea to be discussed.  If we agree this is cleaner and doable
then someone might implement it.  The only drawback might be code duplication]

Tristan.


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


[Xen-ia64-devel][PATCH]A small optimization on flushtlb.

2007-02-01 Thread Xu, Anthony
A small optimization on flushtlb,
Replace ia64_cmpxchg with ia64_fetch_and_add.


- Anthony


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

[Xen-ia64-devel] [PATCH] bug fix new_tlbflush_clock_period()

2007-02-01 Thread Kouya SHIMURA
Hi,

__vhpt_flush() might be called from new_tlbflush_clock_period()
even if the vcpu doesn't have the per-vcpu-vhpt. 
It erases 64KB memory content that starts from machine address 0.

Thanks,
Kouya

Signed-off-by: Kouya Shimura [EMAIL PROTECTED]

diff -r 0df9dc2f1d03 xen/arch/ia64/xen/flushtlb.c
--- a/xen/arch/ia64/xen/flushtlb.c  Thu Feb 01 13:54:26 2007 -0700
+++ b/xen/arch/ia64/xen/flushtlb.c  Fri Feb 02 14:29:45 2007 +0900
@@ -88,6 +88,9 @@ new_tlbflush_clock_period(void)
 smp_mb();
 for_each_domain(d) {
 for_each_vcpu(d, v) {
+if (!test_bit(_VCPUF_initialised, v-vcpu_flags) ||
+VMX_DOMAIN(v))
+continue;
 if (HAS_PERVCPU_VHPT(v-domain))
 vcpu_vhpt_flush(v);
 }
___
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel

Re: [Xen-ia64-devel][PATCH]A small optimization on flushtlb.

2007-02-01 Thread Isaku Yamahata
On Fri, Feb 02, 2007 at 02:35:14PM +0800, Xu, Anthony wrote:
 A small optimization on flushtlb,
 Replace ia64_cmpxchg with ia64_fetch_and_add.

Hi Anthony.
This patch modifies its semantics.
When tlbflush_clock is 0, it must return 0 without increment.
I.e. tlbflush_clock == 0 means the overflow is detected and 
new_tlbflush_clock_period() may be flushing concurrently.
So tlbflush_clock must not be incremented until the completion of
new_tlbflush_clock_period()

-- 
yamahata

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