[PATCH] hwmon: (pmbus/ibm-cffps) fix format-truncation warning

hanzhijian <[email protected]>
Newsgroups org.kernel.vger.linux-hwmon,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
snprintf() with "%02X" and "%04X" specifiers on an int argument
triggers -Wformat-truncation (and thus a build failure with
CONFIG_WERROR) because GCC assumes the int can hold a value wider
than the destination buffer.

The value comes from i2c_smbus_read_byte_data() and
i2c_smbus_read_word_data(), which return at most 8 and 16 bits
respectively, so mask the value to make that explicit and silence
the warning.

Signed-off-by: hanzhijian <[email protected]>
---
 drivers/hwmon/pmbus/ibm-cffps.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/hwmon/pmbus/ibm-cffps.c b/drivers/hwmon/pmbus/ibm-cffps.c
index aad94bcb9..dd7ff3a19 100644
--- a/drivers/hwmon/pmbus/ibm-cffps.c
+++ b/drivers/hwmon/pmbus/ibm-cffps.c
@@ -166,7 +166,7 @@ static ssize_t ibm_cffps_debugfs_read(struct file *file, char __user *buf,
 				if (rc < 0)
 					goto unlock;
 
-				snprintf(&data[i * 2], 3, "%02X", rc);
+				snprintf(&data[i * 2], 3, "%02X", rc & 0xff);
 			}
 
 			rc = i * 2;
@@ -177,7 +177,7 @@ static ssize_t ibm_cffps_debugfs_read(struct file *file, char __user *buf,
 				if (rc < 0)
 					goto unlock;
 
-				snprintf(&data[i * 4], 5, "%04X", rc);
+				snprintf(&data[i * 4], 5, "%04X", rc & 0xffff);
 			}
 
 			rc = i * 4;
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.