Messages in this thread Patch in this message | | | Subject | Re: [PATCH] How to get number of physical CPU in linux from user space? | From | Robert Love <> | Date | 25 Oct 2002 15:21:28 -0400 |
| |
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/
| |