[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-kernel
Subject:    Re: [PATCH] How to get number of physical CPU in linux from user space?
From:       chrisl () vmware ! com
Date:       2002-10-25 20:03:18
[Download RAW message or body]

Cool. That will work for me.

Thanks

Chris

On Fri, Oct 25, 2002 at 03:21:28PM -0400, Robert Love wrote:
> On Fri, 2002-10-25 at 15:13, Dave Jones wrote:
> 
> > Should this be wrapped in a if (cpu_has_ht(c)) { }  ?
> > Seems silly to be displaying HT information on non-HT CPUs.
> 
> I am neutral, but is fine with me. It is just "cpu_has_ht", btw.
> 
> Take two...
> 
> This displays the physical processor id and number of siblings of each
> processor in /proc/cpuinfo.
> 
> 	Robert Love
> 
> .proc.c.swp |binary
> proc.c      |    7 +++++++
> 2 files changed, 7 insertions(+)
> 
> diff -urN linux-2.5.44/arch/i386/kernel/cpu/proc.c \
>                 linux/arch/i386/kernel/cpu/proc.c
> --- linux-2.5.44/arch/i386/kernel/cpu/proc.c	2002-10-19 00:02:29.000000000 -0400
> +++ linux/arch/i386/kernel/cpu/proc.c	2002-10-25 15:18:03.000000000 -0400
> @@ -17,6 +17,7 @@
> 	 * applications want to get the raw CPUID data, they should access
> 	 * /dev/cpu/<cpu_nr>/cpuid instead.
> 	 */
> +	extern int phys_proc_id[NR_CPUS];
> 	static char *x86_cap_flags[] = {
> 		/* Intel-defined */
> 	        "fpu", "vme", "de", "pse", "tsc", "msr", "pae", "mce",
> @@ -74,6 +75,12 @@
> 	/* Cache size */
> 	if (c->x86_cache_size >= 0)
> 		seq_printf(m, "cache size\t: %d KB\n", c->x86_cache_size);
> +#ifdef CONFIG_SMP
> +	if (cpu_has_ht) {
> +		seq_printf(m, "physical processor ID\t: %d\n", phys_proc_id[n]);
> +		seq_printf(m, "number of siblings\t: %d\n", smp_num_siblings);
> +	}
> +#endif
> 	
> 	/* We use exception 16 if we have hardware math and we've either seen it or the \
> CPU claims it is internal */  fpu_exception = c->hard_math && (ignore_irq13 || \
> cpu_has_fpu); 


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic