Re: [PATCH 2/5] Fonts: Make font size unsigned in font_desc

From: Daniel Vetter
Date: Tue Oct 27 2020 - 14:51:12 EST


On Tue, Oct 27, 2020 at 12:33:05PM -0400, Peilin Ye wrote:
> It is improper to define `width` and `height` as signed in `struct
> font_desc`. Make them unsigned. Also, change the corresponding printk()
> format identifiers from `%d` to `%u`, in sti_select_fbfont().
>
> Signed-off-by: Peilin Ye <yepeilin.cs@xxxxxxxxx>

I'm not entirely sure of the motivation here ... height/width should never
ever be even close to the limit here. Or have you seen integer math that
could potentially go wrong if we go with unsigned instead of int?
-Daniel

> ---
> Build-tested.
>
> drivers/video/console/sticore.c | 2 +-
> include/linux/font.h | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/console/sticore.c b/drivers/video/console/sticore.c
> index 6a26a364f9bd..d1bb5915082b 100644
> --- a/drivers/video/console/sticore.c
> +++ b/drivers/video/console/sticore.c
> @@ -502,7 +502,7 @@ sti_select_fbfont(struct sti_cooked_rom *cooked_rom, const char *fbfont_name)
> if (!fbfont)
> return NULL;
>
> - pr_info("STI selected %dx%d framebuffer font %s for sticon\n",
> + pr_info("STI selected %ux%u framebuffer font %s for sticon\n",
> fbfont->width, fbfont->height, fbfont->name);
>
> bpc = ((fbfont->width+7)/8) * fbfont->height;
> diff --git a/include/linux/font.h b/include/linux/font.h
> index b5b312c19e46..4f50d736ea72 100644
> --- a/include/linux/font.h
> +++ b/include/linux/font.h
> @@ -16,7 +16,7 @@
> struct font_desc {
> int idx;
> const char *name;
> - int width, height;
> + unsigned int width, height;
> const void *data;
> int pref;
> };
> --
> 2.25.1
>

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch