Patch "clk: si521xx: Increase stack based print buffer size in probe" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    clk: si521xx: Increase stack based print buffer size in probe

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     clk-si521xx-increase-stack-based-print-buffer-size-i.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit d7efc3ba15d1498b4254812e09ff627a572aa53c
Author: Marek Vasut <marex@xxxxxxx>
Date:   Fri Oct 27 10:58:24 2023 +0200

    clk: si521xx: Increase stack based print buffer size in probe
    
    [ Upstream commit 7e52b1164a474dc7b90f68fbb40e35ccd7f7e2e2 ]
    
    Increase the size of temporary print buffer on stack to fix the
    following warnings reported by LKP.
    
    Since all the input parameters of snprintf() are under control
    of this driver, it is not possible to trigger and overflow here,
    but since the print buffer is on stack and discarded once driver
    probe() finishes, it is not an issue to increase it by 10 bytes
    and fix the warning in the process. Make it so.
    
    "
       drivers/clk/clk-si521xx.c: In function 'si521xx_probe':
    >> drivers/clk/clk-si521xx.c:318:26: warning: '%d' directive output may be truncated writing between 1 and 10 bytes into a region of size 2 [-Wformat-truncation=]
          snprintf(name, 6, "DIFF%d", i);
                                 ^~
       drivers/clk/clk-si521xx.c:318:21: note: directive argument in the range [0, 2147483647]
          snprintf(name, 6, "DIFF%d", i);
                            ^~~~~~~~
       drivers/clk/clk-si521xx.c:318:3: note: 'snprintf' output between 6 and 15 bytes into a destination of size 6
          snprintf(name, 6, "DIFF%d", i);
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    "
    
    Fixes: edc12763a3a2 ("clk: si521xx: Clock driver for Skyworks Si521xx I2C PCIe clock generators")
    Reported-by: kernel test robot <lkp@xxxxxxxxx>
    Closes: https://lore.kernel.org/oe-kbuild-all/202310260412.AGASjFN4-lkp@xxxxxxxxx/
    Signed-off-by: Marek Vasut <marex@xxxxxxx>
    Link: https://lore.kernel.org/r/20231027085840.30098-1-marex@xxxxxxx
    Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/clk/clk-si521xx.c b/drivers/clk/clk-si521xx.c
index ef4ba467e747b..5886bc54aa0e7 100644
--- a/drivers/clk/clk-si521xx.c
+++ b/drivers/clk/clk-si521xx.c
@@ -282,7 +282,7 @@ static int si521xx_probe(struct i2c_client *client)
 	const u16 chip_info = (u16)(uintptr_t)device_get_match_data(&client->dev);
 	const struct clk_parent_data clk_parent_data = { .index = 0 };
 	const u8 data[3] = { SI521XX_REG_BC, 1, 1 };
-	unsigned char name[6] = "DIFF0";
+	unsigned char name[16] = "DIFF0";
 	struct clk_init_data init = {};
 	struct si521xx *si;
 	int i, ret;
@@ -316,7 +316,7 @@ static int si521xx_probe(struct i2c_client *client)
 	/* Register clock */
 	for (i = 0; i < hweight16(chip_info); i++) {
 		memset(&init, 0, sizeof(init));
-		snprintf(name, 6, "DIFF%d", i);
+		snprintf(name, sizeof(name), "DIFF%d", i);
 		init.name = name;
 		init.ops = &si521xx_diff_clk_ops;
 		init.parent_data = &clk_parent_data;




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux