Re: [RFC, patch] i386: vgetcpu(), take 2

From: Rohit Seth
Date: Wed Jun 21 2006 - 17:55:30 EST


On Wed, 2006-06-21 at 11:26 +0200, Andi Kleen wrote:
> Chuck Ebbert <76306.1226@xxxxxxxxxxxxxx> writes:
>
> > Use a GDT entry's limit field to store per-cpu data for fast access
> > from userspace, and provide a vsyscall to access the current CPU
> > number stored there.
>

Very clever.

> Just the CPU alone is useless - you want at least the node too in many
> cases. Best you use the prototype I proposed earlier for x86-64.
>

Can we use similar mechanism to access pda in vsyscall in x86_64 (by
storing the address of pda there). That way the useful variables like
cpunumber, nodenumber can be accessed easily without doing cpuid (and
without tcache). The system call can take a flag like GET_CPUNUMBER or
GET_NODENUMBER or GET_NMICOUNT or if anything new gets added in this
structure.

-rohit

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