Re: [PATCH 2/4] thermal_sys: Remove obfuscating used-once macros

From: Andrew Morton
Date: Thu Jan 26 2012 - 18:31:49 EST


On Tue, 24 Jan 2012 15:35:36 -0800
Joe Perches <joe@xxxxxxxxxxx> wrote:

> These don't add any value as they are used
> only once and the surrounding code uses similar
> variable.

And they were buggy if passed an expression-with-side-effects. Geeze
we make this mistake often, and it's C programming 101! Or maybe 102.

> --- a/drivers/thermal/thermal_sys.c
> +++ b/drivers/thermal/thermal_sys.c
> @@ -312,22 +312,6 @@ static struct device_attribute trip_point_attrs[] = {
> __ATTR(trip_point_11_temp, 0444, trip_point_temp_show, NULL),
> };
>
> -#define TRIP_POINT_ATTR_ADD(_dev, _index, result) \
> -do { \
> - result = device_create_file(_dev, \
> - &trip_point_attrs[_index * 2]); \
> - if (result) \
> - break; \
> - result = device_create_file(_dev, \
> - &trip_point_attrs[_index * 2 + 1]); \
> -} while (0)
> -
> -#define TRIP_POINT_ATTR_REMOVE(_dev, _index) \
> -do { \
> - device_remove_file(_dev, &trip_point_attrs[_index * 2]); \
> - device_remove_file(_dev, &trip_point_attrs[_index * 2 + 1]); \
> -} while (0)

I don't forsee many tears being shed over the above ;)

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