summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-11-01 21:54:53 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-12-14 19:51:18 +0100
commitf78318f70e3c5510179f4247c877ff9f57eb8bc4 (patch)
treeb8978bfdf0b721c6557ae54f6ca683c3227cef5e /lib
parent0247da93bf62d33304b7bf97850ebf2a86e06d28 (diff)
downloadlinux-f78318f70e3c5510179f4247c877ff9f57eb8bc4.tar.gz
linux-f78318f70e3c5510179f4247c877ff9f57eb8bc4.tar.bz2
linux-f78318f70e3c5510179f4247c877ff9f57eb8bc4.zip
lib: string_helpers: silence snprintf() output truncation warning
commit a508ef4b1dcc82227edc594ffae583874dd425d7 upstream. The output of ".%03u" with the unsigned int in range [0, 4294966295] may get truncated if the target buffer is not 12 bytes. This can't really happen here as the 'remainder' variable cannot exceed 999 but the compiler doesn't know it. To make it happy just increase the buffer to where the warning goes away. Fixes: 3c9f3681d0b4 ("[SCSI] lib: add generic helper to print sizes rounded to the correct SI range") Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Reviewed-by: Andy Shevchenko <andy@kernel.org> Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com> Cc: Kees Cook <kees@kernel.org> Cc: stable@vger.kernel.org Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Link: https://lore.kernel.org/r/20241101205453.9353-1-brgl@bgdev.pl Signed-off-by: Kees Cook <kees@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/string_helpers.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/string_helpers.c b/lib/string_helpers.c
index 2ddc10bd9add..81445ff36db6 100644
--- a/lib/string_helpers.c
+++ b/lib/string_helpers.c
@@ -51,7 +51,7 @@ void string_get_size(u64 size, u64 blk_size, const enum string_size_units units,
static const unsigned int rounding[] = { 500, 50, 5 };
int i = 0, j;
u32 remainder = 0, sf_cap;
- char tmp[8];
+ char tmp[12];
const char *unit;
tmp[0] = '\0';