Re: [PATCH 13/39] NLKD/x86-64 - time adjustment

From: Andi Kleen
Date: Thu Nov 10 2005 - 09:03:32 EST


On Wednesday 09 November 2005 15:08, Jan Beulich wrote:
> Since x86-64 time handling is not overflow-safe, these are the
> adjustments needed for allowing debuggers to update time after
> having halted the system for perhaps extended periods of time.
>
> Note that this depends on the HPET definitions adjustments, which
> aren't in 2.6.14, but have supposedly been merged already into 2.6.15.
>
> From: Jan Beulich <jbeulich@xxxxxxxxxx>

<no code quoting because that is hard with your attachments>

In general thanks for the overflow fixes. I understand the code
had generic problems in this area and it's good someone tackling them.

But many details should be changed.

The magic ICH6 HPET enable code has to go. It looks far too fragile and might
break something else. I also don't want direct PCI config space accesses like
this. We'll have to wait for ACPI HPET support I think. I think I'll remove
the original hack for AMD 8111 too - it was only for testing anyways. If you
still want to use it you have to keep it as a private patch.

Please remove the ifdefs too. 64bit HPET support would be fine, but
only as a runtime mechanism, not compile time.

Can you remove debugger_jiffies please?
The code has to handle long delays anyways (e.g. if someone uses a target
probe), so we cannot rely on such hacks anyways.

I don't quite understand why the SMP case should be different from UP
in that ifdef. Can you explain? It shouldn't in theory.


/* When the TSC gets reset during AP startup, the code below would
+ incorrectly think we lost a huge amount of ticks. */
That is outdated - the TSCs are not reset anymore since 2.6.12.
Please remove code for handling that.

The union in vxtime_data is ugly - can it be avoided?

Vojtech should probably review that one too when you repost.

-Andi
-
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/