Re: [PATCH 5/5] typesafe: TIMER_INITIALIZER and setup_timer

From: Al Viro
Date: Mon Feb 04 2008 - 09:57:56 EST


On Mon, Feb 04, 2008 at 11:19:44PM +1100, Rusty Russell wrote:
> This patch lets timer callback functions have their natural type
> (ie. exactly match the data pointer type); it allows the old "unsigned
> long data" type as well.
>
> Downside: if you use the old "unsigned long" callback type, you won't
> get a warning if your data is not an unsigned long, due to the cast.

No. There's much saner way to do that and it does not involve any gccisms
at all. I'd posted such patches quite a while ago; normal C constructs
are quite sufficient, TYVM.

We don't _need_ that 'allow the old "unsigned long data"' junk. There's
not enough users of setup_timer() to excuse it; other instances can and
should be converted to setup_timer() one by one, getting their types switched
to sanity as we go.

Let's not mix type safety with that ugliness, please.
--
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/