---------- Forwarded message ----------
Date: Sat, 30 Dec 2023 15:22:13 +0800
From: kernel test robot <[email protected]>
To: [email protected]
Cc: [email protected], Julia Lawall <[email protected]>
Subject: drivers/video/fbdev/core/fb_logo.c:67:41-42: WARNING opportunity for
min()
BCC: [email protected]
CC: [email protected]
CC: [email protected]
TO: Thomas Zimmermann <[email protected]>
Hi Thomas,
FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: f016f7547aeedefed9450499d002ba983b8fce15
commit: 8887086ef2e0047ec321103a15e7d766be3a3874 fbdev/core: Move logo functions into separate source file
date: 4 months ago
:::::: branch date: 11 hours ago
:::::: commit date: 4 months ago
config: hexagon-randconfig-r052-20231228 (https://download.01.org/0day-ci/archive/20231230/[email protected]/config)
compiler: clang version 18.0.0git (https://github.com/llvm/llvm-project d3ef86708241a3bee902615c190dead1638c4e09)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Reported-by: Julia Lawall <[email protected]>
| Closes: https://lore.kernel.org/r/[email protected]/
cocci warnings: (new ones prefixed by >>)
>> drivers/video/fbdev/core/fb_logo.c:67:41-42: WARNING opportunity for min()
drivers/video/fbdev/core/fb_logo.c:68:41-42: WARNING opportunity for min()
drivers/video/fbdev/core/fb_logo.c:69:41-42: WARNING opportunity for min()
vim +67 drivers/video/fbdev/core/fb_logo.c
8887086ef2e004 Thomas Zimmermann 2023-09-07 49
8887086ef2e004 Thomas Zimmermann 2023-09-07 50 static void fb_set_logo_truepalette(struct fb_info *info,
8887086ef2e004 Thomas Zimmermann 2023-09-07 51 const struct linux_logo *logo,
8887086ef2e004 Thomas Zimmermann 2023-09-07 52 u32 *palette)
8887086ef2e004 Thomas Zimmermann 2023-09-07 53 {
8887086ef2e004 Thomas Zimmermann 2023-09-07 54 static const unsigned char mask[] = {
8887086ef2e004 Thomas Zimmermann 2023-09-07 55 0, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff
8887086ef2e004 Thomas Zimmermann 2023-09-07 56 };
8887086ef2e004 Thomas Zimmermann 2023-09-07 57 unsigned char redmask, greenmask, bluemask;
8887086ef2e004 Thomas Zimmermann 2023-09-07 58 int redshift, greenshift, blueshift;
8887086ef2e004 Thomas Zimmermann 2023-09-07 59 int i;
8887086ef2e004 Thomas Zimmermann 2023-09-07 60 const unsigned char *clut = logo->clut;
8887086ef2e004 Thomas Zimmermann 2023-09-07 61
8887086ef2e004 Thomas Zimmermann 2023-09-07 62 /*
8887086ef2e004 Thomas Zimmermann 2023-09-07 63 * We have to create a temporary palette since console palette is only
8887086ef2e004 Thomas Zimmermann 2023-09-07 64 * 16 colors long.
8887086ef2e004 Thomas Zimmermann 2023-09-07 65 */
8887086ef2e004 Thomas Zimmermann 2023-09-07 66 /* Bug: Doesn't obey msb_right ... (who needs that?) */
8887086ef2e004 Thomas Zimmermann 2023-09-07 @67 redmask = mask[info->var.red.length < 8 ? info->var.red.length : 8];
8887086ef2e004 Thomas Zimmermann 2023-09-07 68 greenmask = mask[info->var.green.length < 8 ? info->var.green.length : 8];
8887086ef2e004 Thomas Zimmermann 2023-09-07 69 bluemask = mask[info->var.blue.length < 8 ? info->var.blue.length : 8];
8887086ef2e004 Thomas Zimmermann 2023-09-07 70 redshift = info->var.red.offset - (8 - info->var.red.length);
8887086ef2e004 Thomas Zimmermann 2023-09-07 71 greenshift = info->var.green.offset - (8 - info->var.green.length);
8887086ef2e004 Thomas Zimmermann 2023-09-07 72 blueshift = info->var.blue.offset - (8 - info->var.blue.length);
8887086ef2e004 Thomas Zimmermann 2023-09-07 73
8887086ef2e004 Thomas Zimmermann 2023-09-07 74 for (i = 0; i < logo->clutsize; i++) {
8887086ef2e004 Thomas Zimmermann 2023-09-07 75 palette[i+32] = (safe_shift((clut[0] & redmask), redshift) |
8887086ef2e004 Thomas Zimmermann 2023-09-07 76 safe_shift((clut[1] & greenmask), greenshift) |
8887086ef2e004 Thomas Zimmermann 2023-09-07 77 safe_shift((clut[2] & bluemask), blueshift));
8887086ef2e004 Thomas Zimmermann 2023-09-07 78 clut += 3;
8887086ef2e004 Thomas Zimmermann 2023-09-07 79 }
8887086ef2e004 Thomas Zimmermann 2023-09-07 80 }
8887086ef2e004 Thomas Zimmermann 2023-09-07 81
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki