Re: Voyager subarchitecture for 2.5.46

Vojtech Pavlik (vojtech@suse.cz)
Mon, 11 Nov 2002 23:08:22 +0100


On Mon, Nov 11, 2002 at 12:40:49PM -0800, john stultz wrote:
> On Sun, 2002-11-10 at 11:46, Vojtech Pavlik wrote:
> > On Sun, Nov 10, 2002 at 10:59:55AM -0800, Linus Torvalds wrote:
> > > On Sun, 10 Nov 2002, Pavel Machek wrote:
> > > > Unfortunately, this means "bye bye vsyscalls for gettimeofday".
> > >
> > > Not necessarily. All of the fastpatch and the checking can be done by the
> > > vsyscall, and if the vsyscall notices that there is a backwards jump in
> > > time it just gives up and does a real system call. The vsyscall does need
> > > to figure out the CPU it's running on somehow, but that should be solvable
> > > - indexing through the thread ID or something.
> >
> > I'm planning to store the CPU number in the highest bits of the TSC ...
>
> I could be wrong, but we had considered this earlier, and found that
> there isn't a way to set the high bits of the TSC, you can only clear
> them.

I'll have to test that. Another option is per-cpu page mappings for
vsyscalls. But that's rather ugly.

> > > The system call overhead tends to scale up very well with CPU speed (the
> > > one esception being the P4 which just has some internal problems with "int
> > > 0x80" and slowed down compared to a PIII).
> > >
> > > So I would just suggest not spending a lot of effort on it, considering
> > > the problems it already has.
> >
> > Agreed. The only problem left I see is the need to have an interrupt of
> > every CPU from time to time to update the per-cpu time values, and to
> > synchronize those to the 'global timer interrupt' somehow.
>
> Yes, this would be needed for per-cpu tsc.

-- 
Vojtech Pavlik
SuSE Labs
-
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/