sound: bcm: Fix memset dereference warning
authorNathan Chancellor <natechancellor@gmail.com>
Mon, 5 Mar 2018 00:20:25 +0000 (17:20 -0700)
committerpopcornmix <popcornmix@gmail.com>
Mon, 13 May 2019 23:08:01 +0000 (00:08 +0100)
This warning appears with GCC 6.4.0 from toolchains.bootlin.com:

../sound/soc/bcm/allo-piano-dac-plus.c: In function ‘snd_allo_piano_dac_init’:
../sound/soc/bcm/allo-piano-dac-plus.c:711:30: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
  memset(glb_ptr, 0x00, sizeof(glb_ptr));
                              ^

Suggested-by: Phil Elwell <phil@raspberrypi.org>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
sound/soc/bcm/allo-piano-dac-plus.c

index d35e055..35d77e9 100644 (file)
@@ -706,11 +706,10 @@ static int snd_allo_piano_dac_init(struct snd_soc_pcm_runtime *rtd)
        struct snd_soc_card *card = rtd->card;
        struct glb_pool *glb_ptr;
 
-       glb_ptr = kmalloc(sizeof(struct glb_pool), GFP_KERNEL);
+       glb_ptr = kzalloc(sizeof(struct glb_pool), GFP_KERNEL);
        if (!glb_ptr)
                return -ENOMEM;
 
-       memset(glb_ptr, 0x00, sizeof(glb_ptr));
        card->drvdata = glb_ptr;
        glb_ptr->dual_mode = 2;
        glb_ptr->set_mode = 0;