Messages in this thread Patch in this message | | | From | Su Hui <> | Subject | [PATCH] blk-throttle: silence truncated string warning | Date | Sun, 8 Oct 2023 09:47:52 +0800 |
| |
using gcc and w=1, there are some warnings like these:
block/blk-throttle.c:1531:53: error: ‘snprintf’ output may be truncated before the last format character [-Werror=format-truncation=] 1531 | snprintf(idle_time, sizeof(idle_time), " idle=%lu", | ^ block/blk-throttle.c:1531:4: note: ‘snprintf’ output between 8 and 27 bytes into a destination of size 26 1531 | snprintf(idle_time, sizeof(idle_time), " idle=%lu", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1532 | tg->idletime_threshold_conf); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block/blk-throttle.c:1538:15: error: ‘%lu’ directive output may be truncated writing between 1 and 20 bytes into a region of size 17 [-Werror=format-truncation=] 1538 | " latency=%lu", tg->latency_target_conf); | ^~~
"%lu" can up to 21, so string " idle=%lu" can up to 27. But 'idle_time' only has 26 Bytes. It's same for 'latency_time' whose size should be 30 rather than 26 because string " latency=%lu" can up to 30.
Signed-off-by: Su Hui <suhui@nfschina.com> --- block/blk-throttle.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/blk-throttle.c b/block/blk-throttle.c index 38a881cf97d0..dfc5c0d3d9c1 100644 --- a/block/blk-throttle.c +++ b/block/blk-throttle.c @@ -1489,8 +1489,8 @@ static u64 tg_prfill_limit(struct seq_file *sf, struct blkg_policy_data *pd, char bufs[4][21] = { "max", "max", "max", "max" }; u64 bps_dft; unsigned int iops_dft; - char idle_time[26] = ""; - char latency_time[26] = ""; + char idle_time[27] = ""; + char latency_time[30] = ""; if (!dname) return 0; -- 2.30.2
| |