Re: [PATCH] fbcon: replace mono_col macro with static inline

From: Geert Uytterhoeven
Date: Tue Feb 26 2008 - 03:18:18 EST


On Mon, 25 Feb 2008, Harvey Harrison wrote:
> Use __u32 for max_len to match the declaration of length in the
> struct fb_bitfield.
>
> Suppresses sparse shadowed variable warnings from the nested max()
> macros:
> drivers/video/console/fbcon.h:130:8: warning: symbol '_x' shadows an earlier one
> drivers/video/console/fbcon.h:130:8: originally declared here
> drivers/video/console/fbcon.h:130:8: warning: symbol '_x' shadows an earlier one
> drivers/video/console/fbcon.h:130:8: originally declared here
> drivers/video/console/fbcon.h:130:8: warning: symbol '_y' shadows an earlier one
> drivers/video/console/fbcon.h:130:8: originally declared here
>
> Signed-off-by: Harvey Harrison <harvey.harrison@xxxxxxxxx>
> ---
> drivers/video/console/fbcon.h | 12 ++++++++----
> 1 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/video/console/fbcon.h b/drivers/video/console/fbcon.h
> index 3706307..51a6bf4 100644
> --- a/drivers/video/console/fbcon.h
> +++ b/drivers/video/console/fbcon.h
> @@ -104,10 +104,14 @@ struct fbcon_ops {
> #define attr_blink(s) \
> ((s) & 0x8000)
>
> -#define mono_col(info) \
> - (~(0xfff << (max((info)->var.green.length, \
> - max((info)->var.red.length, \
> - (info)->var.blue.length)))) & 0xff)
> +
> +static inline int mono_col(struct fb_info *info)
^^^^^^^^^^^^^^^^^^^^
const struct fb_info *info?

> +{
> + __u32 max_len;
> + max_len = max(info->var.green.length, info->var.red.length);
> + max_len = max(info->var.blue.length, max_len);
> + return ~(0xfff << (max_len & 0xff));
> +}
>
> static inline int attr_col_ec(int shift, struct vc_data *vc,
> struct fb_info *info, int is_fg)

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
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/