OSDN Git Service

ALSA: korg1212: Add __force annotation to cast in user-copy callbacks
authorTakashi Iwai <tiwai@suse.de>
Wed, 25 Jul 2018 21:00:56 +0000 (23:00 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 26 Jul 2018 06:33:08 +0000 (08:33 +0200)
The user-copy callbacks in korg1212 driver contain the explicit cast
from a user pointer to a kernel pointer, but they missed __force
prefix.  It's mandatory for converting between them.

Spotted by sparse, a warning like:
  sound/pci/korg1212/korg1212.c:1329:33: warning: cast removes address space of expression

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/korg1212/korg1212.c

index 4206ba4..4e189a9 100644 (file)
@@ -1326,7 +1326,7 @@ static int snd_korg1212_copy_to(struct snd_pcm_substream *substream,
                }
 #endif
                if (in_kernel)
-                       memcpy((void *)dst, src, size);
+                       memcpy((__force void *)dst, src, size);
                else if (copy_to_user(dst, src, size))
                        return -EFAULT;
                src++;
@@ -1365,7 +1365,7 @@ static int snd_korg1212_copy_from(struct snd_pcm_substream *substream,
                }
 #endif
                if (in_kernel)
-                       memcpy((void *)dst, src, size);
+                       memcpy(dst, (__force void *)src, size);
                else if (copy_from_user(dst, src, size))
                        return -EFAULT;
                dst++;