summary refs log tree commit diff
path: root/drivers/mtd
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2020-01-07 22:24:52 +0100
committerMiquel Raynal <miquel.raynal@bootlin.com>2020-01-09 20:09:55 +0100
commitde08b5ac10420db597cb24c41b4d8d06cce15ffd (patch)
treec3ba0932b7b949f3aa724850774a9ea599fb816f /drivers/mtd
parent8bcef0d54067077cf9a6cb129022c77559926e8c (diff)
downloadlinux-de08b5ac10420db597cb24c41b4d8d06cce15ffd.tar.gz
mtd: sm_ftl: fix NULL pointer warning
With gcc -O3, we get a new warning:

In file included from arch/arm64/include/asm/processor.h:28,
                 from drivers/mtd/sm_ftl.c:8:
In function 'memset',
    inlined from 'sm_read_sector.constprop' at drivers/mtd/sm_ftl.c:250:3:
include/linux/string.h:411:9: error: argument 1 null where non-null expected [-Werror=nonnull]
  return __builtin_memset(p, c, size);

>From all I can tell, this cannot happen (the function is called
either with a NULL buffer or with a -1 block number but not both),
but adding a check makes it more robust and avoids the warning.

Fixes: mmtom ("init/Kconfig: enable -O3 for all arches")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/sm_ftl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mtd/sm_ftl.c b/drivers/mtd/sm_ftl.c
index 4744bf94ad9a..b9f272408c4d 100644
--- a/drivers/mtd/sm_ftl.c
+++ b/drivers/mtd/sm_ftl.c
@@ -247,7 +247,8 @@ static int sm_read_sector(struct sm_ftl *ftl,
 
 	/* FTL can contain -1 entries that are by default filled with bits */
 	if (block == -1) {
-		memset(buffer, 0xFF, SM_SECTOR_SIZE);
+		if (buffer)
+			memset(buffer, 0xFF, SM_SECTOR_SIZE);
 		return 0;
 	}