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-ia64-devel

RE: [Xen-ia64-devel] [PATCH] fixes DOM0_PHYSINFO hypercall

To: "Masaki Kanno" <kanno.masaki@xxxxxxxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-ia64-devel] [PATCH] fixes DOM0_PHYSINFO hypercall
From: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
Date: Wed, 14 Dec 2005 21:35:08 +0800
Delivery-date: Wed, 14 Dec 2005 13:36:50 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-ia64-devel-request@lists.xensource.com?subject=help>
List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
List-post: <mailto:xen-ia64-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcX/CitpWlw0vdFoTcOP3iKbeLTO7QBp0ScA
Thread-topic: [Xen-ia64-devel] [PATCH] fixes DOM0_PHYSINFO hypercall
>From: Masaki Kanno
>Sent: 2005年12月12日 18:52
>Hi,
>
>This patch fixes DOM0_PHYSINFO hypercall.
>
>However, I found a problem in 'smp_num_siblings'.
>I changed the setting of BIOS to disabled the hyperthread, so I expected
>'smp_num_siblings' to 1.
>But, its value is 2, because the value of log_overview.tpc
>(PAL_LOGICAL_TO_PHYSICAL) is 2.
>Is there any way to know the current setting of the hyperthread?

Hi, Kanno

        That depends on what you wanna that field to be. Current code from 
Linux just uses smp_num_siblings and smp_num_cpu_cores to record physical die 
information, which is retrieved from PAL_LOGICAL_TO_PHYSICAL in boot time. So 
they're exactly same meaning to threads_per_core and cores_per_socket here, 
which stands for static physical capability. That will not be affected by your 
BIOS setting.

        If you want to add a field to indicate active siblings of current 
logical processor (no such field in current phys_info), you should either go to 
cpuinfo_ia64 structure for field num_log which indicating online physical 
threads within this die. More specifically, you can even walk 
cpu_core_map(index) and cpu_sibling_map(index) for more detail online 
information. But it seems num_log should be enough.

        Hope helps.

Thanks,
Kevin
>
>Signed-off-by: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
>
>Best Regards,
> Kan
>
>
>diff -r 0255f48b757f xen/arch/ia64/xen/dom0_ops.c
>--- a/xen/arch/ia64/xen/dom0_ops.c      Sun Dec  4 19:12:00 2005
>+++ b/xen/arch/ia64/xen/dom0_ops.c      Fri Dec  9 23:49:11 2005
>@@ -200,13 +200,13 @@
>         dom0_physinfo_t *pi = &op->u.physinfo;
>
>         pi->threads_per_core = smp_num_siblings;
>-        pi->cores_per_socket = 1; // FIXME
>+        pi->cores_per_socket = smp_num_cpucores;
>         pi->sockets_per_node =
>             num_online_cpus() / (pi->threads_per_core * pi->cores_per_socket);
>         pi->nr_nodes         = 1;
>         pi->total_pages      = 99;  // FIXME
>         pi->free_pages       = avail_domheap_pages();
>-        pi->cpu_khz          = 100;  // FIXME cpu_khz;
>+        pi->cpu_khz          = local_cpu_data->proc_freq / 1000;
>         memset(pi->hw_cap, 0, sizeof(pi->hw_cap));
>         //memcpy(pi->hw_cap, boot_cpu_data.x86_capability, NCAPINTS*4);
>         ret = 0;
>diff -r 0255f48b757f xen/include/asm-ia64/config.h
>--- a/xen/include/asm-ia64/config.h     Sun Dec  4 19:12:00 2005
>+++ b/xen/include/asm-ia64/config.h     Wed Dec  7 19:48:44 2005
>@@ -129,8 +129,10 @@
> // needed for common/dom0_ops.c until hyperthreading is supported
> #ifdef CONFIG_SMP
> extern int smp_num_siblings;
>+extern int smp_num_cpucores;
> #else
> #define smp_num_siblings 1
>+#define smp_num_cpucores 1
> #endif
>
> // from linux/include/linux/mm.h
>
>
>
>_______________________________________________
>Xen-ia64-devel mailing list
>Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>http://lists.xensource.com/xen-ia64-devel

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

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