Re: [PATCH 3/3] Makes lguest's irq handler typesafe

From: Rusty Russell
Date: Fri Jan 18 2008 - 20:29:18 EST


On Saturday 19 January 2008 10:12:33 Tejun Heo wrote:
> Type safety is good but I doubt this would be worth the complexity. It
> has some benefits but there's much larger benefit in keeping things in
> straight C. People know that functions take fixed types and are also
> familiar with the convention of passing void * for callback arguments.
> IMHO, staying in line with those common knowledges easily trumps having
> type checking on interrupt handler.

I sympathise with this argument, but I think just because people are familiar
with existing hacks shouldn't prevent improvement. I think the resulting
code is clearer and more readable.

Even in the implementation, the tricky part is the check_either_type() macro:
the rest is straight-forward.

> Also, how often do we see a bug where things go wrong because interrupt
> handler is given the wrong type of argument? Even when such bug
> happens, I doubt it can escape the developer's workstation if he/she is
> paying any attention to testing.

I agree this one is unlikely. But I am trying to spread type-safety more
widely (see previous kthread patches).

I like changing the kernel to make life simpler for developers. We don't do
enough of it.

Cheers,
Rusty.
--
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/