kernelci.org reports a warning for this driver, as it copies a local
variable into a 'const char *' string:

    drivers/mtd/maps/pmcmsp-flash.c:149:30: warning: passing argument 1 of 
'strncpy' discards 'const' qualifier from pointer target type 
[-Wdiscarded-qualifiers]

Using kstrndup() simplifies the code and avoids the warning.

Signed-off-by: Arnd Bergmann <a...@arndb.de>
---
 drivers/mtd/maps/pmcmsp-flash.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/mtd/maps/pmcmsp-flash.c b/drivers/mtd/maps/pmcmsp-flash.c
index 744ca5cacc9b..cf54420f943d 100644
--- a/drivers/mtd/maps/pmcmsp-flash.c
+++ b/drivers/mtd/maps/pmcmsp-flash.c
@@ -139,15 +139,13 @@ static int __init init_msp_flash(void)
                }
 
                msp_maps[i].bankwidth = 1;
-               msp_maps[i].name = kmalloc(7, GFP_KERNEL);
+               msp_maps[i].name = kstrndup(flash_name, 7, GFP_KERNEL);
                if (!msp_maps[i].name) {
                        iounmap(msp_maps[i].virt);
                        kfree(msp_parts[i]);
                        goto cleanup_loop;
                }
 
-               msp_maps[i].name = strncpy(msp_maps[i].name, flash_name, 7);
-
                for (j = 0; j < pcnt; j++) {
                        part_name[5] = '0' + i;
                        part_name[7] = '0' + j;
-- 
2.9.0

Reply via email to