linux-mips
[Top] [All Lists]

Re: [MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RA

To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Subject: Re: [MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.
From: Ralf Baechle <ralf@linux-mips.org>
Date: Wed, 7 Nov 2007 14:17:57 +0000
Cc: linux-mips@linux-mips.org
In-reply-to: <20071107.231036.75185559.anemo@mba.ocn.ne.jp>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <S20025770AbXKAPqq/20071101154646Z+4363@ftp.linux-mips.org> <20071107.231036.75185559.anemo@mba.ocn.ne.jp>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.5.14 (2007-02-12)
On Wed, Nov 07, 2007 at 11:10:36PM +0900, Atsushi Nemoto wrote:

> The CLOCK_TICK_RATE is used for ACTHZ, TICK_NSEC, etc.
> 
> At least for i8253-free platforms, It looks a value multiple of HZ
> would be better for such constants, assuming we have dyntick or
> accurate HZ clockevents.
> 
> How about something like this?
> 
> diff --git a/include/asm-mips/timex.h b/include/asm-mips/timex.h
> index 5816ad1..e9622b6 100644
> --- a/include/asm-mips/timex.h
> +++ b/include/asm-mips/timex.h
> @@ -18,7 +18,11 @@
>   * So keeping it defined to the number for the PIT is the only sane thing
>   * for now.
>   */
> +#ifdef CONFIG_I8253
>  #define CLOCK_TICK_RATE 1193182
> +#else
> +#define CLOCK_TICK_RATE 1024000      /* multiple of HZ */
> +#endif

kernel/time/ntp.c:#define CLOCK_TICK_OVERFLOW   (LATCH * HZ - CLOCK_TICK_RATE)
kernel/time/ntp.c:                                      (s64)CLOCK_TICK_RATE)

drivers/char/vt_ioctl.c:                        arg = CLOCK_TICK_RATE / arg;
drivers/char/vt_ioctl.c:                        count = CLOCK_TICK_RATE / count;

There is so much abuse of this variable, it's not even funny.  It really
deserve to be taken out and shot.  And that's just two cases.

  Ralf

<Prev in Thread] Current Thread [Next in Thread>