Re: [PATCH] drivers/char/hpet.c: integer constant is too large for"long" type

From: Andrew Morton
Date: Mon Jul 23 2007 - 18:00:37 EST


On Sat, 21 Jul 2007 14:19:44 +0300
"S.__a__lar Onur" <caglar@xxxxxxxxxxxxx> wrote:

> Following trivial patch silents
>
> drivers/char/hpet.c:76: warning: integer constant is too large for "long" type
>
> warning (with gcc-3.4.6)
>
> Signed-off-by: S.__a__lar Onur <caglar@xxxxxxxxxxxxx>
>
> drivers/char/hpet.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
> index ba0e74a..23fadf5 100644
> --- a/drivers/char/hpet.c
> +++ b/drivers/char/hpet.c
> @@ -73,7 +73,7 @@ static struct clocksource clocksource_hpet = {
> .name = "hpet",
> .rating = 250,
> .read = read_hpet,
> - .mask = 0xffffffffffffffff,
> + .mask = 0xffffffffffffffffLL,
> .mult = 0, /*to be caluclated*/
> .shift = 10,
> .flags = CLOCK_SOURCE_IS_CONTINUOUS,

hm, well, this does assume that cycle_t is implemented as long long (or
unsigned long long, actually). Which in turn assumes that u64 is
implemented as [unsigned] long long.

Not all architectures use unsigned long long for u64: some use unsigned
long. They'll probably be OK with this change but I think I'll convert
that into plain old "-1", which just works everywhere.


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