From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4387511344704718916==" MIME-Version: 1.0 From: kernel test robot Subject: [PATCH] coccinelle: api: fix device_attr_show.cocci warnings Date: Mon, 28 Dec 2020 04:05:04 +0800 Message-ID: <20201227200504.GA43091@8887daa46785> In-Reply-To: <202012280427.S5ZgodfV-lkp@intel.com> List-Id: To: kbuild@lists.01.org --===============4387511344704718916== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable CC: kbuild-all(a)lists.01.org CC: linux-kernel(a)vger.kernel.org TO: Denis Efremov CC: Julia Lawall CC: Michal Januszewski CC: Bartlomiej Zolnierkiewicz CC: linux-fbdev(a)vger.kernel.org CC: dri-devel(a)lists.freedesktop.org CC: linux-kernel(a)vger.kernel.org From: kernel test robot drivers/video/fbdev/uvesafb.c:1640:8-16: WARNING: use scnprintf or sprintf drivers/video/fbdev/uvesafb.c:1626:9-17: WARNING: use scnprintf or sprintf drivers/video/fbdev/uvesafb.c:1596:9-17: WARNING: use scnprintf or sprintf drivers/video/fbdev/uvesafb.c:1611:9-17: WARNING: use scnprintf or sprintf drivers/video/fbdev/uvesafb.c:1550:8-16: WARNING: use scnprintf or sprintf drivers/video/fbdev/uvesafb.c:1581:9-17: WARNING: use scnprintf or sprintf From Documentation/filesystems/sysfs.txt: show() must not use snprintf() when formatting the value to be returned to user space. If you can guarantee that an overflow will never happen you can use sprintf() otherwise you must use scnprintf(). Generated by: scripts/coccinelle/api/device_attr_show.cocci Fixes: abfc19ff202d ("coccinelle: api: add device_attr_show script") CC: Denis Efremov Reported-by: kernel test robot Signed-off-by: kernel test robot --- tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git = master head: 52cd5f9c22eeef26d05f9d9338ba4eb38f14dd3a commit: abfc19ff202d287742483e15fd478ddd6ada2187 coccinelle: api: add devic= e_attr_show script :::::: branch date: 3 hours ago :::::: commit date: 5 months ago Please take the patch only if it's a positive warning. Thanks! uvesafb.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) --- a/drivers/video/fbdev/uvesafb.c +++ b/drivers/video/fbdev/uvesafb.c @@ -1547,7 +1547,7 @@ static ssize_t uvesafb_show_vbe_ver(stru struct fb_info *info =3D dev_get_drvdata(dev); struct uvesafb_par *par =3D info->par; = - return snprintf(buf, PAGE_SIZE, "%.4x\n", par->vbe_ib.vbe_version); + return scnprintf(buf, PAGE_SIZE, "%.4x\n", par->vbe_ib.vbe_version); } = static DEVICE_ATTR(vbe_version, S_IRUGO, uvesafb_show_vbe_ver, NULL); @@ -1578,7 +1578,7 @@ static ssize_t uvesafb_show_vendor(struc struct uvesafb_par *par =3D info->par; = if (par->vbe_ib.oem_vendor_name_ptr) - return snprintf(buf, PAGE_SIZE, "%s\n", (char *) + return scnprintf(buf, PAGE_SIZE, "%s\n", (char *) (&par->vbe_ib) + par->vbe_ib.oem_vendor_name_ptr); else return 0; @@ -1593,7 +1593,7 @@ static ssize_t uvesafb_show_product_name struct uvesafb_par *par =3D info->par; = if (par->vbe_ib.oem_product_name_ptr) - return snprintf(buf, PAGE_SIZE, "%s\n", (char *) + return scnprintf(buf, PAGE_SIZE, "%s\n", (char *) (&par->vbe_ib) + par->vbe_ib.oem_product_name_ptr); else return 0; @@ -1608,7 +1608,7 @@ static ssize_t uvesafb_show_product_rev( struct uvesafb_par *par =3D info->par; = if (par->vbe_ib.oem_product_rev_ptr) - return snprintf(buf, PAGE_SIZE, "%s\n", (char *) + return scnprintf(buf, PAGE_SIZE, "%s\n", (char *) (&par->vbe_ib) + par->vbe_ib.oem_product_rev_ptr); else return 0; @@ -1623,7 +1623,7 @@ static ssize_t uvesafb_show_oem_string(s struct uvesafb_par *par =3D info->par; = if (par->vbe_ib.oem_string_ptr) - return snprintf(buf, PAGE_SIZE, "%s\n", + return scnprintf(buf, PAGE_SIZE, "%s\n", (char *)(&par->vbe_ib) + par->vbe_ib.oem_string_ptr); else return 0; @@ -1637,7 +1637,7 @@ static ssize_t uvesafb_show_nocrtc(struc struct fb_info *info =3D dev_get_drvdata(dev); struct uvesafb_par *par =3D info->par; = - return snprintf(buf, PAGE_SIZE, "%d\n", par->nocrtc); + return scnprintf(buf, PAGE_SIZE, "%d\n", par->nocrtc); } = static ssize_t uvesafb_store_nocrtc(struct device *dev, --===============4387511344704718916==--