From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============1194417815277462856==" MIME-Version: 1.0 From: kernel test robot Subject: [PATCH] coccinelle: api: fix device_attr_show.cocci warnings Date: Mon, 23 Nov 2020 03:07:30 +0800 Message-ID: <20201122190730.GA17607@0b595e097f4b> In-Reply-To: <202011230340.i5cVMiIg-lkp@intel.com> List-Id: To: kbuild@lists.01.org --===============1194417815277462856== 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: Guenter Roeck CC: Jean Delvare CC: linux-hwmon(a)vger.kernel.org CC: linux-kernel(a)vger.kernel.org From: kernel test robot drivers/hwmon/pmbus/inspur-ipsps.c:94:8-16: WARNING: use scnprintf or sprin= tf drivers/hwmon/pmbus/inspur-ipsps.c:114:9-17: WARNING: use scnprintf or spri= ntf drivers/hwmon/pmbus/inspur-ipsps.c:73:8-16: WARNING: use scnprintf or sprin= tf 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: a349e4c659609fd20e4beea89e5c4a4038e33a95 commit: abfc19ff202d287742483e15fd478ddd6ada2187 coccinelle: api: add devic= e_attr_show script :::::: branch date: 25 hours ago :::::: commit date: 4 months ago Please take the patch only if it's a positive warning. Thanks! inspur-ipsps.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) --- a/drivers/hwmon/pmbus/inspur-ipsps.c +++ b/drivers/hwmon/pmbus/inspur-ipsps.c @@ -70,7 +70,7 @@ static ssize_t ipsps_string_show(struct p =3D memscan(data, '#', rc); *p =3D '\0'; = - return snprintf(buf, PAGE_SIZE, "%s\n", data); + return scnprintf(buf, PAGE_SIZE, "%s\n", data); } = static ssize_t ipsps_fw_version_show(struct device *dev, @@ -91,7 +91,7 @@ static ssize_t ipsps_fw_version_show(str if (rc !=3D 6) return -EPROTO; = - return snprintf(buf, PAGE_SIZE, "%u.%02u%u-%u.%02u\n", + return scnprintf(buf, PAGE_SIZE, "%u.%02u%u-%u.%02u\n", data[1], data[2]/* < 100 */, data[3]/*< 10*/, data[4], data[5]/* < 100 */); } @@ -111,19 +111,19 @@ static ssize_t ipsps_mode_show(struct de = switch (rc) { case MODE_ACTIVE: - return snprintf(buf, PAGE_SIZE, "[%s] %s %s\n", + return scnprintf(buf, PAGE_SIZE, "[%s] %s %s\n", MODE_ACTIVE_STRING, MODE_STANDBY_STRING, MODE_REDUNDANCY_STRING); case MODE_STANDBY: - return snprintf(buf, PAGE_SIZE, "%s [%s] %s\n", + return scnprintf(buf, PAGE_SIZE, "%s [%s] %s\n", MODE_ACTIVE_STRING, MODE_STANDBY_STRING, MODE_REDUNDANCY_STRING); case MODE_REDUNDANCY: - return snprintf(buf, PAGE_SIZE, "%s %s [%s]\n", + return scnprintf(buf, PAGE_SIZE, "%s %s [%s]\n", MODE_ACTIVE_STRING, MODE_STANDBY_STRING, MODE_REDUNDANCY_STRING); default: - return snprintf(buf, PAGE_SIZE, "unspecified\n"); + return scnprintf(buf, PAGE_SIZE, "unspecified\n"); } } =20 --===============1194417815277462856==--