ALSA: pcm: Add __force to cast in snd_pcm_lib_read/write()
authorTakashi Iwai <tiwai@suse.de>
Wed, 25 Jul 2018 21:00:54 +0000 (23:00 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 26 Jul 2018 06:32:13 +0000 (08:32 +0200)
The snd_pcm_lib_read() and snd_pcm_lib_write() inline functions have
the explicit cast from a user pointer to a kernel pointer, but they
lacks of __force prefix.

This fixes sparse warnings like:
  ./include/sound/pcm.h:1093:47: warning: cast removes address space of expression

Fixes: 68541213720d ("ALSA: pcm: Direct in-kernel read/write support")
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/sound/pcm.h

index 1206045..d6bd3ca 100644 (file)
@@ -1090,14 +1090,14 @@ static inline snd_pcm_sframes_t
 snd_pcm_lib_write(struct snd_pcm_substream *substream,
                  const void __user *buf, snd_pcm_uframes_t frames)
 {
-       return __snd_pcm_lib_xfer(substream, (void *)buf, true, frames, false);
+       return __snd_pcm_lib_xfer(substream, (void __force *)buf, true, frames, false);
 }
 
 static inline snd_pcm_sframes_t
 snd_pcm_lib_read(struct snd_pcm_substream *substream,
                 void __user *buf, snd_pcm_uframes_t frames)
 {
-       return __snd_pcm_lib_xfer(substream, (void *)buf, true, frames, false);
+       return __snd_pcm_lib_xfer(substream, (void __force *)buf, true, frames, false);
 }
 
 static inline snd_pcm_sframes_t